From dbefe67fdcedc83bb69824d579a99ad8d68f6611 Mon Sep 17 00:00:00 2001 From: Jordan Blasenhauer Date: Mon, 22 Jul 2024 10:07:25 +0200 Subject: [PATCH] update Vite (front) folder structure * move src/client to src/ui/client * merge src/client and src/setup inside src/ui/client and updated package.json * now we have two config files (for setup and dashboard pages) with new paths + update scripts in package.json in order to work with changes * add README * update build.js from commonjs to es6 --- src/client/dashboard/README.md | 7 - src/client/dashboard/vite.config.js | 43 - src/client/setup/README.md | 7 - src/client/setup/package-lock.json | 1061 --------- src/client/setup/package.json | 19 - src/client/setup/vite.config.js | 23 - .../dashboard => ui/client}/.gitignore | 0 src/ui/client/README.md | 24 + src/{ => ui}/client/build.js | 24 +- .../setup => ui/client/dashboard}/.gitignore | 0 .../dashboard}/assets/css/flatpickr.css | 0 .../dashboard}/assets/css/flatpickr.dark.css | 0 .../assets/css/flatpickr.dark.min.css | 0 .../dashboard}/assets/css/flatpickr.min.css | 0 .../assets/img/BUNKERWEB-print-hd-blanc.png | Bin .../assets/img/BUNKERWEB-print-hd.png | Bin .../dashboard/assets}/img/favicon-white.ico | Bin .../client/dashboard/assets}/img/favicon.ico | Bin .../client/dashboard}/assets/img/logo-bw.png | Bin .../dashboard}/assets/img/logo-menu-2.png | Bin .../dashboard}/assets/img/logo-menu.png | Bin .../dashboard}/assets/img/no_internet.png | Bin .../dashboard}/assets/script/editor/ace.js | 0 .../assets/script/editor/ext-beautify.js | 0 .../assets/script/editor/ext-code_lens.js | 0 .../editor/ext-elastic_tabstops_lite.js | 0 .../assets/script/editor/ext-emmet.js | 0 .../assets/script/editor/ext-error_marker.js | 0 .../assets/script/editor/ext-hardwrap.js | 0 .../script/editor/ext-keybinding_menu.js | 0 .../script/editor/ext-language_tools.js | 0 .../assets/script/editor/ext-linking.js | 0 .../assets/script/editor/ext-modelist.js | 0 .../assets/script/editor/ext-options.js | 0 .../assets/script/editor/ext-prompt.js | 0 .../assets/script/editor/ext-rtl.js | 0 .../assets/script/editor/ext-searchbox.js | 0 .../assets/script/editor/ext-settings_menu.js | 0 .../assets/script/editor/ext-spellcheck.js | 0 .../assets/script/editor/ext-split.js | 0 .../script/editor/ext-static_highlight.js | 0 .../assets/script/editor/ext-statusbar.js | 0 .../assets/script/editor/ext-textarea.js | 0 .../assets/script/editor/ext-themelist.js | 0 .../assets/script/editor/ext-whitespace.js | 0 .../assets/script/editor/keybinding-emacs.js | 0 .../script/editor/keybinding-sublime.js | 0 .../assets/script/editor/keybinding-vim.js | 0 .../assets/script/editor/keybinding-vscode.js | 0 .../assets/script/editor/mode-text.js | 0 .../assets/script/editor/theme-dawn.js | 0 .../assets/script/editor/theme-dracula.js | 0 .../assets/script/editor/worker-base.js | 0 .../assets/script/editor/worker-coffee.js | 0 .../assets/script/editor/worker-css.js | 0 .../assets/script/editor/worker-html.js | 0 .../assets/script/editor/worker-javascript.js | 0 .../assets/script/editor/worker-json.js | 0 .../assets/script/editor/worker-lua.js | 0 .../assets/script/editor/worker-php.js | 0 .../assets/script/editor/worker-xml.js | 0 .../assets/script/editor/worker-xquery.js | 0 .../assets/script/editor/worker-yaml.js | 0 .../dashboard}/components/Builder/Bans.vue | 0 .../components/Builder/Collection.vue | 0 .../components/Builder/GlobalConfig.vue | 0 .../dashboard}/components/Builder/Home.vue | 0 .../components/Builder/Instances.vue | 0 .../dashboard}/components/Builder/Jobs.vue | 0 .../dashboard}/components/Builder/Plugins.vue | 0 .../dashboard}/components/Builder/Reports.vue | 0 .../dashboard}/components/Builder/Setup.vue | 0 .../components/Dashboard/Banner.vue | 0 .../components/Dashboard/Feedback.vue | 0 .../components/Dashboard/Footer.vue | 0 .../components/Dashboard/Header.vue | 0 .../components/Dashboard/LangSwitch.vue | 0 .../components/Dashboard/Layout.vue | 17 +- .../components/Dashboard/Loader.vue | 0 .../dashboard}/components/Dashboard/Menu.vue | 0 .../dashboard}/components/Dashboard/News.vue | 0 .../dashboard}/components/Form/Advanced.vue | 0 .../dashboard}/components/Form/Easy.vue | 0 .../dashboard}/components/Form/Fields.vue | 0 .../client/dashboard}/components/Form/Raw.vue | 0 .../dashboard}/components/Form/Templates.vue | 0 .../components/Forms/Error/Dropdown.vue | 0 .../components/Forms/Error/Field.vue | 0 .../components/Forms/Feature/Clipboard.vue | 0 .../components/Forms/Field/Checkbox.vue | 0 .../components/Forms/Field/Combobox.vue | 0 .../components/Forms/Field/Datepicker.vue | 0 .../components/Forms/Field/Editor.vue | 0 .../components/Forms/Field/Input.vue | 0 .../components/Forms/Field/List.vue | 0 .../components/Forms/Field/Select.vue | 0 .../components/Forms/Group/Multiple.vue | 0 .../components/Forms/Header/Field.vue | 0 .../dashboard}/components/Icons/Box.vue | 0 .../dashboard}/components/Icons/Carton.vue | 0 .../dashboard}/components/Icons/Check.vue | 0 .../dashboard}/components/Icons/Close.vue | 0 .../dashboard}/components/Icons/Core.vue | 0 .../dashboard}/components/Icons/Cross.vue | 0 .../dashboard}/components/Icons/Crown.vue | 0 .../dashboard}/components/Icons/Discord.vue | 0 .../dashboard}/components/Icons/Disk.vue | 0 .../dashboard}/components/Icons/Disks.vue | 0 .../components/Icons/Exclamation.vue | 0 .../dashboard}/components/Icons/External.vue | 0 .../dashboard}/components/Icons/Flag.vue | 0 .../dashboard}/components/Icons/Funnel.vue | 0 .../dashboard}/components/Icons/Gear.vue | 0 .../dashboard}/components/Icons/Github.vue | 0 .../dashboard}/components/Icons/Globe.vue | 0 .../dashboard}/components/Icons/House.vue | 0 .../dashboard}/components/Icons/Info.vue | 0 .../dashboard}/components/Icons/Key.vue | 0 .../dashboard}/components/Icons/Linkedin.vue | 0 .../dashboard}/components/Icons/List.vue | 0 .../dashboard}/components/Icons/Lock.vue | 0 .../dashboard}/components/Icons/Plus.vue | 0 .../dashboard}/components/Icons/Puzzle.vue | 0 .../dashboard}/components/Icons/Redirect.vue | 0 .../dashboard}/components/Icons/Search.vue | 0 .../dashboard}/components/Icons/Settings.vue | 0 .../dashboard}/components/Icons/Task.vue | 0 .../dashboard}/components/Icons/Trash.vue | 0 .../dashboard}/components/Icons/Trespass.vue | 0 .../dashboard}/components/Icons/Twitter.vue | 0 .../dashboard}/components/Icons/Wire.vue | 0 .../dashboard}/components/List/Details.vue | 0 .../dashboard}/components/List/Pairs.vue | 0 .../dashboard}/components/Message/Unmatch.vue | 0 .../dashboard}/components/Widget/Alert.vue | 0 .../dashboard}/components/Widget/Button.vue | 0 .../components/Widget/ButtonGroup.vue | 0 .../components/Widget/Container.vue | 0 .../dashboard}/components/Widget/Filter.vue | 0 .../dashboard}/components/Widget/Grid.vue | 0 .../components/Widget/GridLayout.vue | 0 .../dashboard}/components/Widget/Icons.vue | 0 .../dashboard}/components/Widget/Instance.vue | 0 .../dashboard}/components/Widget/Popover.vue | 0 .../components/Widget/PopoverGroup.vue | 0 .../dashboard}/components/Widget/Stat.vue | 0 .../dashboard}/components/Widget/Status.vue | 0 .../dashboard}/components/Widget/Subtitle.vue | 0 .../dashboard}/components/Widget/Table.vue | 0 .../dashboard}/components/Widget/Text.vue | 0 .../dashboard}/components/Widget/Title.vue | 0 .../src => ui/client/dashboard}/lang/en.json | 0 .../src => ui/client/dashboard}/lang/fr.json | 0 .../client/dashboard}/pages/bans/Bans.vue | 0 .../client/dashboard}/pages/bans/bans.js | 0 .../client/dashboard}/pages/bans/index.html | 0 .../dashboard}/pages/builder/Builder.vue | 0 .../dashboard}/pages/builder/builder.js | 0 .../dashboard}/pages/builder/index.html | 0 .../dashboard}/pages/dashboard/Dashboard.vue | 0 .../dashboard}/pages/dashboard/dashboard.js | 0 .../dashboard}/pages/dashboard/index.html | 0 .../pages/global-config/globalConfig.js | 0 .../pages/global-config/globalConfig.vue | 0 .../dashboard}/pages/global-config/index.html | 0 .../client/dashboard}/pages/home/Home.vue | 0 .../client/dashboard}/pages/home/home.js | 0 .../client/dashboard}/pages/home/index.html | 0 .../dashboard}/pages/instances/Instances.vue | 0 .../dashboard}/pages/instances/index.html | 0 .../dashboard}/pages/instances/instances.js | 0 .../client/dashboard}/pages/jobs/Jobs.vue | 0 .../client/dashboard}/pages/jobs/index.html | 0 .../client/dashboard}/pages/jobs/jobs.js | 0 .../dashboard}/pages/plugins/Plugins.vue | 0 .../dashboard}/pages/plugins/index.html | 0 .../dashboard}/pages/plugins/plugins.js | 0 .../dashboard}/pages/reports/index.html | 0 .../dashboard}/pages/reports/reports.js | 0 .../dashboard}/pages/reports/reports.vue | 0 .../dashboard}/pages/services/index.html | 0 .../dashboard}/pages/services/services.js | 0 .../dashboard}/pages/services/services.vue | 0 .../client/dashboard}/pages/test/Test.vue | 0 .../client/dashboard}/pages/test/index.html | 0 .../client/dashboard}/pages/test/test.js | 0 .../client/dashboard}/store/advanced.js | 0 .../client/dashboard}/store/global.js | 0 .../client/dashboard}/utils/filter.js | 0 .../src => ui/client/dashboard}/utils/form.js | 0 .../client/dashboard}/utils/global.js | 0 .../src => ui/client/dashboard}/utils/lang.js | 0 .../client/dashboard}/utils/tabindex.js | 0 .../client/dashboard}/utils/variables.js | 0 src/{client/dashboard => ui/client}/input.css | 0 .../dashboard => ui/client}/package-lock.json | 539 +++-- .../dashboard => ui/client}/package.json | 12 +- .../dashboard => ui/client}/postcss.config.js | 0 .../client}/public/css/flag-icons.min.css | 0 .../client}/public/css/style.css | 0 .../client}/public/flags/1x1/ad.svg | 0 .../client}/public/flags/1x1/ae.svg | 0 .../client}/public/flags/1x1/af.svg | 0 .../client}/public/flags/1x1/ag.svg | 0 .../client}/public/flags/1x1/ai.svg | 0 .../client}/public/flags/1x1/al.svg | 0 .../client}/public/flags/1x1/am.svg | 0 .../client}/public/flags/1x1/ao.svg | 0 .../client}/public/flags/1x1/aq.svg | 0 .../client}/public/flags/1x1/ar.svg | 0 .../client}/public/flags/1x1/arab.svg | 0 .../client}/public/flags/1x1/as.svg | 0 .../client}/public/flags/1x1/at.svg | 0 .../client}/public/flags/1x1/au.svg | 0 .../client}/public/flags/1x1/aw.svg | 0 .../client}/public/flags/1x1/ax.svg | 0 .../client}/public/flags/1x1/az.svg | 0 .../client}/public/flags/1x1/ba.svg | 0 .../client}/public/flags/1x1/bb.svg | 0 .../client}/public/flags/1x1/bd.svg | 0 .../client}/public/flags/1x1/be.svg | 0 .../client}/public/flags/1x1/bf.svg | 0 .../client}/public/flags/1x1/bg.svg | 0 .../client}/public/flags/1x1/bh.svg | 0 .../client}/public/flags/1x1/bi.svg | 0 .../client}/public/flags/1x1/bj.svg | 0 .../client}/public/flags/1x1/bl.svg | 0 .../client}/public/flags/1x1/bm.svg | 0 .../client}/public/flags/1x1/bn.svg | 0 .../client}/public/flags/1x1/bo.svg | 0 .../client}/public/flags/1x1/bq.svg | 0 .../client}/public/flags/1x1/br.svg | 0 .../client}/public/flags/1x1/bs.svg | 0 .../client}/public/flags/1x1/bt.svg | 0 .../client}/public/flags/1x1/bv.svg | 0 .../client}/public/flags/1x1/bw.svg | 0 .../client}/public/flags/1x1/by.svg | 0 .../client}/public/flags/1x1/bz.svg | 0 .../client}/public/flags/1x1/ca.svg | 0 .../client}/public/flags/1x1/cc.svg | 0 .../client}/public/flags/1x1/cd.svg | 0 .../client}/public/flags/1x1/cefta.svg | 0 .../client}/public/flags/1x1/cf.svg | 0 .../client}/public/flags/1x1/cg.svg | 0 .../client}/public/flags/1x1/ch.svg | 0 .../client}/public/flags/1x1/ci.svg | 0 .../client}/public/flags/1x1/ck.svg | 0 .../client}/public/flags/1x1/cl.svg | 0 .../client}/public/flags/1x1/cm.svg | 0 .../client}/public/flags/1x1/cn.svg | 0 .../client}/public/flags/1x1/co.svg | 0 .../client}/public/flags/1x1/cp.svg | 0 .../client}/public/flags/1x1/cr.svg | 0 .../client}/public/flags/1x1/cu.svg | 0 .../client}/public/flags/1x1/cv.svg | 0 .../client}/public/flags/1x1/cw.svg | 0 .../client}/public/flags/1x1/cx.svg | 0 .../client}/public/flags/1x1/cy.svg | 0 .../client}/public/flags/1x1/cz.svg | 0 .../client}/public/flags/1x1/de.svg | 0 .../client}/public/flags/1x1/dg.svg | 0 .../client}/public/flags/1x1/dj.svg | 0 .../client}/public/flags/1x1/dk.svg | 0 .../client}/public/flags/1x1/dm.svg | 0 .../client}/public/flags/1x1/do.svg | 0 .../client}/public/flags/1x1/dz.svg | 0 .../client}/public/flags/1x1/eac.svg | 0 .../client}/public/flags/1x1/ec.svg | 0 .../client}/public/flags/1x1/ee.svg | 0 .../client}/public/flags/1x1/eg.svg | 0 .../client}/public/flags/1x1/eh.svg | 0 .../client}/public/flags/1x1/er.svg | 0 .../client}/public/flags/1x1/es-ct.svg | 0 .../client}/public/flags/1x1/es-ga.svg | 0 .../client}/public/flags/1x1/es-pv.svg | 0 .../client}/public/flags/1x1/es.svg | 0 .../client}/public/flags/1x1/et.svg | 0 .../client}/public/flags/1x1/eu.svg | 0 .../client}/public/flags/1x1/fi.svg | 0 .../client}/public/flags/1x1/fj.svg | 0 .../client}/public/flags/1x1/fk.svg | 0 .../client}/public/flags/1x1/fm.svg | 0 .../client}/public/flags/1x1/fo.svg | 0 .../client}/public/flags/1x1/fr.svg | 0 .../client}/public/flags/1x1/ga.svg | 0 .../client}/public/flags/1x1/gb-eng.svg | 0 .../client}/public/flags/1x1/gb-nir.svg | 0 .../client}/public/flags/1x1/gb-sct.svg | 0 .../client}/public/flags/1x1/gb-wls.svg | 0 .../client}/public/flags/1x1/gb.svg | 0 .../client}/public/flags/1x1/gd.svg | 0 .../client}/public/flags/1x1/ge.svg | 0 .../client}/public/flags/1x1/gf.svg | 0 .../client}/public/flags/1x1/gg.svg | 0 .../client}/public/flags/1x1/gh.svg | 0 .../client}/public/flags/1x1/gi.svg | 0 .../client}/public/flags/1x1/gl.svg | 0 .../client}/public/flags/1x1/gm.svg | 0 .../client}/public/flags/1x1/gn.svg | 0 .../client}/public/flags/1x1/gp.svg | 0 .../client}/public/flags/1x1/gq.svg | 0 .../client}/public/flags/1x1/gr.svg | 0 .../client}/public/flags/1x1/gs.svg | 0 .../client}/public/flags/1x1/gt.svg | 0 .../client}/public/flags/1x1/gu.svg | 0 .../client}/public/flags/1x1/gw.svg | 0 .../client}/public/flags/1x1/gy.svg | 0 .../client}/public/flags/1x1/hk.svg | 0 .../client}/public/flags/1x1/hm.svg | 0 .../client}/public/flags/1x1/hn.svg | 0 .../client}/public/flags/1x1/hr.svg | 0 .../client}/public/flags/1x1/ht.svg | 0 .../client}/public/flags/1x1/hu.svg | 0 .../client}/public/flags/1x1/ic.svg | 0 .../client}/public/flags/1x1/id.svg | 0 .../client}/public/flags/1x1/ie.svg | 0 .../client}/public/flags/1x1/il.svg | 0 .../client}/public/flags/1x1/im.svg | 0 .../client}/public/flags/1x1/in.svg | 0 .../client}/public/flags/1x1/io.svg | 0 .../client}/public/flags/1x1/iq.svg | 0 .../client}/public/flags/1x1/ir.svg | 0 .../client}/public/flags/1x1/is.svg | 0 .../client}/public/flags/1x1/it.svg | 0 .../client}/public/flags/1x1/je.svg | 0 .../client}/public/flags/1x1/jm.svg | 0 .../client}/public/flags/1x1/jo.svg | 0 .../client}/public/flags/1x1/jp.svg | 0 .../client}/public/flags/1x1/ke.svg | 0 .../client}/public/flags/1x1/kg.svg | 0 .../client}/public/flags/1x1/kh.svg | 0 .../client}/public/flags/1x1/ki.svg | 0 .../client}/public/flags/1x1/km.svg | 0 .../client}/public/flags/1x1/kn.svg | 0 .../client}/public/flags/1x1/kp.svg | 0 .../client}/public/flags/1x1/kr.svg | 0 .../client}/public/flags/1x1/kw.svg | 0 .../client}/public/flags/1x1/ky.svg | 0 .../client}/public/flags/1x1/kz.svg | 0 .../client}/public/flags/1x1/la.svg | 0 .../client}/public/flags/1x1/lb.svg | 0 .../client}/public/flags/1x1/lc.svg | 0 .../client}/public/flags/1x1/li.svg | 0 .../client}/public/flags/1x1/lk.svg | 0 .../client}/public/flags/1x1/lr.svg | 0 .../client}/public/flags/1x1/ls.svg | 0 .../client}/public/flags/1x1/lt.svg | 0 .../client}/public/flags/1x1/lu.svg | 0 .../client}/public/flags/1x1/lv.svg | 0 .../client}/public/flags/1x1/ly.svg | 0 .../client}/public/flags/1x1/ma.svg | 0 .../client}/public/flags/1x1/mc.svg | 0 .../client}/public/flags/1x1/md.svg | 0 .../client}/public/flags/1x1/me.svg | 0 .../client}/public/flags/1x1/mf.svg | 0 .../client}/public/flags/1x1/mg.svg | 0 .../client}/public/flags/1x1/mh.svg | 0 .../client}/public/flags/1x1/mk.svg | 0 .../client}/public/flags/1x1/ml.svg | 0 .../client}/public/flags/1x1/mm.svg | 0 .../client}/public/flags/1x1/mn.svg | 0 .../client}/public/flags/1x1/mo.svg | 0 .../client}/public/flags/1x1/mp.svg | 0 .../client}/public/flags/1x1/mq.svg | 0 .../client}/public/flags/1x1/mr.svg | 0 .../client}/public/flags/1x1/ms.svg | 0 .../client}/public/flags/1x1/mt.svg | 0 .../client}/public/flags/1x1/mu.svg | 0 .../client}/public/flags/1x1/mv.svg | 0 .../client}/public/flags/1x1/mw.svg | 0 .../client}/public/flags/1x1/mx.svg | 0 .../client}/public/flags/1x1/my.svg | 0 .../client}/public/flags/1x1/mz.svg | 0 .../client}/public/flags/1x1/na.svg | 0 .../client}/public/flags/1x1/nc.svg | 0 .../client}/public/flags/1x1/ne.svg | 0 .../client}/public/flags/1x1/nf.svg | 0 .../client}/public/flags/1x1/ng.svg | 0 .../client}/public/flags/1x1/ni.svg | 0 .../client}/public/flags/1x1/nl.svg | 0 .../client}/public/flags/1x1/no.svg | 0 .../client}/public/flags/1x1/np.svg | 0 .../client}/public/flags/1x1/nr.svg | 0 .../client}/public/flags/1x1/nu.svg | 0 .../client}/public/flags/1x1/nz.svg | 0 .../client}/public/flags/1x1/om.svg | 0 .../client}/public/flags/1x1/pa.svg | 0 .../client}/public/flags/1x1/pc.svg | 0 .../client}/public/flags/1x1/pe.svg | 0 .../client}/public/flags/1x1/pf.svg | 0 .../client}/public/flags/1x1/pg.svg | 0 .../client}/public/flags/1x1/ph.svg | 0 .../client}/public/flags/1x1/pk.svg | 0 .../client}/public/flags/1x1/pl.svg | 0 .../client}/public/flags/1x1/pm.svg | 0 .../client}/public/flags/1x1/pn.svg | 0 .../client}/public/flags/1x1/pr.svg | 0 .../client}/public/flags/1x1/ps.svg | 0 .../client}/public/flags/1x1/pt.svg | 0 .../client}/public/flags/1x1/pw.svg | 0 .../client}/public/flags/1x1/py.svg | 0 .../client}/public/flags/1x1/qa.svg | 0 .../client}/public/flags/1x1/re.svg | 0 .../client}/public/flags/1x1/ro.svg | 0 .../client}/public/flags/1x1/rs.svg | 0 .../client}/public/flags/1x1/ru.svg | 0 .../client}/public/flags/1x1/rw.svg | 0 .../client}/public/flags/1x1/sa.svg | 0 .../client}/public/flags/1x1/sb.svg | 0 .../client}/public/flags/1x1/sc.svg | 0 .../client}/public/flags/1x1/sd.svg | 0 .../client}/public/flags/1x1/se.svg | 0 .../client}/public/flags/1x1/sg.svg | 0 .../client}/public/flags/1x1/sh-ac.svg | 0 .../client}/public/flags/1x1/sh-hl.svg | 0 .../client}/public/flags/1x1/sh-ta.svg | 0 .../client}/public/flags/1x1/sh.svg | 0 .../client}/public/flags/1x1/si.svg | 0 .../client}/public/flags/1x1/sj.svg | 0 .../client}/public/flags/1x1/sk.svg | 0 .../client}/public/flags/1x1/sl.svg | 0 .../client}/public/flags/1x1/sm.svg | 0 .../client}/public/flags/1x1/sn.svg | 0 .../client}/public/flags/1x1/so.svg | 0 .../client}/public/flags/1x1/sr.svg | 0 .../client}/public/flags/1x1/ss.svg | 0 .../client}/public/flags/1x1/st.svg | 0 .../client}/public/flags/1x1/sv.svg | 0 .../client}/public/flags/1x1/sx.svg | 0 .../client}/public/flags/1x1/sy.svg | 0 .../client}/public/flags/1x1/sz.svg | 0 .../client}/public/flags/1x1/tc.svg | 0 .../client}/public/flags/1x1/td.svg | 0 .../client}/public/flags/1x1/tf.svg | 0 .../client}/public/flags/1x1/tg.svg | 0 .../client}/public/flags/1x1/th.svg | 0 .../client}/public/flags/1x1/tj.svg | 0 .../client}/public/flags/1x1/tk.svg | 0 .../client}/public/flags/1x1/tl.svg | 0 .../client}/public/flags/1x1/tm.svg | 0 .../client}/public/flags/1x1/tn.svg | 0 .../client}/public/flags/1x1/to.svg | 0 .../client}/public/flags/1x1/tr.svg | 0 .../client}/public/flags/1x1/tt.svg | 0 .../client}/public/flags/1x1/tv.svg | 0 .../client}/public/flags/1x1/tw.svg | 0 .../client}/public/flags/1x1/tz.svg | 0 .../client}/public/flags/1x1/ua.svg | 0 .../client}/public/flags/1x1/ug.svg | 0 .../client}/public/flags/1x1/um.svg | 0 .../client}/public/flags/1x1/un.svg | 0 .../client}/public/flags/1x1/us.svg | 0 .../client}/public/flags/1x1/uy.svg | 0 .../client}/public/flags/1x1/uz.svg | 0 .../client}/public/flags/1x1/va.svg | 0 .../client}/public/flags/1x1/vc.svg | 0 .../client}/public/flags/1x1/ve.svg | 0 .../client}/public/flags/1x1/vg.svg | 0 .../client}/public/flags/1x1/vi.svg | 0 .../client}/public/flags/1x1/vn.svg | 0 .../client}/public/flags/1x1/vu.svg | 0 .../client}/public/flags/1x1/wf.svg | 0 .../client}/public/flags/1x1/ws.svg | 0 .../client}/public/flags/1x1/xk.svg | 0 .../client}/public/flags/1x1/xx.svg | 0 .../client}/public/flags/1x1/ye.svg | 0 .../client}/public/flags/1x1/yt.svg | 0 .../client}/public/flags/1x1/za.svg | 0 .../client}/public/flags/1x1/zm.svg | 0 .../client}/public/flags/1x1/zw.svg | 0 .../client}/public/flags/4x3/ad.svg | 0 .../client}/public/flags/4x3/ae.svg | 0 .../client}/public/flags/4x3/af.svg | 0 .../client}/public/flags/4x3/ag.svg | 0 .../client}/public/flags/4x3/ai.svg | 0 .../client}/public/flags/4x3/al.svg | 0 .../client}/public/flags/4x3/am.svg | 0 .../client}/public/flags/4x3/ao.svg | 0 .../client}/public/flags/4x3/aq.svg | 0 .../client}/public/flags/4x3/ar.svg | 0 .../client}/public/flags/4x3/arab.svg | 0 .../client}/public/flags/4x3/as.svg | 0 .../client}/public/flags/4x3/at.svg | 0 .../client}/public/flags/4x3/au.svg | 0 .../client}/public/flags/4x3/aw.svg | 0 .../client}/public/flags/4x3/ax.svg | 0 .../client}/public/flags/4x3/az.svg | 0 .../client}/public/flags/4x3/ba.svg | 0 .../client}/public/flags/4x3/bb.svg | 0 .../client}/public/flags/4x3/bd.svg | 0 .../client}/public/flags/4x3/be.svg | 0 .../client}/public/flags/4x3/bf.svg | 0 .../client}/public/flags/4x3/bg.svg | 0 .../client}/public/flags/4x3/bh.svg | 0 .../client}/public/flags/4x3/bi.svg | 0 .../client}/public/flags/4x3/bj.svg | 0 .../client}/public/flags/4x3/bl.svg | 0 .../client}/public/flags/4x3/bm.svg | 0 .../client}/public/flags/4x3/bn.svg | 0 .../client}/public/flags/4x3/bo.svg | 0 .../client}/public/flags/4x3/bq.svg | 0 .../client}/public/flags/4x3/br.svg | 0 .../client}/public/flags/4x3/bs.svg | 0 .../client}/public/flags/4x3/bt.svg | 0 .../client}/public/flags/4x3/bv.svg | 0 .../client}/public/flags/4x3/bw.svg | 0 .../client}/public/flags/4x3/by.svg | 0 .../client}/public/flags/4x3/bz.svg | 0 .../client}/public/flags/4x3/ca.svg | 0 .../client}/public/flags/4x3/cc.svg | 0 .../client}/public/flags/4x3/cd.svg | 0 .../client}/public/flags/4x3/cefta.svg | 0 .../client}/public/flags/4x3/cf.svg | 0 .../client}/public/flags/4x3/cg.svg | 0 .../client}/public/flags/4x3/ch.svg | 0 .../client}/public/flags/4x3/ci.svg | 0 .../client}/public/flags/4x3/ck.svg | 0 .../client}/public/flags/4x3/cl.svg | 0 .../client}/public/flags/4x3/cm.svg | 0 .../client}/public/flags/4x3/cn.svg | 0 .../client}/public/flags/4x3/co.svg | 0 .../client}/public/flags/4x3/cp.svg | 0 .../client}/public/flags/4x3/cr.svg | 0 .../client}/public/flags/4x3/cu.svg | 0 .../client}/public/flags/4x3/cv.svg | 0 .../client}/public/flags/4x3/cw.svg | 0 .../client}/public/flags/4x3/cx.svg | 0 .../client}/public/flags/4x3/cy.svg | 0 .../client}/public/flags/4x3/cz.svg | 0 .../client}/public/flags/4x3/de.svg | 0 .../client}/public/flags/4x3/dg.svg | 0 .../client}/public/flags/4x3/dj.svg | 0 .../client}/public/flags/4x3/dk.svg | 0 .../client}/public/flags/4x3/dm.svg | 0 .../client}/public/flags/4x3/do.svg | 0 .../client}/public/flags/4x3/dz.svg | 0 .../client}/public/flags/4x3/eac.svg | 0 .../client}/public/flags/4x3/ec.svg | 0 .../client}/public/flags/4x3/ee.svg | 0 .../client}/public/flags/4x3/eg.svg | 0 .../client}/public/flags/4x3/eh.svg | 0 .../client}/public/flags/4x3/er.svg | 0 .../client}/public/flags/4x3/es-ct.svg | 0 .../client}/public/flags/4x3/es-ga.svg | 0 .../client}/public/flags/4x3/es-pv.svg | 0 .../client}/public/flags/4x3/es.svg | 0 .../client}/public/flags/4x3/et.svg | 0 .../client}/public/flags/4x3/eu.svg | 0 .../client}/public/flags/4x3/fi.svg | 0 .../client}/public/flags/4x3/fj.svg | 0 .../client}/public/flags/4x3/fk.svg | 0 .../client}/public/flags/4x3/fm.svg | 0 .../client}/public/flags/4x3/fo.svg | 0 .../client}/public/flags/4x3/fr.svg | 0 .../client}/public/flags/4x3/ga.svg | 0 .../client}/public/flags/4x3/gb-eng.svg | 0 .../client}/public/flags/4x3/gb-nir.svg | 0 .../client}/public/flags/4x3/gb-sct.svg | 0 .../client}/public/flags/4x3/gb-wls.svg | 0 .../client}/public/flags/4x3/gb.svg | 0 .../client}/public/flags/4x3/gd.svg | 0 .../client}/public/flags/4x3/ge.svg | 0 .../client}/public/flags/4x3/gf.svg | 0 .../client}/public/flags/4x3/gg.svg | 0 .../client}/public/flags/4x3/gh.svg | 0 .../client}/public/flags/4x3/gi.svg | 0 .../client}/public/flags/4x3/gl.svg | 0 .../client}/public/flags/4x3/gm.svg | 0 .../client}/public/flags/4x3/gn.svg | 0 .../client}/public/flags/4x3/gp.svg | 0 .../client}/public/flags/4x3/gq.svg | 0 .../client}/public/flags/4x3/gr.svg | 0 .../client}/public/flags/4x3/gs.svg | 0 .../client}/public/flags/4x3/gt.svg | 0 .../client}/public/flags/4x3/gu.svg | 0 .../client}/public/flags/4x3/gw.svg | 0 .../client}/public/flags/4x3/gy.svg | 0 .../client}/public/flags/4x3/hk.svg | 0 .../client}/public/flags/4x3/hm.svg | 0 .../client}/public/flags/4x3/hn.svg | 0 .../client}/public/flags/4x3/hr.svg | 0 .../client}/public/flags/4x3/ht.svg | 0 .../client}/public/flags/4x3/hu.svg | 0 .../client}/public/flags/4x3/ic.svg | 0 .../client}/public/flags/4x3/id.svg | 0 .../client}/public/flags/4x3/ie.svg | 0 .../client}/public/flags/4x3/il.svg | 0 .../client}/public/flags/4x3/im.svg | 0 .../client}/public/flags/4x3/in.svg | 0 .../client}/public/flags/4x3/io.svg | 0 .../client}/public/flags/4x3/iq.svg | 0 .../client}/public/flags/4x3/ir.svg | 0 .../client}/public/flags/4x3/is.svg | 0 .../client}/public/flags/4x3/it.svg | 0 .../client}/public/flags/4x3/je.svg | 0 .../client}/public/flags/4x3/jm.svg | 0 .../client}/public/flags/4x3/jo.svg | 0 .../client}/public/flags/4x3/jp.svg | 0 .../client}/public/flags/4x3/ke.svg | 0 .../client}/public/flags/4x3/kg.svg | 0 .../client}/public/flags/4x3/kh.svg | 0 .../client}/public/flags/4x3/ki.svg | 0 .../client}/public/flags/4x3/km.svg | 0 .../client}/public/flags/4x3/kn.svg | 0 .../client}/public/flags/4x3/kp.svg | 0 .../client}/public/flags/4x3/kr.svg | 0 .../client}/public/flags/4x3/kw.svg | 0 .../client}/public/flags/4x3/ky.svg | 0 .../client}/public/flags/4x3/kz.svg | 0 .../client}/public/flags/4x3/la.svg | 0 .../client}/public/flags/4x3/lb.svg | 0 .../client}/public/flags/4x3/lc.svg | 0 .../client}/public/flags/4x3/li.svg | 0 .../client}/public/flags/4x3/lk.svg | 0 .../client}/public/flags/4x3/lr.svg | 0 .../client}/public/flags/4x3/ls.svg | 0 .../client}/public/flags/4x3/lt.svg | 0 .../client}/public/flags/4x3/lu.svg | 0 .../client}/public/flags/4x3/lv.svg | 0 .../client}/public/flags/4x3/ly.svg | 0 .../client}/public/flags/4x3/ma.svg | 0 .../client}/public/flags/4x3/mc.svg | 0 .../client}/public/flags/4x3/md.svg | 0 .../client}/public/flags/4x3/me.svg | 0 .../client}/public/flags/4x3/mf.svg | 0 .../client}/public/flags/4x3/mg.svg | 0 .../client}/public/flags/4x3/mh.svg | 0 .../client}/public/flags/4x3/mk.svg | 0 .../client}/public/flags/4x3/ml.svg | 0 .../client}/public/flags/4x3/mm.svg | 0 .../client}/public/flags/4x3/mn.svg | 0 .../client}/public/flags/4x3/mo.svg | 0 .../client}/public/flags/4x3/mp.svg | 0 .../client}/public/flags/4x3/mq.svg | 0 .../client}/public/flags/4x3/mr.svg | 0 .../client}/public/flags/4x3/ms.svg | 0 .../client}/public/flags/4x3/mt.svg | 0 .../client}/public/flags/4x3/mu.svg | 0 .../client}/public/flags/4x3/mv.svg | 0 .../client}/public/flags/4x3/mw.svg | 0 .../client}/public/flags/4x3/mx.svg | 0 .../client}/public/flags/4x3/my.svg | 0 .../client}/public/flags/4x3/mz.svg | 0 .../client}/public/flags/4x3/na.svg | 0 .../client}/public/flags/4x3/nc.svg | 0 .../client}/public/flags/4x3/ne.svg | 0 .../client}/public/flags/4x3/nf.svg | 0 .../client}/public/flags/4x3/ng.svg | 0 .../client}/public/flags/4x3/ni.svg | 0 .../client}/public/flags/4x3/nl.svg | 0 .../client}/public/flags/4x3/no.svg | 0 .../client}/public/flags/4x3/np.svg | 0 .../client}/public/flags/4x3/nr.svg | 0 .../client}/public/flags/4x3/nu.svg | 0 .../client}/public/flags/4x3/nz.svg | 0 .../client}/public/flags/4x3/om.svg | 0 .../client}/public/flags/4x3/pa.svg | 0 .../client}/public/flags/4x3/pc.svg | 0 .../client}/public/flags/4x3/pe.svg | 0 .../client}/public/flags/4x3/pf.svg | 0 .../client}/public/flags/4x3/pg.svg | 0 .../client}/public/flags/4x3/ph.svg | 0 .../client}/public/flags/4x3/pk.svg | 0 .../client}/public/flags/4x3/pl.svg | 0 .../client}/public/flags/4x3/pm.svg | 0 .../client}/public/flags/4x3/pn.svg | 0 .../client}/public/flags/4x3/pr.svg | 0 .../client}/public/flags/4x3/ps.svg | 0 .../client}/public/flags/4x3/pt.svg | 0 .../client}/public/flags/4x3/pw.svg | 0 .../client}/public/flags/4x3/py.svg | 0 .../client}/public/flags/4x3/qa.svg | 0 .../client}/public/flags/4x3/re.svg | 0 .../client}/public/flags/4x3/ro.svg | 0 .../client}/public/flags/4x3/rs.svg | 0 .../client}/public/flags/4x3/ru.svg | 0 .../client}/public/flags/4x3/rw.svg | 0 .../client}/public/flags/4x3/sa.svg | 0 .../client}/public/flags/4x3/sb.svg | 0 .../client}/public/flags/4x3/sc.svg | 0 .../client}/public/flags/4x3/sd.svg | 0 .../client}/public/flags/4x3/se.svg | 0 .../client}/public/flags/4x3/sg.svg | 0 .../client}/public/flags/4x3/sh-ac.svg | 0 .../client}/public/flags/4x3/sh-hl.svg | 0 .../client}/public/flags/4x3/sh-ta.svg | 0 .../client}/public/flags/4x3/sh.svg | 0 .../client}/public/flags/4x3/si.svg | 0 .../client}/public/flags/4x3/sj.svg | 0 .../client}/public/flags/4x3/sk.svg | 0 .../client}/public/flags/4x3/sl.svg | 0 .../client}/public/flags/4x3/sm.svg | 0 .../client}/public/flags/4x3/sn.svg | 0 .../client}/public/flags/4x3/so.svg | 0 .../client}/public/flags/4x3/sr.svg | 0 .../client}/public/flags/4x3/ss.svg | 0 .../client}/public/flags/4x3/st.svg | 0 .../client}/public/flags/4x3/sv.svg | 0 .../client}/public/flags/4x3/sx.svg | 0 .../client}/public/flags/4x3/sy.svg | 0 .../client}/public/flags/4x3/sz.svg | 0 .../client}/public/flags/4x3/tc.svg | 0 .../client}/public/flags/4x3/td.svg | 0 .../client}/public/flags/4x3/tf.svg | 0 .../client}/public/flags/4x3/tg.svg | 0 .../client}/public/flags/4x3/th.svg | 0 .../client}/public/flags/4x3/tj.svg | 0 .../client}/public/flags/4x3/tk.svg | 0 .../client}/public/flags/4x3/tl.svg | 0 .../client}/public/flags/4x3/tm.svg | 0 .../client}/public/flags/4x3/tn.svg | 0 .../client}/public/flags/4x3/to.svg | 0 .../client}/public/flags/4x3/tr.svg | 0 .../client}/public/flags/4x3/tt.svg | 0 .../client}/public/flags/4x3/tv.svg | 0 .../client}/public/flags/4x3/tw.svg | 0 .../client}/public/flags/4x3/tz.svg | 0 .../client}/public/flags/4x3/ua.svg | 0 .../client}/public/flags/4x3/ug.svg | 0 .../client}/public/flags/4x3/um.svg | 0 .../client}/public/flags/4x3/un.svg | 0 .../client}/public/flags/4x3/us.svg | 0 .../client}/public/flags/4x3/uy.svg | 0 .../client}/public/flags/4x3/uz.svg | 0 .../client}/public/flags/4x3/va.svg | 0 .../client}/public/flags/4x3/vc.svg | 0 .../client}/public/flags/4x3/ve.svg | 0 .../client}/public/flags/4x3/vg.svg | 0 .../client}/public/flags/4x3/vi.svg | 0 .../client}/public/flags/4x3/vn.svg | 0 .../client}/public/flags/4x3/vu.svg | 0 .../client}/public/flags/4x3/wf.svg | 0 .../client}/public/flags/4x3/ws.svg | 0 .../client}/public/flags/4x3/xk.svg | 0 .../client}/public/flags/4x3/xx.svg | 0 .../client}/public/flags/4x3/ye.svg | 0 .../client}/public/flags/4x3/yt.svg | 0 .../client}/public/flags/4x3/za.svg | 0 .../client}/public/flags/4x3/zm.svg | 0 .../client}/public/flags/4x3/zw.svg | 0 .../client/public}/img/favicon-white.ico | Bin .../client/public}/img/favicon.ico | Bin src/ui/client/setup/.gitignore | 26 + .../setup/src => ui/client/setup}/Setup.vue | 0 src/{ => ui}/client/setup/index.html | 11 +- .../setup/src => ui/client/setup}/setup.js | 0 .../client}/tailwind.config.js | 0 src/{ => ui}/client/tests/bans.json | 0 src/{ => ui}/client/tests/bans.py | 0 src/{ => ui}/client/tests/globalconfig.json | 0 src/{ => ui}/client/tests/globalconfig.py | 0 src/{ => ui}/client/tests/globalconfig64.txt | 0 src/{ => ui}/client/tests/home.json | 0 src/{ => ui}/client/tests/home.py | 0 src/{ => ui}/client/tests/home.txt | 0 src/{ => ui}/client/tests/instances.json | 0 src/{ => ui}/client/tests/instances.py | 0 src/{ => ui}/client/tests/instances.txt | 0 src/{ => ui}/client/tests/jobs.json | 0 src/{ => ui}/client/tests/jobs.py | 0 src/{ => ui}/client/tests/plugins.json | 0 src/{ => ui}/client/tests/plugins.py | 0 src/{ => ui}/client/tests/plugins_page.json | 0 src/{ => ui}/client/tests/reports.json | 0 src/{ => ui}/client/tests/reports.py | 0 src/ui/client/vite.config.dashboard.js | 43 + src/ui/client/vite.config.setup.js | 36 + .../images/BUNKERWEB-print-hd-blanc.png | Bin 49316 -> 0 bytes src/ui/static/images/BUNKERWEB-print-hd.png | Bin 54105 -> 0 bytes src/ui/static/images/favicon-white.ico | Bin 39250 -> 0 bytes src/ui/static/images/favicon.ico | Bin 38078 -> 0 bytes src/ui/static/images/logo-bw.png | Bin 9677 -> 0 bytes src/ui/static/images/logo-menu-2.png | Bin 49316 -> 0 bytes src/ui/static/images/logo-menu.png | Bin 54105 -> 0 bytes src/ui/static/images/no_internet.png | Bin 1186 -> 0 bytes src/ui/static/js/account.js | 196 -- src/ui/static/js/bans.js | 357 --- src/ui/static/js/cache.js | 84 - src/ui/static/js/configs.js | 127 - src/ui/static/js/editor/ace.js | 23 - src/ui/static/js/editor/ext-beautify.js | 8 - src/ui/static/js/editor/ext-code_lens.js | 8 - .../js/editor/ext-elastic_tabstops_lite.js | 8 - src/ui/static/js/editor/ext-emmet.js | 8 - src/ui/static/js/editor/ext-error_marker.js | 8 - src/ui/static/js/editor/ext-hardwrap.js | 8 - .../static/js/editor/ext-keybinding_menu.js | 8 - src/ui/static/js/editor/ext-language_tools.js | 8 - src/ui/static/js/editor/ext-linking.js | 8 - src/ui/static/js/editor/ext-modelist.js | 8 - src/ui/static/js/editor/ext-options.js | 8 - src/ui/static/js/editor/ext-prompt.js | 8 - src/ui/static/js/editor/ext-rtl.js | 8 - src/ui/static/js/editor/ext-searchbox.js | 8 - src/ui/static/js/editor/ext-settings_menu.js | 8 - src/ui/static/js/editor/ext-spellcheck.js | 8 - src/ui/static/js/editor/ext-split.js | 8 - .../static/js/editor/ext-static_highlight.js | 8 - src/ui/static/js/editor/ext-statusbar.js | 8 - src/ui/static/js/editor/ext-textarea.js | 8 - src/ui/static/js/editor/ext-themelist.js | 8 - src/ui/static/js/editor/ext-whitespace.js | 8 - src/ui/static/js/editor/keybinding-emacs.js | 8 - src/ui/static/js/editor/keybinding-sublime.js | 8 - src/ui/static/js/editor/keybinding-vim.js | 8 - src/ui/static/js/editor/keybinding-vscode.js | 8 - src/ui/static/js/editor/mode-text.js | 8 - src/ui/static/js/editor/theme-dawn.js | 8 - src/ui/static/js/editor/theme-dracula.js | 8 - src/ui/static/js/editor/worker-base.js | 1 - src/ui/static/js/editor/worker-coffee.js | 1 - src/ui/static/js/editor/worker-css.js | 1 - src/ui/static/js/editor/worker-html.js | 1 - src/ui/static/js/editor/worker-javascript.js | 1 - src/ui/static/js/editor/worker-json.js | 1 - src/ui/static/js/editor/worker-lua.js | 1 - src/ui/static/js/editor/worker-php.js | 1 - src/ui/static/js/editor/worker-xml.js | 1 - src/ui/static/js/editor/worker-xquery.js | 1 - src/ui/static/js/editor/worker-yaml.js | 1 - src/ui/static/js/global.js | 654 ----- src/ui/static/js/global_config.js | 693 ------ src/ui/static/js/jobs.js | 95 - src/ui/static/js/logs.js | 517 ---- src/ui/static/js/lottie-web.min.js | 1 - src/ui/static/js/plugins.js | 312 --- src/ui/static/js/plugins/utils.js | 187 -- src/ui/static/js/reports.js | 77 - src/ui/static/js/services.js | 491 ---- src/ui/static/js/totp.js | 23 - src/ui/static/js/utils/dashboard.js | 413 ---- src/ui/static/js/utils/file.manager.js | 709 ------ src/ui/static/js/utils/flatpickr.js | 16 - src/ui/static/js/utils/form.js | 336 --- src/ui/static/js/utils/purify/purify.min.js | 2 - src/ui/static/js/utils/purify/src/attrs.js | 366 --- .../static/js/utils/purify/src/license_header | 1 - src/ui/static/js/utils/purify/src/purify.js | 1695 ------------- src/ui/static/js/utils/purify/src/regexp.js | 17 - src/ui/static/js/utils/purify/src/tags.js | 280 --- src/ui/static/js/utils/purify/src/utils.js | 226 -- src/ui/static/js/utils/settings.js | 2117 ----------------- src/ui/static/json/particles.json | 1 - src/ui/static/robots.txt | 2 - src/ui/static/style/dashboard.css | 1 - src/ui/static/style/datepicker-foundation.css | 3 - src/ui/static/style/flatpickr.css | 1 - src/ui/static/style/flatpickr.dark.css | 1 - src/ui/static/style/login.css | 10 - src/ui/static/webfonts/OpenSans.ttf | Bin 506152 -> 0 bytes 850 files changed, 564 insertions(+), 11605 deletions(-) delete mode 100644 src/client/dashboard/README.md delete mode 100644 src/client/dashboard/vite.config.js delete mode 100644 src/client/setup/README.md delete mode 100644 src/client/setup/package-lock.json delete mode 100644 src/client/setup/package.json delete mode 100644 src/client/setup/vite.config.js rename src/{client/dashboard => ui/client}/.gitignore (100%) create mode 100644 src/ui/client/README.md rename src/{ => ui}/client/build.js (91%) rename src/{client/setup => ui/client/dashboard}/.gitignore (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/css/flatpickr.css (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/css/flatpickr.dark.css (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/css/flatpickr.dark.min.css (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/css/flatpickr.min.css (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/img/BUNKERWEB-print-hd-blanc.png (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/img/BUNKERWEB-print-hd.png (100%) rename src/{client/dashboard/public => ui/client/dashboard/assets}/img/favicon-white.ico (100%) rename src/{client/dashboard/public => ui/client/dashboard/assets}/img/favicon.ico (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/img/logo-bw.png (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/img/logo-menu-2.png (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/img/logo-menu.png (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/img/no_internet.png (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ace.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-beautify.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-code_lens.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-elastic_tabstops_lite.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-emmet.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-error_marker.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-hardwrap.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-keybinding_menu.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-language_tools.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-linking.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-modelist.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-options.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-prompt.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-rtl.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-searchbox.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-settings_menu.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-spellcheck.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-split.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-static_highlight.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-statusbar.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-textarea.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-themelist.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/ext-whitespace.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/keybinding-emacs.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/keybinding-sublime.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/keybinding-vim.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/keybinding-vscode.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/mode-text.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/theme-dawn.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/theme-dracula.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/worker-base.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/worker-coffee.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/worker-css.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/worker-html.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/worker-javascript.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/worker-json.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/worker-lua.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/worker-php.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/worker-xml.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/worker-xquery.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/assets/script/editor/worker-yaml.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Builder/Bans.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Builder/Collection.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Builder/GlobalConfig.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Builder/Home.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Builder/Instances.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Builder/Jobs.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Builder/Plugins.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Builder/Reports.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Builder/Setup.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Dashboard/Banner.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Dashboard/Feedback.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Dashboard/Footer.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Dashboard/Header.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Dashboard/LangSwitch.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Dashboard/Layout.vue (60%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Dashboard/Loader.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Dashboard/Menu.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Dashboard/News.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Form/Advanced.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Form/Easy.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Form/Fields.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Form/Raw.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Form/Templates.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Forms/Error/Dropdown.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Forms/Error/Field.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Forms/Feature/Clipboard.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Forms/Field/Checkbox.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Forms/Field/Combobox.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Forms/Field/Datepicker.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Forms/Field/Editor.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Forms/Field/Input.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Forms/Field/List.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Forms/Field/Select.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Forms/Group/Multiple.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Forms/Header/Field.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Box.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Carton.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Check.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Close.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Core.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Cross.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Crown.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Discord.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Disk.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Disks.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Exclamation.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/External.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Flag.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Funnel.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Gear.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Github.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Globe.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/House.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Info.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Key.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Linkedin.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/List.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Lock.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Plus.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Puzzle.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Redirect.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Search.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Settings.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Task.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Trash.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Trespass.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Twitter.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Icons/Wire.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/List/Details.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/List/Pairs.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Message/Unmatch.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Widget/Alert.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Widget/Button.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Widget/ButtonGroup.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Widget/Container.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Widget/Filter.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Widget/Grid.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Widget/GridLayout.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Widget/Icons.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Widget/Instance.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Widget/Popover.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Widget/PopoverGroup.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Widget/Stat.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Widget/Status.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Widget/Subtitle.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Widget/Table.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Widget/Text.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/components/Widget/Title.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/lang/en.json (100%) rename src/{client/dashboard/src => ui/client/dashboard}/lang/fr.json (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/bans/Bans.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/bans/bans.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/bans/index.html (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/builder/Builder.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/builder/builder.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/builder/index.html (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/dashboard/Dashboard.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/dashboard/dashboard.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/dashboard/index.html (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/global-config/globalConfig.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/global-config/globalConfig.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/global-config/index.html (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/home/Home.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/home/home.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/home/index.html (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/instances/Instances.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/instances/index.html (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/instances/instances.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/jobs/Jobs.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/jobs/index.html (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/jobs/jobs.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/plugins/Plugins.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/plugins/index.html (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/plugins/plugins.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/reports/index.html (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/reports/reports.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/reports/reports.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/services/index.html (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/services/services.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/services/services.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/test/Test.vue (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/test/index.html (100%) rename src/{client/dashboard/src => ui/client/dashboard}/pages/test/test.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/store/advanced.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/store/global.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/utils/filter.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/utils/form.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/utils/global.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/utils/lang.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/utils/tabindex.js (100%) rename src/{client/dashboard/src => ui/client/dashboard}/utils/variables.js (100%) rename src/{client/dashboard => ui/client}/input.css (100%) rename src/{client/dashboard => ui/client}/package-lock.json (82%) rename src/{client/dashboard => ui/client}/package.json (55%) rename src/{client/dashboard => ui/client}/postcss.config.js (100%) rename src/{client/dashboard => ui/client}/public/css/flag-icons.min.css (100%) rename src/{client/dashboard => ui/client}/public/css/style.css (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ad.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ae.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/af.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ag.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ai.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/al.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/am.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ao.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/aq.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ar.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/arab.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/as.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/at.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/au.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/aw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ax.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/az.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ba.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/bb.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/bd.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/be.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/bf.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/bg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/bh.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/bi.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/bj.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/bl.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/bm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/bn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/bo.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/bq.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/br.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/bs.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/bt.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/bv.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/bw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/by.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/bz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ca.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/cc.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/cd.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/cefta.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/cf.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/cg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ch.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ci.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ck.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/cl.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/cm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/cn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/co.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/cp.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/cr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/cu.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/cv.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/cw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/cx.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/cy.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/cz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/de.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/dg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/dj.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/dk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/dm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/do.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/dz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/eac.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ec.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ee.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/eg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/eh.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/er.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/es-ct.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/es-ga.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/es-pv.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/es.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/et.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/eu.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/fi.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/fj.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/fk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/fm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/fo.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/fr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ga.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gb-eng.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gb-nir.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gb-sct.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gb-wls.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gb.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gd.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ge.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gf.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gh.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gi.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gl.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gp.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gq.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gs.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gt.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gu.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/gy.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/hk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/hm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/hn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/hr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ht.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/hu.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ic.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/id.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ie.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/il.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/im.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/in.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/io.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/iq.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ir.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/is.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/it.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/je.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/jm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/jo.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/jp.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ke.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/kg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/kh.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ki.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/km.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/kn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/kp.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/kr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/kw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ky.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/kz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/la.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/lb.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/lc.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/li.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/lk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/lr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ls.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/lt.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/lu.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/lv.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ly.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ma.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/mc.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/md.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/me.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/mf.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/mg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/mh.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/mk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ml.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/mm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/mn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/mo.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/mp.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/mq.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/mr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ms.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/mt.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/mu.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/mv.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/mw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/mx.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/my.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/mz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/na.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/nc.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ne.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/nf.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ng.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ni.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/nl.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/no.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/np.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/nr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/nu.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/nz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/om.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/pa.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/pc.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/pe.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/pf.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/pg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ph.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/pk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/pl.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/pm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/pn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/pr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ps.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/pt.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/pw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/py.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/qa.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/re.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ro.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/rs.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ru.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/rw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sa.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sb.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sc.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sd.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/se.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sh-ac.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sh-hl.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sh-ta.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sh.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/si.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sj.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sl.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/so.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ss.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/st.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sv.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sx.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sy.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/sz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/tc.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/td.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/tf.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/tg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/th.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/tj.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/tk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/tl.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/tm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/tn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/to.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/tr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/tt.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/tv.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/tw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/tz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ua.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ug.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/um.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/un.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/us.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/uy.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/uz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/va.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/vc.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ve.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/vg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/vi.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/vn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/vu.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/wf.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ws.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/xk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/xx.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/ye.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/yt.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/za.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/zm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/1x1/zw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ad.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ae.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/af.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ag.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ai.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/al.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/am.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ao.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/aq.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ar.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/arab.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/as.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/at.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/au.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/aw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ax.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/az.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ba.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/bb.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/bd.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/be.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/bf.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/bg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/bh.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/bi.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/bj.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/bl.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/bm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/bn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/bo.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/bq.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/br.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/bs.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/bt.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/bv.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/bw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/by.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/bz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ca.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/cc.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/cd.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/cefta.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/cf.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/cg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ch.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ci.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ck.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/cl.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/cm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/cn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/co.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/cp.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/cr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/cu.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/cv.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/cw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/cx.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/cy.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/cz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/de.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/dg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/dj.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/dk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/dm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/do.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/dz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/eac.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ec.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ee.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/eg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/eh.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/er.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/es-ct.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/es-ga.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/es-pv.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/es.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/et.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/eu.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/fi.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/fj.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/fk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/fm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/fo.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/fr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ga.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gb-eng.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gb-nir.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gb-sct.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gb-wls.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gb.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gd.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ge.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gf.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gh.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gi.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gl.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gp.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gq.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gs.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gt.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gu.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/gy.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/hk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/hm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/hn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/hr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ht.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/hu.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ic.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/id.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ie.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/il.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/im.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/in.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/io.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/iq.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ir.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/is.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/it.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/je.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/jm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/jo.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/jp.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ke.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/kg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/kh.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ki.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/km.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/kn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/kp.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/kr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/kw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ky.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/kz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/la.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/lb.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/lc.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/li.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/lk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/lr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ls.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/lt.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/lu.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/lv.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ly.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ma.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/mc.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/md.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/me.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/mf.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/mg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/mh.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/mk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ml.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/mm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/mn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/mo.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/mp.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/mq.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/mr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ms.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/mt.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/mu.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/mv.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/mw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/mx.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/my.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/mz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/na.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/nc.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ne.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/nf.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ng.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ni.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/nl.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/no.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/np.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/nr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/nu.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/nz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/om.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/pa.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/pc.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/pe.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/pf.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/pg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ph.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/pk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/pl.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/pm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/pn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/pr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ps.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/pt.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/pw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/py.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/qa.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/re.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ro.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/rs.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ru.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/rw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sa.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sb.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sc.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sd.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/se.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sh-ac.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sh-hl.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sh-ta.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sh.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/si.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sj.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sl.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/so.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ss.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/st.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sv.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sx.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sy.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/sz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/tc.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/td.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/tf.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/tg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/th.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/tj.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/tk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/tl.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/tm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/tn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/to.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/tr.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/tt.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/tv.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/tw.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/tz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ua.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ug.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/um.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/un.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/us.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/uy.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/uz.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/va.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/vc.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ve.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/vg.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/vi.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/vn.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/vu.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/wf.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ws.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/xk.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/xx.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/ye.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/yt.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/za.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/zm.svg (100%) rename src/{client/dashboard => ui/client}/public/flags/4x3/zw.svg (100%) rename src/{client/dashboard/src/assets => ui/client/public}/img/favicon-white.ico (100%) rename src/{client/dashboard/src/assets => ui/client/public}/img/favicon.ico (100%) create mode 100644 src/ui/client/setup/.gitignore rename src/{client/setup/src => ui/client/setup}/Setup.vue (100%) rename src/{ => ui}/client/setup/index.html (96%) rename src/{client/setup/src => ui/client/setup}/setup.js (100%) rename src/{client/dashboard => ui/client}/tailwind.config.js (100%) rename src/{ => ui}/client/tests/bans.json (100%) rename src/{ => ui}/client/tests/bans.py (100%) rename src/{ => ui}/client/tests/globalconfig.json (100%) rename src/{ => ui}/client/tests/globalconfig.py (100%) rename src/{ => ui}/client/tests/globalconfig64.txt (100%) rename src/{ => ui}/client/tests/home.json (100%) rename src/{ => ui}/client/tests/home.py (100%) rename src/{ => ui}/client/tests/home.txt (100%) rename src/{ => ui}/client/tests/instances.json (100%) rename src/{ => ui}/client/tests/instances.py (100%) rename src/{ => ui}/client/tests/instances.txt (100%) rename src/{ => ui}/client/tests/jobs.json (100%) rename src/{ => ui}/client/tests/jobs.py (100%) rename src/{ => ui}/client/tests/plugins.json (100%) rename src/{ => ui}/client/tests/plugins.py (100%) rename src/{ => ui}/client/tests/plugins_page.json (100%) rename src/{ => ui}/client/tests/reports.json (100%) rename src/{ => ui}/client/tests/reports.py (100%) create mode 100644 src/ui/client/vite.config.dashboard.js create mode 100644 src/ui/client/vite.config.setup.js delete mode 100644 src/ui/static/images/BUNKERWEB-print-hd-blanc.png delete mode 100644 src/ui/static/images/BUNKERWEB-print-hd.png delete mode 100644 src/ui/static/images/favicon-white.ico delete mode 100644 src/ui/static/images/favicon.ico delete mode 100644 src/ui/static/images/logo-bw.png delete mode 100644 src/ui/static/images/logo-menu-2.png delete mode 100644 src/ui/static/images/logo-menu.png delete mode 100644 src/ui/static/images/no_internet.png delete mode 100644 src/ui/static/js/account.js delete mode 100644 src/ui/static/js/bans.js delete mode 100644 src/ui/static/js/cache.js delete mode 100644 src/ui/static/js/configs.js delete mode 100644 src/ui/static/js/editor/ace.js delete mode 100644 src/ui/static/js/editor/ext-beautify.js delete mode 100644 src/ui/static/js/editor/ext-code_lens.js delete mode 100644 src/ui/static/js/editor/ext-elastic_tabstops_lite.js delete mode 100644 src/ui/static/js/editor/ext-emmet.js delete mode 100644 src/ui/static/js/editor/ext-error_marker.js delete mode 100644 src/ui/static/js/editor/ext-hardwrap.js delete mode 100644 src/ui/static/js/editor/ext-keybinding_menu.js delete mode 100644 src/ui/static/js/editor/ext-language_tools.js delete mode 100644 src/ui/static/js/editor/ext-linking.js delete mode 100644 src/ui/static/js/editor/ext-modelist.js delete mode 100644 src/ui/static/js/editor/ext-options.js delete mode 100644 src/ui/static/js/editor/ext-prompt.js delete mode 100644 src/ui/static/js/editor/ext-rtl.js delete mode 100644 src/ui/static/js/editor/ext-searchbox.js delete mode 100644 src/ui/static/js/editor/ext-settings_menu.js delete mode 100644 src/ui/static/js/editor/ext-spellcheck.js delete mode 100644 src/ui/static/js/editor/ext-split.js delete mode 100644 src/ui/static/js/editor/ext-static_highlight.js delete mode 100644 src/ui/static/js/editor/ext-statusbar.js delete mode 100644 src/ui/static/js/editor/ext-textarea.js delete mode 100644 src/ui/static/js/editor/ext-themelist.js delete mode 100644 src/ui/static/js/editor/ext-whitespace.js delete mode 100644 src/ui/static/js/editor/keybinding-emacs.js delete mode 100644 src/ui/static/js/editor/keybinding-sublime.js delete mode 100644 src/ui/static/js/editor/keybinding-vim.js delete mode 100644 src/ui/static/js/editor/keybinding-vscode.js delete mode 100644 src/ui/static/js/editor/mode-text.js delete mode 100644 src/ui/static/js/editor/theme-dawn.js delete mode 100644 src/ui/static/js/editor/theme-dracula.js delete mode 100644 src/ui/static/js/editor/worker-base.js delete mode 100644 src/ui/static/js/editor/worker-coffee.js delete mode 100644 src/ui/static/js/editor/worker-css.js delete mode 100644 src/ui/static/js/editor/worker-html.js delete mode 100644 src/ui/static/js/editor/worker-javascript.js delete mode 100644 src/ui/static/js/editor/worker-json.js delete mode 100644 src/ui/static/js/editor/worker-lua.js delete mode 100644 src/ui/static/js/editor/worker-php.js delete mode 100644 src/ui/static/js/editor/worker-xml.js delete mode 100644 src/ui/static/js/editor/worker-xquery.js delete mode 100644 src/ui/static/js/editor/worker-yaml.js delete mode 100644 src/ui/static/js/global.js delete mode 100644 src/ui/static/js/global_config.js delete mode 100644 src/ui/static/js/jobs.js delete mode 100644 src/ui/static/js/logs.js delete mode 100644 src/ui/static/js/lottie-web.min.js delete mode 100644 src/ui/static/js/plugins.js delete mode 100644 src/ui/static/js/plugins/utils.js delete mode 100644 src/ui/static/js/reports.js delete mode 100644 src/ui/static/js/services.js delete mode 100644 src/ui/static/js/totp.js delete mode 100644 src/ui/static/js/utils/dashboard.js delete mode 100644 src/ui/static/js/utils/file.manager.js delete mode 100644 src/ui/static/js/utils/flatpickr.js delete mode 100644 src/ui/static/js/utils/form.js delete mode 100644 src/ui/static/js/utils/purify/purify.min.js delete mode 100644 src/ui/static/js/utils/purify/src/attrs.js delete mode 100644 src/ui/static/js/utils/purify/src/license_header delete mode 100644 src/ui/static/js/utils/purify/src/purify.js delete mode 100644 src/ui/static/js/utils/purify/src/regexp.js delete mode 100644 src/ui/static/js/utils/purify/src/tags.js delete mode 100644 src/ui/static/js/utils/purify/src/utils.js delete mode 100644 src/ui/static/js/utils/settings.js delete mode 100644 src/ui/static/json/particles.json delete mode 100644 src/ui/static/robots.txt delete mode 100644 src/ui/static/style/dashboard.css delete mode 100644 src/ui/static/style/datepicker-foundation.css delete mode 100644 src/ui/static/style/flatpickr.css delete mode 100644 src/ui/static/style/flatpickr.dark.css delete mode 100644 src/ui/static/style/login.css delete mode 100644 src/ui/static/webfonts/OpenSans.ttf diff --git a/src/client/dashboard/README.md b/src/client/dashboard/README.md deleted file mode 100644 index e62e093e7..000000000 --- a/src/client/dashboard/README.md +++ /dev/null @@ -1,7 +0,0 @@ -# Vue 3 + Vite - -This template should help get you started developing with Vue 3 in Vite. The template uses Vue 3 ` + diff --git a/src/client/setup/src/setup.js b/src/ui/client/setup/setup.js similarity index 100% rename from src/client/setup/src/setup.js rename to src/ui/client/setup/setup.js diff --git a/src/client/dashboard/tailwind.config.js b/src/ui/client/tailwind.config.js similarity index 100% rename from src/client/dashboard/tailwind.config.js rename to src/ui/client/tailwind.config.js diff --git a/src/client/tests/bans.json b/src/ui/client/tests/bans.json similarity index 100% rename from src/client/tests/bans.json rename to src/ui/client/tests/bans.json diff --git a/src/client/tests/bans.py b/src/ui/client/tests/bans.py similarity index 100% rename from src/client/tests/bans.py rename to src/ui/client/tests/bans.py diff --git a/src/client/tests/globalconfig.json b/src/ui/client/tests/globalconfig.json similarity index 100% rename from src/client/tests/globalconfig.json rename to src/ui/client/tests/globalconfig.json diff --git a/src/client/tests/globalconfig.py b/src/ui/client/tests/globalconfig.py similarity index 100% rename from src/client/tests/globalconfig.py rename to src/ui/client/tests/globalconfig.py diff --git a/src/client/tests/globalconfig64.txt b/src/ui/client/tests/globalconfig64.txt similarity index 100% rename from src/client/tests/globalconfig64.txt rename to src/ui/client/tests/globalconfig64.txt diff --git a/src/client/tests/home.json b/src/ui/client/tests/home.json similarity index 100% rename from src/client/tests/home.json rename to src/ui/client/tests/home.json diff --git a/src/client/tests/home.py b/src/ui/client/tests/home.py similarity index 100% rename from src/client/tests/home.py rename to src/ui/client/tests/home.py diff --git a/src/client/tests/home.txt b/src/ui/client/tests/home.txt similarity index 100% rename from src/client/tests/home.txt rename to src/ui/client/tests/home.txt diff --git a/src/client/tests/instances.json b/src/ui/client/tests/instances.json similarity index 100% rename from src/client/tests/instances.json rename to src/ui/client/tests/instances.json diff --git a/src/client/tests/instances.py b/src/ui/client/tests/instances.py similarity index 100% rename from src/client/tests/instances.py rename to src/ui/client/tests/instances.py diff --git a/src/client/tests/instances.txt b/src/ui/client/tests/instances.txt similarity index 100% rename from src/client/tests/instances.txt rename to src/ui/client/tests/instances.txt diff --git a/src/client/tests/jobs.json b/src/ui/client/tests/jobs.json similarity index 100% rename from src/client/tests/jobs.json rename to src/ui/client/tests/jobs.json diff --git a/src/client/tests/jobs.py b/src/ui/client/tests/jobs.py similarity index 100% rename from src/client/tests/jobs.py rename to src/ui/client/tests/jobs.py diff --git a/src/client/tests/plugins.json b/src/ui/client/tests/plugins.json similarity index 100% rename from src/client/tests/plugins.json rename to src/ui/client/tests/plugins.json diff --git a/src/client/tests/plugins.py b/src/ui/client/tests/plugins.py similarity index 100% rename from src/client/tests/plugins.py rename to src/ui/client/tests/plugins.py diff --git a/src/client/tests/plugins_page.json b/src/ui/client/tests/plugins_page.json similarity index 100% rename from src/client/tests/plugins_page.json rename to src/ui/client/tests/plugins_page.json diff --git a/src/client/tests/reports.json b/src/ui/client/tests/reports.json similarity index 100% rename from src/client/tests/reports.json rename to src/ui/client/tests/reports.json diff --git a/src/client/tests/reports.py b/src/ui/client/tests/reports.py similarity index 100% rename from src/client/tests/reports.py rename to src/ui/client/tests/reports.py diff --git a/src/ui/client/vite.config.dashboard.js b/src/ui/client/vite.config.dashboard.js new file mode 100644 index 000000000..18da8e7cc --- /dev/null +++ b/src/ui/client/vite.config.dashboard.js @@ -0,0 +1,43 @@ +import { resolve } from "path"; +import { defineConfig } from "vite"; +import vue from "@vitejs/plugin-vue"; +import VueI18nPlugin from "@intlify/unplugin-vue-i18n/vite"; + +// https://vitejs.dev/config/ +export default defineConfig({ + plugins: [ + vue(), + VueI18nPlugin({ + include: resolve(__dirname, "./dashboard/lang/**"), + jitCompilation: true, + }), + ], + server: { + host: true, + port: 3000, + }, + resolve: { + alias: { + "@": resolve(__dirname, "./dashboard"), + "@store": resolve(__dirname, "./dashboard/store"), + "@utils": resolve(__dirname, "./dashboard/utils"), + "@layouts": resolve(__dirname, "./dashboard/layouts"), + "@pages": resolve(__dirname, "./dashboard/pages"), + "@components": resolve(__dirname, "./dashboard/components"), + "@assets": resolve(__dirname, "./dashboard/assets"), + "@lang": resolve(__dirname, "./dashboard/lang"), + "@public": resolve(__dirname, "./public"), + }, + }, + build: { + chunkSizeWarningLimit: 1024, + outDir: "../dashboard", + emptyOutDir: "../dashboard", + rollupOptions: { + input: { + home: resolve(__dirname, "./dashboard/pages/home/index.html"), + instances: resolve(__dirname, "./dashboard/pages/instances/index.html"), + }, + }, + }, +}); diff --git a/src/ui/client/vite.config.setup.js b/src/ui/client/vite.config.setup.js new file mode 100644 index 000000000..8ec0e4b0f --- /dev/null +++ b/src/ui/client/vite.config.setup.js @@ -0,0 +1,36 @@ +import { defineConfig } from "vite"; +import vue from "@vitejs/plugin-vue"; +import { viteSingleFile } from "vite-plugin-singlefile"; +import VueI18nPlugin from "@intlify/unplugin-vue-i18n/vite"; +import { resolve } from "path"; + +export default defineConfig({ + plugins: [ + vue(), + viteSingleFile(), + VueI18nPlugin({ + include: resolve(__dirname, "./src/lang/**"), + jitCompilation: true, + }), + ], + resolve: { + alias: { + "@store": resolve(__dirname, "./dashboard/store"), + "@utils": resolve(__dirname, "./dashboard/utils"), + "@layouts": resolve(__dirname, "./dashboard/layouts"), + "@components": resolve(__dirname, "./dashboard/components"), + "@assets": resolve(__dirname, "./dashboard/assets"), + "@lang": resolve(__dirname, "./dashboard/lang"), + "@public": resolve(__dirname, "./public"), + }, + }, + build: { + outDir: "./setup", + emptyOutDir: "./setup", + rollupOptions: { + input: { + setup: resolve(__dirname, "./setup/index.html"), + }, + }, + }, +}); diff --git a/src/ui/static/images/BUNKERWEB-print-hd-blanc.png b/src/ui/static/images/BUNKERWEB-print-hd-blanc.png deleted file mode 100644 index 7fca33ef3d28e141c9979b1664a5a880f2ce4fb7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 49316 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 VPR#c`ZNV>aR1`Gi3vZhE{~rzoN@xH8 diff --git a/src/ui/static/images/BUNKERWEB-print-hd.png b/src/ui/static/images/BUNKERWEB-print-hd.png deleted file mode 100644 index 18d95f3d714f2a04829b35335576781368fa0749..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54105 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∨pA{t)@x1-Fvchji`8x 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 aKPM9Dk?Gv>^206gPgGb+s7OHD^Zx?9Z?6>q diff --git a/src/ui/static/images/favicon-white.ico b/src/ui/static/images/favicon-white.ico deleted file mode 100644 index 0886a25f91f89c94d0063fd4a7f9c093ce9e444c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 39250 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 Sc`?3zN#|19ZTEZE!p?uTs51Wm diff --git a/src/ui/static/images/logo-bw.png b/src/ui/static/images/logo-bw.png deleted file mode 100644 index 01bbbe2d50a848b56d65e8d34bb796ce0a527902..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9677 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 P00000NkvXXu0mjfhUu%e diff --git a/src/ui/static/images/logo-menu-2.png b/src/ui/static/images/logo-menu-2.png deleted file mode 100644 index 7fca33ef3d28e141c9979b1664a5a880f2ce4fb7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 49316 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 VPR#c`ZNV>aR1`Gi3vZhE{~rzoN@xH8 diff --git a/src/ui/static/images/logo-menu.png b/src/ui/static/images/logo-menu.png deleted file mode 100644 index 18d95f3d714f2a04829b35335576781368fa0749..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54105 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∨pA{t)@x1-Fvchji`8x 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 aKPM9Dk?Gv>^206gPgGb+s7OHD^Zx?9Z?6>q diff --git a/src/ui/static/images/no_internet.png b/src/ui/static/images/no_internet.png deleted file mode 100644 index 77cb9b38a9b0d3cf346dac820bf6972e2e42d82d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1186 zcmeAS@N?(olHy`uVBq!ia0y~yU{nBM4kiW$hS?7-uLCKzByV>YhW{YAVDIwD3=Ayc zo-U3d6?5L+4fMP1AmR`hliL1ggUh#!C12LB(n?%<&^)>S{7nYu2d_@n6>hro{=4~t zkJ(=s6VjNPCmc{H`TgscR4v<#X`F0|jgB4(0zwikEVO6lE#^P)|L2b%616Qyomo%*cu z{|DZ3=S?<`Tfx0gYPT_VJ9mnomDcgBKbL&kKAp4xd!gZP@|z)j8B#beTzuz=!c*oO zZiX<+)OWCLZhp20yCWeH+{yiJ!QRE+8?dV}dAq3c@XGQF+fF`D!s@<-Pyha{{URxJ zUN@!uzT^9UJMXjq+*^ShS9$m5*0TOP1y3ytg=^eDf3z)ceY|`5`U5PWoB&B!c|`{M zkLOFh-8a!3=KkOD&3ivN-VL|<$NBTzf&FulV))zslMmAv{v^U&wddydKxytT;c;bs zR>$n^uTTAk95*G_UuWOvFM9lt>(%woSN^w4!@PR|9IFSm!1!?2prj2Nif#cG3m4NH fGG`(((+hL2i4A9Wr@C$d7CH=`u6{1-oD!M<;&!0; diff --git a/src/ui/static/js/account.js b/src/ui/static/js/account.js deleted file mode 100644 index bfed29314..000000000 --- a/src/ui/static/js/account.js +++ /dev/null @@ -1,196 +0,0 @@ -import { Tabs } from "./utils/settings.js"; - -class TabPopover { - constructor() { - this.init(); - } - - init() { - window.addEventListener("pointerover", (e) => { - //POPOVER LOGIC - try { - if ( - e.target.closest("button").hasAttribute(`data-popover-btn`) || - e.target.closest("svg").hasAttribute(`data-popover-btn`) - ) { - this.showPopover(e.target); - } - } catch (err) {} - }); - - window.addEventListener("pointerout", (e) => { - //POPOVER LOGIC - try { - if ( - e.target.closest("button").hasAttribute(`data-popover-btn`) || - e.target.closest("svg").hasAttribute(`data-popover-btn`) - ) { - this.hidePopover(e.target); - } - } catch (err) {} - }); - } - - showPopover(el) { - const btn = el.closest("button").hasAttribute("data-popover-btn") - ? el.closest("button") - : el.closest("svg"); - const popoverName = btn.getAttribute("data-popover-btn"); - //toggle curr popover - const popover = btn.parentElement.querySelector( - `[data-popover-content=${popoverName}]`, - ); - popover.classList.add("transition-all", "delay-200", "opacity-0"); - popover.classList.remove("hidden"); - setTimeout(() => { - popover.classList.remove("opacity-0"); - }, 10); - } - - hidePopover(el) { - const btn = el.closest("button").hasAttribute("data-popover-btn") - ? el.closest("button") - : el.closest("svg"); - const popoverName = btn.getAttribute("data-popover-btn"); - //toggle curr popover - const popover = btn.parentElement.querySelector( - `[data-popover-content=${popoverName}]`, - ); - popover.classList.add("hidden"); - popover.classList.remove("transition-all", "delay-200"); - } -} - -class SubmitAccount { - constructor() { - this.pwEl = document.querySelector("#admin_password"); - this.pwCheckEl = document.querySelector("#admin_password_check"); - this.pwAlertEl = document.querySelector("[data-pw-alert]"); - this.formEl = document.querySelector("#password-form"); - this.init(); - } - - init() { - // Check password to send - this.checkSamePW(); - this.pwCheckEl.addEventListener("input", (e) => { - this.checkSamePW(); - }); - - this.pwEl.addEventListener("input", (e) => { - this.checkSamePW(); - }); - - // Submit - this.formEl.addEventListener("submit", (e) => { - // Case not same PW - if (this.pwEl.value !== this.pwCheckEl.value) return e.preventDefault(); - - this.formEl.submit(); - }); - } - - checkSamePW() { - if (!this.pwEl.value || !this.pwCheckEl.value) return this.hidePWAlert(); - - if (this.pwEl.value !== this.pwCheckEl.value) return this.showPWAlert(); - - return this.hidePWAlert(); - } - - hidePWAlert() { - this.pwCheckEl.classList.remove( - "focus:!border-red-500", - "focus:valid:!border-red-500", - "focus:!ring-red-500", - "focus:valid:!ring-red-500", - "active:!border-red-500", - "active:valid:!border-red-500", - "valid:!border-red-500", - ); - this.pwAlertEl.classList.add("opacity-0"); - this.pwAlertEl.setAttribute("aria-hidden", "true"); - } - - showPWAlert() { - this.pwCheckEl.classList.add( - "focus:!border-red-500", - "focus:valid:!border-red-500", - "focus:!ring-red-500", - "focus:valid:!ring-red-500", - "active:!border-red-500", - "active:valid:!border-red-500", - "valid:!border-red-500", - ); - this.pwAlertEl.classList.remove("opacity-0"); - this.pwAlertEl.setAttribute("aria-hidden", "false"); - } -} - -class PwBtn { - constructor() { - this.init(); - } - - init() { - window.addEventListener("click", (e) => { - if (!e.target.getAttribute("data-setting-password")) return; - const passwordContainer = e.target.closest("[data-input-group]"); - const inpEl = passwordContainer.querySelector("input"); - const invBtn = passwordContainer.querySelector( - '[data-setting-password="invisible"]', - ); - const visBtn = passwordContainer.querySelector( - '[data-setting-password="visible"]', - ); - inpEl.setAttribute( - "type", - inpEl.getAttribute("type") === "password" ? "text" : "password", - ); - - if (inpEl.getAttribute("type") === "password") { - invBtn.classList.add("hidden"); - visBtn.classList.add("flex"); - visBtn.classList.remove("hidden"); - } else { - visBtn.classList.add("hidden"); - invBtn.classList.add("flex"); - invBtn.classList.remove("hidden"); - } - }); - } -} - -// Check flash message -// Show previous failed form tab -class SwitchTabForm { - constructor() { - this.init(); - } - - init() { - window.addEventListener("load", () => { - // Check flash - const flashMsg = document.querySelector("[data-flash-message]"); - if (!flashMsg) return; - const content = flashMsg.querySelector("p").textContent.toLowerCase(); - - const names = ["global", "password", "username", "totp"]; - - names.forEach((name) => { - this.showRelateTab(name, content); - }); - }); - } - - showRelateTab(name, content) { - if (!content.includes(`(${name})`)) return; - document.querySelector(`button[data-tab-handler="${name}"]`).click(); - } -} - -const setPWBtn = new PwBtn(); -const setSubmit = new SubmitAccount(); -const setTabs = new Tabs(); -const setTabPopover = new TabPopover(); -const setSwitchTabForm = new SwitchTabForm(); diff --git a/src/ui/static/js/bans.js b/src/ui/static/js/bans.js deleted file mode 100644 index 306ad265a..000000000 --- a/src/ui/static/js/bans.js +++ /dev/null @@ -1,357 +0,0 @@ -import { Filter, Dropdown } from "./utils/dashboard.js"; - -class Unban { - constructor(prefix = "bans") { - this.prefix = prefix; - this.container = document.querySelector("main"); - this.listEl = document.querySelector(`[data-${this.prefix}-list]`); - this.unbanForm = document.querySelector("#unban-items"); - this.unbanBtn = document.querySelector(`button[data-unban-btn]`); - this.unbanInp = document.querySelector(`input[data-unban-inp]`); - this.init(); - } - - init() { - // Look if an item is select to enable unban button - this.container.addEventListener("click", (e) => { - try { - if ( - e.target.closest("div").hasAttribute(`data-${this.prefix}-ban-select`) - ) { - // timeout to wait for select value to change - setTimeout(() => { - // Check if at least one item is selected - const selected = this.listEl.querySelectorAll( - `input[data-checked="true"]`, - ); - - // Case true, enable unban button - if (selected.length > 0) { - this.unbanBtn.removeAttribute("disabled"); - } - - // Case false, disable unban button - if (selected.length === 0) { - this.unbanBtn.setAttribute("disabled", ""); - } - }, 100); - } - } catch (err) {} - }); - // unban button - this.unbanForm.addEventListener("submit", (e) => { - e.preventDefault(); - if (this.unbanBtn.hasAttribute("disabled")) return; - // Get all selected items - const selected = this.listEl.querySelectorAll( - `input[data-checked="true"]`, - ); - const getDatas = []; - selected.forEach((el) => { - const data = el - .closest(`li[data-${this.prefix}-list-item]`) - .getAttribute(`data-${this.prefix}-list-item`); - getDatas.push(data); - }); - this.unbanInp.value = JSON.stringify(getDatas); - this.unbanInp.setAttribute("value", JSON.stringify(getDatas)); - this.unbanForm.submit(); - }); - } -} - -class AddBanModal { - constructor() { - //modal elements - this.modal = document.querySelector("[data-bans-modal]"); - this.openBtn = document.querySelector("button[data-add-ban]"); - this.addBanInp = document.querySelector("input[data-ban-add-inp]"); - this.addFieldBtn = document.querySelector("button[data-ban-add-new]"); - this.listEl = document.querySelector(`[data-bans-add-ban-list]`); - this.submitBtn = document.querySelector(`button[data-bans-modal-submit]`); - this.removeAllFieldBtn = document.querySelector( - "button[data-add-ban-delete-all-item]", - ); - this.formEl = document.querySelector("form[data-ban-add-form]"); - this.itemCount = 0; - this.setDatepicker("0"); // for default field - this.init(); - } - - init() { - // delete item - this.modal.addEventListener("click", (e) => { - try { - if (e.target.hasAttribute("data-add-ban-delete-item")) { - e.target.closest("li").remove(); - this.updateActionBtns(); - } - } catch (e) {} - - try { - if (e.target.hasAttribute("data-add-ban-delete-all-item")) { - this.listEl.querySelectorAll("li").forEach((item) => { - item.remove(); - }); - } - } catch (e) {} - - try { - if (e.target.closest("button").hasAttribute("data-bans-modal-close")) { - this.closeModal(); - } - } catch (e) {} - - this.updateActionBtns(); - }); - - //open modal - this.openBtn.addEventListener("click", (e) => { - this.openModal(); - }); - - // add field - this.addFieldBtn.addEventListener("click", (e) => { - this.addItem(); - this.updateActionBtns(); - }); - - // Check that all inputs have a value to submit - this.listEl.addEventListener("input", (e) => { - this.checkInpValidity(); - }); - - this.listEl.addEventListener("change", (e) => { - this.checkInpValidity(); - }); - - this.formEl.addEventListener("submit", (e) => { - e.preventDefault(); - // prepare data - const data = []; - this.listEl.querySelectorAll("li").forEach((item) => { - const ip = item.querySelector("input[data-bans-add-ip]").value; - const banEnd = item - .querySelector("input[data-bans-add-ban-end]") - .getAttribute("data-timestamp"); - data.push({ - ip: ip, - ban_end: +banEnd, - ban_start: +Date.now().toString().substring(0, 10), - reason: "ui", - }); - }); - this.addBanInp.setAttribute("value", JSON.stringify(data)); - this.addBanInp.value = JSON.stringify(data); - this.formEl.submit(); - }); - } - - openModal() { - this.modal.classList.remove("hidden"); - this.modal.classList.add("flex"); - } - - closeModal() { - this.modal.classList.add("hidden"); - this.modal.classList.remove("flex"); - } - - checkInpValidity() { - const inps = this.listEl.querySelectorAll("input"); - let isAllValid = true; - for (let i = 0; i < inps.length; i++) { - const inpEl = inps[i]; - if (!inpEl.checkValidity() || !inpEl.value) { - isAllValid = false; - break; - } - } - - isAllValid - ? this.submitBtn.removeAttribute("disabled") - : this.submitBtn.setAttribute("disabled", ""); - } - - // Check if items and update button disabled/enabled states - updateActionBtns() { - const items = this.listEl.querySelectorAll("li"); - const itemsCount = items.length; - - itemsCount - ? this.removeAllFieldBtn.removeAttribute("disabled") - : this.removeAllFieldBtn.setAttribute("disabled", ""); - - itemsCount ? null : this.submitBtn.setAttribute("disabled", ""); - } - - addItem() { - // add item - this.itemCount++; - let item = `
  • -
    - - -
    -
    - -
    - - - - -
    -
    -
    - -
    -
  • `; - let cleanHTML = DOMPurify.sanitize(item); - this.listEl.insertAdjacentHTML("beforeend", cleanHTML); - this.setDatepicker(this.itemCount); - } - - setDatepicker(id) { - const defaultDate = +(Date.now() + 3600000 * 24); - const inpEl = document.querySelector(`input#ban-end-${id}`); - inpEl.setAttribute( - "data-timestamp", - defaultDate.toString().substring(0, 10), - ); - - // instantiate datepicker - const dateOptions = { - locale: "en", - dateFormat: "m/d/Y H:i:S", - defaultDate: defaultDate, - enableTime: true, - enableSeconds: true, - time_24hr: true, - minuteIncrement: 1, - onChange(selectedDates, dateStr, instance) { - // Get date to timestamp - const pickStamp = +Date.parse(new Date(dateStr).toString()); - const nowStamp = +Date.now(); - - // Case pick is before current date - if (pickStamp < nowStamp) { - inpEl.setAttribute( - "data-timestamp", - defaultDate.toString().substring(0, 10), - ); - return instance.setDate(defaultDate); - } - - // Case right value - // Set timestamp in seconds in the related input - const convertToS = +pickStamp.toString().substring(0, 10); - - inpEl.setAttribute("data-timestamp", convertToS); - }, - }; - - flatpickr(`input#ban-end-${id}`, dateOptions); - } -} - -const setDropdown = new Dropdown("bans"); -const setUnban = new Unban(); -const setModal = new AddBanModal(); - -const filterContainer = document.querySelector("[data-bans-list-container]"); -if (filterContainer) { - const noMatchEl = document.querySelector("[data-bans-nomatch]"); - const filterEls = document.querySelectorAll(`[data-bans-item]`); - const keywordFilter = { - handler: document.querySelector("input#keyword"), - handlerType: "input", - value: document.querySelector("input#keyword").value, - filterEls: filterEls, - filterAtt: "data-bans-keyword", - filterType: "keyword", - }; - const reasonFilter = { - handler: document.querySelector( - "[data-bans-setting-select-dropdown='reason']", - ), - handlerType: "select", - value: document - .querySelector("[data-bans-setting-select-text='reason']") - .textContent.trim() - .toLowerCase(), - filterEls: filterEls, - filterAtt: "data-bans-reason", - filterType: "match", - }; - - const termFilter = { - handler: document.querySelector( - "[data-bans-setting-select-dropdown='term']", - ), - handlerType: "select", - value: document - .querySelector("[data-bans-setting-select-text='term']") - .textContent.trim() - .toLowerCase(), - filterEls: filterEls, - filterAtt: "data-bans-term", - filterType: "match", - }; - new Filter( - "bans", - [keywordFilter, reasonFilter, termFilter], - filterContainer, - noMatchEl, - ); -} diff --git a/src/ui/static/js/cache.js b/src/ui/static/js/cache.js deleted file mode 100644 index ca925b8e5..000000000 --- a/src/ui/static/js/cache.js +++ /dev/null @@ -1,84 +0,0 @@ -import { - FolderNav, - FolderEditor, - FolderModal, - FolderDropdown, -} from "./utils/file.manager.js"; - -class Download { - constructor(prefix = "cache") { - this.prefix = prefix; - this.listContainer = document.querySelector(`[data-cache-container]`); - this.init(); - } - - init() { - this.listContainer.addEventListener("click", (e) => { - try { - if ( - e.target - .closest("button") - .hasAttribute(`data-${this.prefix}-download`) - ) { - const dataValue = e.target - .closest('div:has(span[data-cache-content=""])') - .firstElementChild.getAttribute("data-value"); - const btnEl = e.target.closest("button"); - const jobName = btnEl.getAttribute(`data-${this.prefix}-job`); - const fileName = btnEl.getAttribute(`data-${this.prefix}-download`); - const pluginId = document - .querySelector('[data-level="1"]') - .getAttribute("data-name"); - var serviceId = null; - if ( - document.querySelector( - '[data-level="2"][data-cache-breadcrumb-item=""]:not(.hidden)', - ) - ) { - serviceId = document - .querySelector('[data-level="2"]') - .getAttribute("data-name"); - } - - if (dataValue !== "Download file to view content") { - this.download(fileName, dataValue); - } else { - this.sendFileToDL(pluginId, jobName, fileName, serviceId); - } - } - } catch (err) {} - }); - } - - download(filename, text) { - var element = document.createElement("a"); - element.setAttribute( - "href", - "data:text/plain;charset=utf-8," + encodeURIComponent(text), - ); - element.setAttribute("download", filename); - - element.style.display = "none"; - document.body.appendChild(element); - - element.click(); - - document.body.removeChild(element); - } - - async sendFileToDL(pluginId, jobName, fileName, serviceId) { - window.open( - `${location.href.replace( - "cache", - "jobs", - )}/download?plugin_id=${pluginId}&job_name=${jobName}&file_name=${fileName}` + - (serviceId ? `&service_id=${serviceId}` : ""), - ); - } -} - -const setModal = new FolderModal("cache"); -const setEditor = new FolderEditor(); -const setFolderNav = new FolderNav("cache"); -const setDropdown = new FolderDropdown("cache"); -const setDownload = new Download(); diff --git a/src/ui/static/js/configs.js b/src/ui/static/js/configs.js deleted file mode 100644 index 0dc7a6a9d..000000000 --- a/src/ui/static/js/configs.js +++ /dev/null @@ -1,127 +0,0 @@ -import { - FolderNav, - FolderEditor, - FolderModal, - FolderDropdown, -} from "./utils/file.manager.js"; - -import { Dropdown } from "./utils/dashboard.js"; - -class FilterManager { - constructor(prefix = "configs") { - this.prefix = prefix; - this.container = document.querySelector(`[data-${this.prefix}-filter]`); - this.confPathOnlyValue = "false"; - this.globalConfOnlyValue = "false"; - - this.init(); - } - - init() { - window.addEventListener("DOMContentLoaded", () => { - this.setPathWithConfFilter(); - this.initHandler(); - }); - } - - setPathWithConfFilter() { - // get all .conf by path - const confs = document.querySelectorAll("[data-path*='.conf']"); - // for each, get previous path and set attribute data-path-to-a-conf - confs.forEach((conf) => { - const separatePath = conf.getAttribute("data-path").split("/"); - separatePath.shift(); - for (let i = 0; i < separatePath.length; i++) { - // merge path to given index - const path = separatePath - .slice(0, i + 1) - .join("/") - .trim(); - // get element with - const folder = document.querySelector(`[data-path="/${path}"]`); - if (!folder) continue; - // set attribute data-path-to-a-conf - folder.setAttribute("data-path-to-a-conf", ""); - } - }); - } - - initHandler() { - this.container.addEventListener("click", (e) => { - try { - if ( - e.target - .closest("button") - .getAttribute(`data-${this.prefix}-setting-select-dropdown-btn`) === - "withconf" || - e.target - .closest("button") - .getAttribute(`data-${this.prefix}-setting-select-dropdown-btn`) === - "globalconf" - ) { - setTimeout(() => { - // return to root to avoid conflict, filter logic is on file.manager.js - document - .querySelector('[data-configs-breadcrumb-item][data-level="0"]') - .querySelector("button") - .click(); - }, 50); - } - } catch (err) {} - }); - } -} - -class ConfigsInfo { - constructor() { - this.init(); - } - - init() { - window.addEventListener("DOMContentLoaded", () => { - this.totalInfo = document.querySelector("[data-info-total-conf]"); - this.globalInfo = document.querySelector("[data-info-global-conf]"); - this.totalInfo.textContent = document - .querySelector("[data-configs-folders]") - .querySelectorAll("[data-_type='file']").length; - this.globalInfo.textContent = document - .querySelector("[data-configs-folders]") - .querySelectorAll("[data-_type='file'][data-level='2']").length; - }); - } -} - -// some configs are root only -class SetRootOnlyConf { - constructor() { - this.init(); - this.rootOnly = ["http", "default-http-server", "stream"]; - } - - init() { - window.addEventListener("DOMContentLoaded", () => { - // remove server when config if root only - const itemsToRemove = []; - for (let i = 0; i < this.rootOnly.length; i++) { - const rootName = this.rootOnly[i]; - itemsToRemove.push( - ...document.querySelectorAll( - `[data-path^="/etc/bunkerweb/configs/${rootName}"][data-_type="folder"][data-level="2"]`, - ), - ); - } - itemsToRemove.forEach((item) => { - item.remove(); - }); - }); - } -} - -const setConfigsInfo = new ConfigsInfo(); -const setModal = new FolderModal("configs"); -const setEditor = new FolderEditor(); -const setFolderNav = new FolderNav("configs"); -const setDropdown = new FolderDropdown("configs"); -const setFilterDropdown = new Dropdown("configs"); -const setFilter = new FilterManager(); -const setRootOnlyConf = new SetRootOnlyConf(); diff --git a/src/ui/static/js/editor/ace.js b/src/ui/static/js/editor/ace.js deleted file mode 100644 index 0b3ead129..000000000 --- a/src/ui/static/js/editor/ace.js +++ /dev/null @@ -1,23 +0,0 @@ -(function(){function o(n){var i=e;n&&(e[n]||(e[n]={}),i=e[n]);if(!i.define||!i.define.packaged)t.original=i.define,i.define=t,i.define.packaged=!0;if(!i.require||!i.require.packaged)r.original=i.require,i.require=r,i.require.packaged=!0}var ACE_NAMESPACE="",e=function(){return this}();!e&&typeof window!="undefined"&&(e=window);if(!ACE_NAMESPACE&&typeof requirejs!="undefined")return;var t=function(e,n,r){if(typeof e!="string"){t.original?t.original.apply(this,arguments):(console.error("dropping module because define wasn't a string."),console.trace());return}arguments.length==2&&(r=n),t.modules[e]||(t.payloads[e]=r,t.modules[e]=null)};t.modules={},t.payloads={};var n=function(e,t,n){if(typeof t=="string"){var i=s(e,t);if(i!=undefined)return n&&n(),i}else if(Object.prototype.toString.call(t)==="[object Array]"){var o=[];for(var u=0,a=t.length;un.length)t=n.length;t-=e.length;var r=n.indexOf(e,t);return r!==-1&&r===t}),String.prototype.repeat||r(String.prototype,"repeat",function(e){var t="",n=this;while(e>0){e&1&&(t+=n);if(e>>=1)n+=n}return t}),String.prototype.includes||r(String.prototype,"includes",function(e,t){return this.indexOf(e,t)!=-1}),Object.assign||(Object.assign=function(e){if(e===undefined||e===null)throw new TypeError("Cannot convert undefined or null to object");var t=Object(e);for(var n=1;n>>0,r=arguments[1],i=r>>0,s=i<0?Math.max(n+i,0):Math.min(i,n),o=arguments[2],u=o===undefined?n:o>>0,a=u<0?Math.max(n+u,0):Math.min(u,n);while(s0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n65535?2:1}}),define("ace/lib/useragent",["require","exports","module"],function(e,t,n){"use strict";t.OS={LINUX:"LINUX",MAC:"MAC",WINDOWS:"WINDOWS"},t.getOS=function(){return t.isMac?t.OS.MAC:t.isLinux?t.OS.LINUX:t.OS.WINDOWS};var r=typeof navigator=="object"?navigator:{},i=(/mac|win|linux/i.exec(r.platform)||["other"])[0].toLowerCase(),s=r.userAgent||"",o=r.appName||"";t.isWin=i=="win",t.isMac=i=="mac",t.isLinux=i=="linux",t.isIE=o=="Microsoft Internet Explorer"||o.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]),t.isOldIE=t.isIE&&t.isIE<9,t.isGecko=t.isMozilla=s.match(/ Gecko\/\d+/),t.isOpera=typeof opera=="object"&&Object.prototype.toString.call(window["opera"])=="[object Opera]",t.isWebKit=parseFloat(s.split("WebKit/")[1])||undefined,t.isChrome=parseFloat(s.split(" Chrome/")[1])||undefined,t.isSafari=parseFloat(s.split(" Safari/")[1])&&!t.isChrome||undefined,t.isEdge=parseFloat(s.split(" Edge/")[1])||undefined,t.isAIR=s.indexOf("AdobeAIR")>=0,t.isAndroid=s.indexOf("Android")>=0,t.isChromeOS=s.indexOf(" CrOS ")>=0,t.isIOS=/iPad|iPhone|iPod/.test(s)&&!window.MSStream,t.isIOS&&(t.isMac=!0),t.isMobile=t.isIOS||t.isAndroid}),define("ace/lib/dom",["require","exports","module","ace/lib/useragent"],function(e,t,n){"use strict";function u(){var e=o;o=null,e&&e.forEach(function(e){a(e[0],e[1])})}function a(e,n,r){if(typeof document=="undefined")return;if(o)if(r)u();else if(r===!1)return o.push([e,n]);if(s)return;var i=r;if(!r||!r.getRootNode)i=document;else{i=r.getRootNode();if(!i||i==r)i=document}var a=i.ownerDocument||i;if(n&&t.hasCssString(n,i))return null;n&&(e+="\n/*# sourceURL=ace/css/"+n+" */");var f=t.createElement("style");f.appendChild(a.createTextNode(e)),n&&(f.id=n),i==a&&(i=t.getDocumentHead(a)),i.insertBefore(f,i.firstChild)}var r=e("./useragent"),i="http://www.w3.org/1999/xhtml";t.buildDom=function l(e,t,n){if(typeof e=="string"&&e){var r=document.createTextNode(e);return t&&t.appendChild(r),r}if(!Array.isArray(e))return e&&e.appendChild&&t&&t.appendChild(e),e;if(typeof e[0]!="string"||!e[0]){var i=[];for(var s=0;s=1.5:!0,r.isChromeOS&&(t.HI_DPI=!1);if(typeof document!="undefined"){var f=document.createElement("div");t.HI_DPI&&f.style.transform!==undefined&&(t.HAS_CSS_TRANSFORMS=!0),!r.isEdge&&typeof f.style.animationName!="undefined"&&(t.HAS_CSS_ANIMATION=!0),f=null}t.HAS_CSS_TRANSFORMS?t.translate=function(e,t,n){e.style.transform="translate("+Math.round(t)+"px, "+Math.round(n)+"px)"}:t.translate=function(e,t,n){e.style.top=Math.round(n)+"px",e.style.left=Math.round(t)+"px"}}),define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";var r=e("./dom");t.get=function(e,t){var n=new XMLHttpRequest;n.open("GET",e,!0),n.onreadystatechange=function(){n.readyState===4&&t(n.responseText)},n.send(null)},t.loadScript=function(e,t){var n=r.getDocumentHead(),i=document.createElement("script");i.src=e,n.appendChild(i),i.onload=i.onreadystatechange=function(e,n){if(n||!i.readyState||i.readyState=="loaded"||i.readyState=="complete")i=i.onload=i.onreadystatechange=null,n||t()}},t.qualifyURL=function(e){var t=document.createElement("a");return t.href=e,t.href}}),define("ace/lib/oop",["require","exports","module"],function(e,t,n){"use strict";t.inherits=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})},t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){"use strict";var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s),n=n.slice();for(var o=0;o1&&(i=n[n.length-2]);var o=u[t+"Path"];return o==null?o=u.basePath:r=="/"&&(t=r=""),o&&o.slice(-1)!="/"&&(o+="/"),o+t+r+i+this.get("suffix")},t.setModuleUrl=function(e,t){return u.$moduleUrls[e]=t};var a=function(t,n){if(t==="ace/theme/textmate"||t==="./theme/textmate")return n(null,e("./theme/textmate"));if(f)return f(t,n);console.error("loader is not configured")},f;t.setLoader=function(e){f=e},t.dynamicModules=Object.create(null),t.$loading={},t.$loaded={},t.loadModule=function(e,n){var r;if(Array.isArray(e))var s=e[0],o=e[1];else if(typeof e=="string")var o=e;var u=function(e){if(e&&!t.$loading[o])return n&&n(e);t.$loading[o]||(t.$loading[o]=[]),t.$loading[o].push(n);if(t.$loading[o].length>1)return;var r=function(){a(o,function(e,n){n&&(t.$loaded[o]=n),t._emit("load.module",{name:o,module:n});var r=t.$loading[o];t.$loading[o]=null,r.forEach(function(e){e&&e(n)})})};if(!t.get("packaged"))return r();i.loadScript(t.moduleUrl(o,s),r),l()};if(t.dynamicModules[o])t.dynamicModules[o]().then(function(e){e.default?u(e.default):u(e)});else{try{r=this.$require(o)}catch(f){}u(r||t.$loaded[o])}},t.$require=function(e){if(typeof n["require"]=="function"){var t="require";return n[t](e)}},t.setModuleLoader=function(e,n){t.dynamicModules[e]=n};var l=function(){!u.basePath&&!u.workerPath&&!u.modePath&&!u.themePath&&!Object.keys(u.$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"),l=function(){})};t.version="1.32.7"}),define("ace/loader_build",["require","exports","module","ace/lib/fixoldbrowsers","ace/config"],function(e,t,n){"use strict";function s(t){if(!i||!i.document)return;r.set("packaged",t||e.packaged||n.packaged||i.define&&define.packaged);var s={},u="",a=document.currentScript||document._currentScript,f=a&&a.ownerDocument||document;a&&a.src&&(u=a.src.split(/[?#]/)[0].split("/").slice(0,-1).join("/")||"");var l=f.getElementsByTagName("script");for(var c=0;c ["+this.end.row+"/"+this.end.column+"]"},e.prototype.contains=function(e,t){return this.compare(e,t)==0},e.prototype.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},e.prototype.comparePoint=function(e){return this.compare(e.row,e.column)},e.prototype.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},e.prototype.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},e.prototype.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},e.prototype.isStart=function(e,t){return this.start.row==e&&this.start.column==t},e.prototype.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},e.prototype.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},e.prototype.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},e.prototype.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},e.prototype.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},e.prototype.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?tthis.end.column?1:0:ethis.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},e.prototype.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},e.prototype.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},e.prototype.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},e.prototype.clipRows=function(t,n){if(this.end.row>n)var r={row:n+1,column:0};else if(this.end.rown)var i={row:n+1,column:0};else if(this.start.row1?(u++,u>4&&(u=1)):u=1;if(i.isIE){var o=Math.abs(e.clientX-a)>5||Math.abs(e.clientY-f)>5;if(!l||o)u=1;l&&clearTimeout(l),l=setTimeout(function(){l=null},n[u-1]||600),u==1&&(a=e.clientX,f=e.clientY)}e._clicks=u,r[s]("mousedown",e);if(u>4)u=0;else if(u>1)return r[s](h[u],e)}var u=0,a,f,l,h={2:"dblclick",3:"tripleclick",4:"quadclick"};Array.isArray(e)||(e=[e]),e.forEach(function(e){c(e,"mousedown",p,o)})},t.getModifierString=function(e){return r.KEY_MODS[p(e)]},t.addCommandKeyListener=function(e,n,r){var i=null;c(e,"keydown",function(e){s[e.keyCode]=(s[e.keyCode]||0)+1;var t=d(n,e,e.keyCode);return i=e.defaultPrevented,t},r),c(e,"keypress",function(e){i&&(e.ctrlKey||e.altKey||e.shiftKey||e.metaKey)&&(t.stopEvent(e),i=null)},r),c(e,"keyup",function(e){s[e.keyCode]=null},r),s||(v(),c(window,"focus",v))};if(typeof window=="object"&&window.postMessage&&!i.isOldIE){var m=1;t.nextTick=function(e,n){n=n||window;var r="zero-timeout-message-"+m++,i=function(s){s.data==r&&(t.stopPropagation(s),h(n,"message",i),e())};c(n,"message",i),n.postMessage(r,"*")}}t.$idleBlocked=!1,t.onIdle=function(e,n){return setTimeout(function r(){t.$idleBlocked?setTimeout(r,100):e()},n)},t.$idleBlockId=null,t.blockIdle=function(e){t.$idleBlockId&&clearTimeout(t.$idleBlockId),t.$idleBlocked=!0,t.$idleBlockId=setTimeout(function(){t.$idleBlocked=!1},e||100)},t.nextFrame=typeof window=="object"&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame),t.nextFrame?t.nextFrame=t.nextFrame.bind(window):t.nextFrame=function(e){setTimeout(e,17)}}),define("ace/clipboard",["require","exports","module"],function(e,t,n){"use strict";var r;n.exports={lineMode:!1,pasteCancelled:function(){return r&&r>Date.now()-50?!0:r=!1},cancel:function(){r=Date.now()}}}),define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/config","ace/lib/useragent","ace/lib/dom","ace/lib/lang","ace/clipboard","ace/lib/keys"],function(e,t,n){"use strict";var r=e("../lib/event"),i=e("../config").nls,s=e("../lib/useragent"),o=e("../lib/dom"),u=e("../lib/lang"),a=e("../clipboard"),f=s.isChrome<18,l=s.isIE,c=s.isChrome>63,h=400,p=e("../lib/keys"),d=p.KEY_MODS,v=s.isIOS,m=v?/\s/:/\n/,g=s.isMobile,y;y=function(e,t){function Q(){T=!0,n.blur(),n.focus(),T=!1}function Y(e){e.keyCode==27&&n.value.lengthk&&N[s]=="\n")o=p.end;else if(rk&&N.slice(0,s).split("\n").length>2)o=p.down;else if(s>k&&N[s-1]==" ")o=p.right,u=d.option;else if(s>k||s==k&&k!=C&&r==s)o=p.right;r!==s&&(u|=d.shift);if(o){var a=t.onCommandKey({},u,o);if(!a&&t.commands){o=p.keyCodeToString(o);var f=t.commands.findKeyCommand(u,o);f&&t.execCommand(f)}C=r,k=s,H("")}};document.addEventListener("selectionchange",s),t.on("destroy",function(){document.removeEventListener("selectionchange",s)})}var n=o.createElement("textarea");n.className="ace_text-input",n.setAttribute("wrap","off"),n.setAttribute("autocorrect","off"),n.setAttribute("autocapitalize","off"),n.setAttribute("spellcheck","false"),n.style.opacity="0",e.insertBefore(n,e.firstChild);var y=!1,b=!1,w=!1,E=!1,S="";g||(n.style.fontSize="1px");var x=!1,T=!1,N="",C=0,k=0,L=0,A=Number.MAX_SAFE_INTEGER,O=Number.MIN_SAFE_INTEGER,M=0;try{var _=document.activeElement===n}catch(D){}this.setNumberOfExtraLines=function(e){A=Number.MAX_SAFE_INTEGER,O=Number.MIN_SAFE_INTEGER;if(e<0){M=0;return}M=e},this.setAriaOptions=function(e){e.activeDescendant?(n.setAttribute("aria-haspopup","true"),n.setAttribute("aria-autocomplete",e.inline?"both":"list"),n.setAttribute("aria-activedescendant",e.activeDescendant)):(n.setAttribute("aria-haspopup","false"),n.setAttribute("aria-autocomplete","both"),n.removeAttribute("aria-activedescendant")),e.role&&n.setAttribute("role",e.role);if(e.setLabel){n.setAttribute("aria-roledescription",i("editor"));if(t.session){var r=t.session.selection.cursor.row;n.setAttribute("aria-label",i("Cursor at row $0",[r+1]))}}},this.setAriaOptions({role:"textbox"}),r.addListener(n,"blur",function(e){if(T)return;t.onBlur(e),_=!1},t),r.addListener(n,"focus",function(e){if(T)return;_=!0;if(s.isEdge)try{if(!document.hasFocus())return}catch(e){}t.onFocus(e),s.isEdge?setTimeout(H):H()},t),this.$focusScroll=!1,this.focus=function(){this.setAriaOptions({setLabel:t.renderer.enableKeyboardAccessibility});if(S||c||this.$focusScroll=="browser")return n.focus({preventScroll:!0});var e=n.style.top;n.style.position="fixed",n.style.top="0px";try{var r=n.getBoundingClientRect().top!=0}catch(i){return}var s=[];if(r){var o=n.parentElement;while(o&&o.nodeType==1)s.push(o),o.setAttribute("ace_nocontext","true"),!o.parentElement&&o.getRootNode?o=o.getRootNode().host:o=o.parentElement}n.focus({preventScroll:!0}),r&&s.forEach(function(e){e.removeAttribute("ace_nocontext")}),setTimeout(function(){n.style.position="",n.style.top=="0px"&&(n.style.top=e)},0)},this.blur=function(){n.blur()},this.isFocused=function(){return _},t.on("beforeEndOperation",function(){var e=t.curOp,r=e&&e.command&&e.command.name;if(r=="insertstring")return;var i=r&&(e.docChanged||e.selectionChanged);w&&i&&(N=n.value="",K()),H()});var P=function(e,n){var r=n;for(var i=1;i<=e-A&&i<2*M+1;i++)r+=t.session.getLine(e-i).length+1;return r},H=v?function(e){if(!_||y&&!e||E)return;e||(e="");var r="\n ab"+e+"cde fg\n";r!=n.value&&(n.value=N=r);var i=4,s=4+(e.length||(t.selection.isEmpty()?0:1));(C!=i||k!=s)&&n.setSelectionRange(i,s),C=i,k=s}:function(){if(w||E)return;if(!_&&!I)return;w=!0;var e=0,r=0,i="";if(t.session){var s=t.selection,o=s.getRange(),u=s.cursor.row;if(u===O+1)A=O+1,O=A+2*M;else if(u===A-1)O=A-1,A=O-2*M;else if(uO+1)A=u>M?u-M:0,O=u>M?u+M:2*M;var a=[];for(var f=A;f<=O;f++)a.push(t.session.getLine(f));i=a.join("\n"),e=P(o.start.row,o.start.column),r=P(o.end.row,o.end.column);if(o.start.rowO){var c=t.session.getLine(O+1);r=o.end.row>O+1?c.length:o.end.column,r+=i.length+1,i=i+"\n"+c}else g&&u>0&&(i="\n"+i,r+=1,e+=1);i.length>h&&(e=N.length&&e.value===N&&N&&e.selectionEnd!==k},j=function(e){if(w)return;y?y=!1:B(n)?(t.selectAll(),H()):g&&n.selectionStart!=C&&H()},F=null;this.setInputHandler=function(e){F=e},this.getInputHandler=function(){return F};var I=!1,q=function(e,r){I&&(I=!1);if(b)return H(),e&&t.onPaste(e),b=!1,"";var i=n.selectionStart,o=n.selectionEnd,u=C,a=N.length-k,f=e,l=e.length-i,c=e.length-o,h=0;while(u>0&&N[h]==e[h])h++,u--;f=f.slice(h),h=1;while(a>0&&N.length-h>C-1&&N[N.length-h]==e[e.length-h])h++,a--;l-=h-1,c-=h-1;var p=f.length-h+1;p<0&&(u=-p,p=0),f=f.slice(0,p);if(!r&&!f&&!l&&!u&&!a&&!c)return"";E=!0;var d=!1;return s.isAndroid&&f==". "&&(f=" ",d=!0),f&&!u&&!a&&!l&&!c||x?t.onTextInput(f):t.onTextInput(f,{extendLeft:u,extendRight:a,restoreStart:l,restoreEnd:c}),E=!1,N=e,C=i,k=o,L=c,d?"\n":f},R=function(e){if(w)return J();if(e&&e.inputType){if(e.inputType=="historyUndo")return t.execCommand("undo");if(e.inputType=="historyRedo")return t.execCommand("redo")}var r=n.value,i=q(r,!0);(r.length>h+100||m.test(i)||g&&C<1&&C==k)&&H()},U=function(e,t,n){var r=e.clipboardData||window.clipboardData;if(!r||f)return;var i=l||n?"Text":"text/plain";try{return t?r.setData(i,t)!==!1:r.getData(i)}catch(e){if(!n)return U(e,t,!0)}},z=function(e,i){var s=t.getCopyText();if(!s)return r.preventDefault(e);U(e,s)?(v&&(H(s),y=s,setTimeout(function(){y=!1},10)),i?t.onCut():t.onCopy(),r.preventDefault(e)):(y=!0,n.value=s,n.select(),setTimeout(function(){y=!1,H(),i?t.onCut():t.onCopy()}))},W=function(e){z(e,!0)},X=function(e){z(e,!1)},V=function(e){var i=U(e);if(a.pasteCancelled())return;typeof i=="string"?(i&&t.onPaste(i,e),s.isIE&&setTimeout(H),r.preventDefault(e)):(n.value="",b=!0)};r.addCommandKeyListener(n,function(e,n,r){if(w)return;return t.onCommandKey(e,n,r)},t),r.addListener(n,"select",j,t),r.addListener(n,"input",R,t),r.addListener(n,"cut",W,t),r.addListener(n,"copy",X,t),r.addListener(n,"paste",V,t),(!("oncut"in n)||!("oncopy"in n)||!("onpaste"in n))&&r.addListener(e,"keydown",function(e){if(s.isMac&&!e.metaKey||!e.ctrlKey)return;switch(e.keyCode){case 67:X(e);break;case 86:V(e);break;case 88:W(e)}},t);var $=function(e){if(w||!t.onCompositionStart||t.$readOnly)return;w={};if(x)return;e.data&&(w.useTextareaForIME=!1),setTimeout(J,0),t._signal("compositionStart"),t.on("mousedown",Q);var r=t.getSelectionRange();r.end.row=r.start.row,r.end.column=r.start.column,w.markerRange=r,w.selectionStart=C,t.onCompositionStart(w),w.useTextareaForIME?(N=n.value="",C=0,k=0):(n.msGetInputContext&&(w.context=n.msGetInputContext()),n.getInputContext&&(w.context=n.getInputContext()))},J=function(){if(!w||!t.onCompositionUpdate||t.$readOnly)return;if(x)return Q();if(w.useTextareaForIME)t.onCompositionUpdate(n.value);else{var e=n.value;q(e),w.markerRange&&(w.context&&(w.markerRange.start.column=w.selectionStart=w.context.compositionStartOffset),w.markerRange.end.column=w.markerRange.start.column+k-w.selectionStart+L)}},K=function(e){if(!t.onCompositionEnd||t.$readOnly)return;w=!1,t.onCompositionEnd(),t.off("mousedown",Q),e&&R()},G=u.delayedCall(J,50).schedule.bind(null,null);r.addListener(n,"compositionstart",$,t),r.addListener(n,"compositionupdate",J,t),r.addListener(n,"keyup",Y,t),r.addListener(n,"keydown",G,t),r.addListener(n,"compositionend",K,t),this.getElement=function(){return n},this.setCommandMode=function(e){x=e,n.readOnly=!1},this.setReadOnly=function(e){x||(n.readOnly=e)},this.setCopyWithEmptySelection=function(e){},this.onContextMenu=function(e){I=!0,H(),t._emit("nativecontextmenu",{target:t,domEvent:e}),this.moveToMouse(e,!0)},this.moveToMouse=function(e,i){S||(S=n.style.cssText),n.style.cssText=(i?"z-index:100000;":"")+(s.isIE?"opacity:0.1;":"")+"text-indent: -"+(C+k)*t.renderer.characterWidth*.5+"px;";var u=t.container.getBoundingClientRect(),a=o.computedStyle(t.container),f=u.top+(parseInt(a.borderTopWidth)||0),l=u.left+(parseInt(u.borderLeftWidth)||0),c=u.bottom-f-n.clientHeight-2,h=function(e){o.translate(n,e.clientX-l-2,Math.min(e.clientY-f-2,c))};h(e);if(e.type!="mousedown")return;t.renderer.$isMousePressed=!0,clearTimeout(Z),s.isWin&&r.capture(t.container,h,et)},this.onContextMenuClose=et;var Z,tt=function(e){t.textInput.onContextMenu(e),et()};r.addListener(n,"mouseup",tt,t),r.addListener(n,"mousedown",function(e){e.preventDefault(),et()},t),r.addListener(t.renderer.scroller,"contextmenu",tt,t),r.addListener(n,"contextmenu",tt,t),v&&nt(e,t,n),this.destroy=function(){n.parentElement&&n.parentElement.removeChild(n)}},t.TextInput=y,t.$setUserAgentForTests=function(e,t){g=e,v=t}}),define("ace/mouse/default_handlers",["require","exports","module","ace/lib/useragent"],function(e,t,n){"use strict";function u(e,t,n,r){return Math.sqrt(Math.pow(n-e,2)+Math.pow(r-t,2))}function a(e,t){if(e.start.row==e.end.row)var n=2*t.column-e.start.column-e.end.column;else if(e.start.row==e.end.row-1&&!e.start.column&&!e.end.column)var n=t.column-4;else var n=2*t.row-e.start.row-e.end.row;return n<0?{cursor:e.start,anchor:e.end}:{cursor:e.end,anchor:e.start}}var r=e("../lib/useragent"),i=0,s=550,o=function(){function e(e){e.$clickSelection=null;var t=e.editor;t.setDefaultHandler("mousedown",this.onMouseDown.bind(e)),t.setDefaultHandler("dblclick",this.onDoubleClick.bind(e)),t.setDefaultHandler("tripleclick",this.onTripleClick.bind(e)),t.setDefaultHandler("quadclick",this.onQuadClick.bind(e)),t.setDefaultHandler("mousewheel",this.onMouseWheel.bind(e));var n=["select","startSelect","selectEnd","selectAllEnd","selectByWordsEnd","selectByLinesEnd","dragWait","dragWaitEnd","focusWait"];n.forEach(function(t){e[t]=this[t]},this),e.selectByLines=this.extendSelectionBy.bind(e,"getLineRange"),e.selectByWords=this.extendSelectionBy.bind(e,"getWordRange")}return e.prototype.onMouseDown=function(e){var t=e.inSelection(),n=e.getDocumentPosition();this.mousedownEvent=e;var i=this.editor,s=e.getButton();if(s!==0){var o=i.getSelectionRange(),u=o.isEmpty();(u||s==1)&&i.selection.moveToPosition(n),s==2&&(i.textInput.onContextMenu(e.domEvent),r.isMozilla||e.preventDefault());return}this.mousedownEvent.time=Date.now();if(t&&!i.isFocused()){i.focus();if(this.$focusTimeout&&!this.$clickSelection&&!i.inMultiSelectMode){this.setState("focusWait"),this.captureMouse(e);return}}return this.captureMouse(e),this.startSelect(n,e.domEvent._clicks>1),e.preventDefault()},e.prototype.startSelect=function(e,t){e=e||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var n=this.editor;if(!this.mousedownEvent)return;this.mousedownEvent.getShiftKey()?n.selection.selectToPosition(e):t||n.selection.moveToPosition(e),t||this.select(),n.setStyle("ace_selecting"),this.setState("select")},e.prototype.select=function(){var e,t=this.editor,n=t.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var r=this.$clickSelection.comparePoint(n);if(r==-1)e=this.$clickSelection.end;else if(r==1)e=this.$clickSelection.start;else{var i=a(this.$clickSelection,n);n=i.cursor,e=i.anchor}t.selection.setSelectionAnchor(e.row,e.column)}t.selection.selectToPosition(n),t.renderer.scrollCursorIntoView()},e.prototype.extendSelectionBy=function(e){var t,n=this.editor,r=n.renderer.screenToTextCoordinates(this.x,this.y),i=n.selection[e](r.row,r.column);if(this.$clickSelection){var s=this.$clickSelection.comparePoint(i.start),o=this.$clickSelection.comparePoint(i.end);if(s==-1&&o<=0){t=this.$clickSelection.end;if(i.end.row!=r.row||i.end.column!=r.column)r=i.start}else if(o==1&&s>=0){t=this.$clickSelection.start;if(i.start.row!=r.row||i.start.column!=r.column)r=i.end}else if(s==-1&&o==1)r=i.end,t=i.start;else{var u=a(this.$clickSelection,r);r=u.cursor,t=u.anchor}n.selection.setSelectionAnchor(t.row,t.column)}n.selection.selectToPosition(r),n.renderer.scrollCursorIntoView()},e.prototype.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting")},e.prototype.focusWait=function(){var e=u(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),t=Date.now();(e>i||t-this.mousedownEvent.time>this.$focusTimeout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},e.prototype.onDoubleClick=function(e){var t=e.getDocumentPosition(),n=this.editor,r=n.session,i=r.getBracketRange(t);i?(i.isEmpty()&&(i.start.column--,i.end.column++),this.setState("select")):(i=n.selection.getWordRange(t.row,t.column),this.setState("selectByWords")),this.$clickSelection=i,this.select()},e.prototype.onTripleClick=function(e){var t=e.getDocumentPosition(),n=this.editor;this.setState("selectByLines");var r=n.getSelectionRange();r.isMultiLine()&&r.contains(t.row,t.column)?(this.$clickSelection=n.selection.getLineRange(r.start.row),this.$clickSelection.end=n.selection.getLineRange(r.end.row).end):this.$clickSelection=n.selection.getLineRange(t.row),this.select()},e.prototype.onQuadClick=function(e){var t=this.editor;t.selectAll(),this.$clickSelection=t.getSelectionRange(),this.setState("selectAll")},e.prototype.onMouseWheel=function(e){if(e.getAccelKey())return;e.getShiftKey()&&e.wheelY&&!e.wheelX&&(e.wheelX=e.wheelY,e.wheelY=0);var t=this.editor;this.$lastScroll||(this.$lastScroll={t:0,vx:0,vy:0,allowed:0});var n=this.$lastScroll,r=e.domEvent.timeStamp,i=r-n.t,o=i?e.wheelX/i:n.vx,u=i?e.wheelY/i:n.vy;i=1&&t.renderer.isScrollableBy(e.wheelX*e.speed,0)&&(f=!0),a<=1&&t.renderer.isScrollableBy(0,e.wheelY*e.speed)&&(f=!0);if(f)n.allowed=r;else if(r-n.allowedn.clientHeight;r||t.preventDefault()}}),define("ace/tooltip",["require","exports","module","ace/lib/dom","ace/lib/event","ace/range","ace/lib/scroll"],function(e,t,n){"use strict";var r=this&&this.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){function r(){this.constructor=t}if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n),t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),i=this&&this.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},s=e("./lib/dom"),o=e("./lib/event"),u=e("./range").Range,a=e("./lib/scroll").preventParentScroll,f="ace_tooltip",l=function(){function e(e){this.isOpen=!1,this.$element=null,this.$parentNode=e}return e.prototype.$init=function(){return this.$element=s.createElement("div"),this.$element.className=f,this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},e.prototype.getElement=function(){return this.$element||this.$init()},e.prototype.setText=function(e){this.getElement().textContent=e},e.prototype.setHtml=function(e){this.getElement().innerHTML=e},e.prototype.setPosition=function(e,t){this.getElement().style.left=e+"px",this.getElement().style.top=t+"px"},e.prototype.setClassName=function(e){s.addCssClass(this.getElement(),e)},e.prototype.setTheme=function(e){this.$element.className=f+" "+(e.isDark?"ace_dark ":"")+(e.cssClass||"")},e.prototype.show=function(e,t,n){e!=null&&this.setText(e),t!=null&&n!=null&&this.setPosition(t,n),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},e.prototype.hide=function(e){this.isOpen&&(this.getElement().style.display="none",this.getElement().className=f,this.isOpen=!1)},e.prototype.getHeight=function(){return this.getElement().offsetHeight},e.prototype.getWidth=function(){return this.getElement().offsetWidth},e.prototype.destroy=function(){this.isOpen=!1,this.$element&&this.$element.parentNode&&this.$element.parentNode.removeChild(this.$element)},e}(),c=function(){function e(){this.popups=[]}return e.prototype.addPopup=function(e){this.popups.push(e),this.updatePopups()},e.prototype.removePopup=function(e){var t=this.popups.indexOf(e);t!==-1&&(this.popups.splice(t,1),this.updatePopups())},e.prototype.updatePopups=function(){var e,t,n,r;this.popups.sort(function(e,t){return t.priority-e.priority});var s=[];try{for(var o=i(this.popups),u=o.next();!u.done;u=o.next()){var a=u.value,f=!0;try{for(var l=(n=void 0,i(s)),c=l.next();!c.done;c=l.next()){var h=c.value;if(this.doPopupsOverlap(h,a)){f=!1;break}}}catch(p){n={error:p}}finally{try{c&&!c.done&&(r=l.return)&&r.call(l)}finally{if(n)throw n.error}}f?s.push(a):a.hide()}}catch(d){e={error:d}}finally{try{u&&!u.done&&(t=o.return)&&t.call(o)}finally{if(e)throw e.error}}},e.prototype.doPopupsOverlap=function(e,t){var n=e.getElement().getBoundingClientRect(),r=t.getElement().getBoundingClientRect();return n.leftr.left&&n.topr.top},e}(),h=new c;t.popupManager=h,t.Tooltip=l;var p=function(e){function t(t){t===void 0&&(t=document.body);var n=e.call(this,t)||this;n.timeout=undefined,n.lastT=0,n.idleTime=350,n.lastEvent=undefined,n.onMouseOut=n.onMouseOut.bind(n),n.onMouseMove=n.onMouseMove.bind(n),n.waitForHover=n.waitForHover.bind(n),n.hide=n.hide.bind(n);var r=n.getElement();return r.style.whiteSpace="pre-wrap",r.style.pointerEvents="auto",r.addEventListener("mouseout",n.onMouseOut),r.tabIndex=-1,r.addEventListener("blur",function(){r.contains(document.activeElement)||this.hide()}.bind(n)),r.addEventListener("wheel",a),n}return r(t,e),t.prototype.addToEditor=function(e){e.on("mousemove",this.onMouseMove),e.on("mousedown",this.hide),e.renderer.getMouseEventTarget().addEventListener("mouseout",this.onMouseOut,!0)},t.prototype.removeFromEditor=function(e){e.off("mousemove",this.onMouseMove),e.off("mousedown",this.hide),e.renderer.getMouseEventTarget().removeEventListener("mouseout",this.onMouseOut,!0),this.timeout&&(clearTimeout(this.timeout),this.timeout=null)},t.prototype.onMouseMove=function(e,t){this.lastEvent=e,this.lastT=Date.now();var n=t.$mouseHandler.isMousePressed;if(this.isOpen){var r=this.lastEvent&&this.lastEvent.getDocumentPosition();(!this.range||!this.range.contains(r.row,r.column)||n||this.isOutsideOfText(this.lastEvent))&&this.hide()}if(this.timeout||n)return;this.lastEvent=e,this.timeout=setTimeout(this.waitForHover,this.idleTime)},t.prototype.waitForHover=function(){this.timeout&&clearTimeout(this.timeout);var e=Date.now()-this.lastT;if(this.idleTime-e>10){this.timeout=setTimeout(this.waitForHover,this.idleTime-e);return}this.timeout=null,this.lastEvent&&!this.isOutsideOfText(this.lastEvent)&&this.$gatherData(this.lastEvent,this.lastEvent.editor)},t.prototype.isOutsideOfText=function(e){var t=e.editor,n=e.getDocumentPosition(),r=t.session.getLine(n.row);if(n.column==r.length){var i=t.renderer.pixelToScreenCoordinates(e.clientX,e.clientY),s=t.session.documentToScreenPosition(n.row,n.column);if(s.column!=i.column||s.row!=i.row)return!0}return!1},t.prototype.setDataProvider=function(e){this.$gatherData=e},t.prototype.showForRange=function(e,t,n,r){var i=10;if(r&&r!=this.lastEvent)return;if(this.isOpen&&document.activeElement==this.getElement())return;var s=e.renderer;this.isOpen||(h.addPopup(this),this.$registerCloseEvents(),this.setTheme(s.theme)),this.isOpen=!0,this.addMarker(t,e.session),this.range=u.fromPoints(t.start,t.end);var o=s.textToScreenCoordinates(t.start.row,t.start.column),a=s.scroller.getBoundingClientRect();o.pageXt.session.documentToScreenRow(a.row,a.column))return f()}r.showTooltip(i);if(!r.isOpen)return;t.on("mousewheel",f);if(e.$tooltipFollowsMouse)c(u);else{var l=u.getGutterRow(),h=n.$lines.get(l);if(h){var p=h.element.querySelector(".ace_gutter_annotation"),d=p.getBoundingClientRect(),v=r.getElement().style;v.left=d.right+"px",v.top=d.bottom+"px"}else c(u)}}function f(){i&&(i=clearTimeout(i)),r.isOpen&&(r.hideTooltip(),t.off("mousewheel",f))}function c(e){r.setPosition(e.x,e.y)}var t=e.editor,n=t.renderer.$gutterLayer,r=new l(t);e.editor.setDefaultHandler("guttermousedown",function(r){if(!t.isFocused()||r.getButton()!=0)return;var i=n.getRegion(r);if(i=="foldWidgets")return;var s=r.getDocumentPosition().row,o=t.session.selection;if(r.getShiftKey())o.selectTo(s,0);else{if(r.domEvent.detail==2)return t.selectAll(),r.preventDefault();e.$clickSelection=t.selection.getLineRange(s)}return e.setState("selectByLines"),e.captureMouse(r),r.preventDefault()});var i,u;e.editor.setDefaultHandler("guttermousemove",function(t){var n=t.domEvent.target||t.domEvent.srcElement;if(s.hasCssClass(n,"ace_fold-widget"))return f();r.isOpen&&e.$tooltipFollowsMouse&&c(t),u=t;if(i)return;i=setTimeout(function(){i=null,u&&!e.isMousePressed?a():f()},50)}),o.addListener(t.renderer.$gutter,"mouseout",function(e){u=null;if(!r.isOpen||i)return;i=setTimeout(function(){i=null,f()},50)},t),t.on("changeSession",f),t.on("input",f)}var r=this&&this.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){function r(){this.constructor=t}if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n),t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),i=this&&this.__values||function(e){var t=typeof Symbol=="function"&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},s=e("../lib/dom"),o=e("../lib/event"),u=e("../tooltip").Tooltip,a=e("../config").nls;t.GutterHandler=f;var l=function(e){function t(t){var n=e.call(this,t.container)||this;return n.editor=t,n}return r(t,e),t.prototype.setPosition=function(e,t){var n=window.innerWidth||document.documentElement.clientWidth,r=window.innerHeight||document.documentElement.clientHeight,i=this.getWidth(),s=this.getHeight();e+=15,t+=15,e+i>n&&(e-=e+i-n),t+s>r&&(t-=20+s),u.prototype.setPosition.call(this,e,t)},Object.defineProperty(t,"annotationLabels",{get:function(){return{error:{singular:a("error"),plural:a("errors")},warning:{singular:a("warning"),plural:a("warnings")},info:{singular:a("information message"),plural:a("information messages")}}},enumerable:!1,configurable:!0}),t.prototype.showTooltip=function(e){var n=this.editor.renderer.$gutterLayer,r=n.$annotations[e],i;r?i={text:Array.from(r.text),type:Array.from(r.type)}:i={text:[],type:[]};var s=n.session.getFoldLine(e);if(s&&n.$showFoldedAnnotations){var o={error:[],warning:[],info:[]},u;for(var a=e+1;a<=s.end.row;a++){if(!n.$annotations[a])continue;for(var f=0;f ").concat(i.text[a]);h[i.type[a].replace("_fold","")].push(d)}var v=[].concat(h.error,h.warning,h.info).join("
    ");this.setHtml(v),this.$element.setAttribute("aria-live","polite"),this.isOpen||(this.setTheme(this.editor.renderer.theme),this.setClassName("ace_gutter-tooltip")),this.show(),this.editor._signal("showGutterTooltip",this)},t.prototype.hideTooltip=function(){this.$element.removeAttribute("aria-live"),this.hide(),this.editor._signal("hideGutterTooltip",this)},t.annotationsToSummaryString=function(e){var n,r,s=[],o=["error","warning","info"];try{for(var u=i(o),a=u.next();!a.done;a=u.next()){var f=a.value;if(!e[f].length)continue;var l=e[f].length===1?t.annotationLabels[f].singular:t.annotationLabels[f].plural;s.push("".concat(e[f].length," ").concat(l))}}catch(c){n={error:c}}finally{try{a&&!a.done&&(r=u.return)&&r.call(u)}finally{if(n)throw n.error}}return s.join(", ")},t}(u);t.GutterTooltip=l}),define("ace/mouse/mouse_event",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(e,t,n){"use strict";var r=e("../lib/event"),i=e("../lib/useragent"),s=function(){function e(e,t){this.speed,this.wheelX,this.wheelY,this.domEvent=e,this.editor=t,this.x=this.clientX=e.clientX,this.y=this.clientY=e.clientY,this.$pos=null,this.$inSelection=null,this.propagationStopped=!1,this.defaultPrevented=!1}return e.prototype.stopPropagation=function(){r.stopPropagation(this.domEvent),this.propagationStopped=!0},e.prototype.preventDefault=function(){r.preventDefault(this.domEvent),this.defaultPrevented=!0},e.prototype.stop=function(){this.stopPropagation(),this.preventDefault()},e.prototype.getDocumentPosition=function(){return this.$pos?this.$pos:(this.$pos=this.editor.renderer.screenToTextCoordinates(this.clientX,this.clientY),this.$pos)},e.prototype.getGutterRow=function(){var e=this.getDocumentPosition().row,t=this.editor.session.documentToScreenRow(e,0),n=this.editor.session.documentToScreenRow(this.editor.renderer.$gutterLayer.$lines.get(0).row,0);return t-n},e.prototype.inSelection=function(){if(this.$inSelection!==null)return this.$inSelection;var e=this.editor,t=e.getSelectionRange();if(t.isEmpty())this.$inSelection=!1;else{var n=this.getDocumentPosition();this.$inSelection=t.contains(n.row,n.column)}return this.$inSelection},e.prototype.getButton=function(){return r.getButton(this.domEvent)},e.prototype.getShiftKey=function(){return this.domEvent.shiftKey},e.prototype.getAccelKey=function(){return i.isMac?this.domEvent.metaKey:this.domEvent.ctrlKey},e}();t.MouseEvent=s}),define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(e,t,n){"use strict";function f(e){function T(e,n){var r=Date.now(),i=!n||e.row!=n.row,s=!n||e.column!=n.column;if(!S||i||s)t.moveCursorToPosition(e),S=r,x={x:p,y:d};else{var o=l(x.x,x.y,p,d);o>a?S=null:r-S>=u&&(t.renderer.scrollCursorIntoView(),S=null)}}function N(e,n){var r=Date.now(),i=t.renderer.layerConfig.lineHeight,s=t.renderer.layerConfig.characterWidth,u=t.renderer.scroller.getBoundingClientRect(),a={x:{left:p-u.left,right:u.right-p},y:{top:d-u.top,bottom:u.bottom-d}},f=Math.min(a.x.left,a.x.right),l=Math.min(a.y.top,a.y.bottom),c={row:e.row,column:e.column};f/s<=2&&(c.column+=a.x.left=o&&t.renderer.scrollCursorIntoView(c):E=r:E=null}function C(){var e=g;g=t.renderer.screenToTextCoordinates(p,d),T(g,e),N(g,e)}function k(){m=t.selection.toOrientedRange(),h=t.session.addMarker(m,"ace_selection",t.getSelectionStyle()),t.clearSelection(),t.isFocused()&&t.renderer.$cursorLayer.setBlinking(!1),clearInterval(v),C(),v=setInterval(C,20),y=0,i.addListener(document,"mousemove",O)}function L(){clearInterval(v),t.session.removeMarker(h),h=null,t.selection.fromOrientedRange(m),t.isFocused()&&!w&&t.$resetCursorStyle(),m=null,g=null,y=0,E=null,S=null,i.removeListener(document,"mousemove",O)}function O(){A==null&&(A=setTimeout(function(){A!=null&&h&&L()},20))}function M(e){var t=e.types;return!t||Array.prototype.some.call(t,function(e){return e=="text/plain"||e=="Text"})}function _(e){var t=["copy","copymove","all","uninitialized"],n=["move","copymove","linkmove","all","uninitialized"],r=s.isMac?e.altKey:e.ctrlKey,i="uninitialized";try{i=e.dataTransfer.effectAllowed.toLowerCase()}catch(e){}var o="none";return r&&t.indexOf(i)>=0?o="copy":n.indexOf(i)>=0?o="move":t.indexOf(i)>=0&&(o="copy"),o}var t=e.editor,n=r.createElement("div");n.style.cssText="top:-100px;position:absolute;z-index:2147483647;opacity:0.5",n.textContent="\u00a0";var f=["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"];f.forEach(function(t){e[t]=this[t]},this),t.on("mousedown",this.onMouseDown.bind(e));var c=t.container,h,p,d,v,m,g,y=0,b,w,E,S,x;this.onDragStart=function(e){if(this.cancelDrag||!c.draggable){var r=this;return setTimeout(function(){r.startSelect(),r.captureMouse(e)},0),e.preventDefault()}m=t.getSelectionRange();var i=e.dataTransfer;i.effectAllowed=t.getReadOnly()?"copy":"copyMove",t.container.appendChild(n),i.setDragImage&&i.setDragImage(n,0,0),setTimeout(function(){t.container.removeChild(n)}),i.clearData(),i.setData("Text",t.session.getTextRange()),w=!0,this.setState("drag")},this.onDragEnd=function(e){c.draggable=!1,w=!1,this.setState(null);if(!t.getReadOnly()){var n=e.dataTransfer.dropEffect;!b&&n=="move"&&t.session.remove(t.getSelectionRange()),t.$resetCursorStyle()}this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle("")},this.onDragEnter=function(e){if(t.getReadOnly()||!M(e.dataTransfer))return;return p=e.clientX,d=e.clientY,h||k(),y++,e.dataTransfer.dropEffect=b=_(e),i.preventDefault(e)},this.onDragOver=function(e){if(t.getReadOnly()||!M(e.dataTransfer))return;return p=e.clientX,d=e.clientY,h||(k(),y++),A!==null&&(A=null),e.dataTransfer.dropEffect=b=_(e),i.preventDefault(e)},this.onDragLeave=function(e){y--;if(y<=0&&h)return L(),b=null,i.preventDefault(e)},this.onDrop=function(e){if(!g)return;var n=e.dataTransfer;if(w)switch(b){case"move":m.contains(g.row,g.column)?m={start:g,end:g}:m=t.moveText(m,g);break;case"copy":m=t.moveText(m,g,!0)}else{var r=n.getData("Text");m={start:g,end:t.session.insert(g,r)},t.focus(),b=null}return L(),i.preventDefault(e)},i.addListener(c,"dragstart",this.onDragStart.bind(e),t),i.addListener(c,"dragend",this.onDragEnd.bind(e),t),i.addListener(c,"dragenter",this.onDragEnter.bind(e),t),i.addListener(c,"dragover",this.onDragOver.bind(e),t),i.addListener(c,"dragleave",this.onDragLeave.bind(e),t),i.addListener(c,"drop",this.onDrop.bind(e),t);var A=null}function l(e,t,n,r){return Math.sqrt(Math.pow(n-e,2)+Math.pow(r-t,2))}var r=e("../lib/dom"),i=e("../lib/event"),s=e("../lib/useragent"),o=200,u=200,a=5;(function(){this.dragWait=function(){var e=Date.now()-this.mousedownEvent.time;e>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){var e=this.editor.container;e.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(e){this.editor.$resetCursorStyle(),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle(""),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var e=this.editor,t=e.container;t.draggable=!0,e.renderer.$cursorLayer.setBlinking(!1),e.setStyle("ace_dragging");var n=s.isWin?"default":"move";e.renderer.setCursorStyle(n),this.setState("dragReady")},this.onMouseDrag=function(e){var t=this.editor.container;if(s.isIE&&this.state=="dragReady"){var n=l(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);n>3&&t.dragDrop()}if(this.state==="dragWait"){var n=l(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);n>0&&(t.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))}},this.onMouseDown=function(e){if(!this.$dragEnabled)return;this.mousedownEvent=e;var t=this.editor,n=e.inSelection(),r=e.getButton(),i=e.domEvent.detail||1;if(i===1&&r===0&&n){if(e.editor.inMultiSelectMode&&(e.getAccelKey()||e.getShiftKey()))return;this.mousedownEvent.time=Date.now();var o=e.domEvent.target||e.domEvent.srcElement;"unselectable"in o&&(o.unselectable="on");if(t.getDragDelay()){if(s.isWebKit){this.cancelDrag=!0;var u=t.container;u.draggable=!0}this.setState("dragWait")}else this.startDrag();this.captureMouse(e,this.onMouseDrag.bind(this)),e.defaultPrevented=!0}}}).call(f.prototype),t.DragdropHandler=f}),define("ace/mouse/touch_handler",["require","exports","module","ace/mouse/mouse_event","ace/lib/event","ace/lib/dom"],function(e,t,n){"use strict";var r=e("./mouse_event").MouseEvent,i=e("../lib/event"),s=e("../lib/dom");t.addTouchListeners=function(e,t){function b(){var e=window.navigator&&window.navigator.clipboard,r=!1,i=function(){var n=t.getCopyText(),i=t.session.getUndoManager().hasUndo();y.replaceChild(s.buildDom(r?["span",!n&&["span",{"class":"ace_mobile-button",action:"selectall"},"Select All"],n&&["span",{"class":"ace_mobile-button",action:"copy"},"Copy"],n&&["span",{"class":"ace_mobile-button",action:"cut"},"Cut"],e&&["span",{"class":"ace_mobile-button",action:"paste"},"Paste"],i&&["span",{"class":"ace_mobile-button",action:"undo"},"Undo"],["span",{"class":"ace_mobile-button",action:"find"},"Find"],["span",{"class":"ace_mobile-button",action:"openCommandPalette"},"Palette"]]:["span"]),y.firstChild)},o=function(n){var s=n.target.getAttribute("action");if(s=="more"||!r)return r=!r,i();if(s=="paste")e.readText().then(function(e){t.execCommand(s,e)});else if(s){if(s=="cut"||s=="copy")e?e.writeText(t.getCopyText()):document.execCommand("copy");t.execCommand(s)}y.firstChild.style.display="none",r=!1,s!="openCommandPalette"&&t.focus()};y=s.buildDom(["div",{"class":"ace_mobile-menu",ontouchstart:function(e){n="menu",e.stopPropagation(),e.preventDefault(),t.textInput.focus()},ontouchend:function(e){e.stopPropagation(),e.preventDefault(),o(e)},onclick:o},["span"],["span",{"class":"ace_mobile-button",action:"more"},"..."]],t.container)}function w(){y||b();var e=t.selection.cursor,n=t.renderer.textToScreenCoordinates(e.row,e.column),r=t.renderer.textToScreenCoordinates(0,0).pageX,i=t.renderer.scrollLeft,s=t.container.getBoundingClientRect();y.style.top=n.pageY-s.top-3+"px",n.pageX-s.left=2?t.selection.getLineRange(p.row):t.session.getBracketRange(p);e&&!e.isEmpty()?t.selection.setRange(e):t.selection.selectWord(),n="wait"}function T(){h+=60,c=setInterval(function(){h--<=0&&(clearInterval(c),c=null),Math.abs(v)<.01&&(v=0),Math.abs(m)<.01&&(m=0),h<20&&(v=.9*v),h<20&&(m=.9*m);var e=t.session.getScrollTop();t.renderer.scrollBy(10*v,10*m),e==t.session.getScrollTop()&&(h=0)},10)}var n="scroll",o,u,a,f,l,c,h=0,p,d=0,v=0,m=0,g,y;i.addListener(e,"contextmenu",function(e){if(!g)return;var n=t.textInput.getElement();n.focus()},t),i.addListener(e,"touchstart",function(e){var i=e.touches;if(l||i.length>1){clearTimeout(l),l=null,a=-1,n="zoom";return}g=t.$mouseHandler.isMousePressed=!0;var s=t.renderer.layerConfig.lineHeight,c=t.renderer.layerConfig.lineHeight,y=e.timeStamp;f=y;var b=i[0],w=b.clientX,E=b.clientY;Math.abs(o-w)+Math.abs(u-E)>s&&(a=-1),o=e.clientX=w,u=e.clientY=E,v=m=0;var T=new r(e,t);p=T.getDocumentPosition();if(y-a<500&&i.length==1&&!h)d++,e.preventDefault(),e.button=0,x();else{d=0;var N=t.selection.cursor,C=t.selection.isEmpty()?N:t.selection.anchor,k=t.renderer.$cursorLayer.getPixelPosition(N,!0),L=t.renderer.$cursorLayer.getPixelPosition(C,!0),A=t.renderer.scroller.getBoundingClientRect(),O=t.renderer.layerConfig.offset,M=t.renderer.scrollLeft,_=function(e,t){return e/=c,t=t/s-.75,e*e+t*t};if(e.clientXP?"cursor":"anchor"),P<3.5?n="anchor":D<3.5?n="cursor":n="scroll",l=setTimeout(S,450)}a=y},t),i.addListener(e,"touchend",function(e){g=t.$mouseHandler.isMousePressed=!1,c&&clearInterval(c),n=="zoom"?(n="",h=0):l?(t.selection.moveToPosition(p),h=0,w()):n=="scroll"?(T(),E()):w(),clearTimeout(l),l=null},t),i.addListener(e,"touchmove",function(e){l&&(clearTimeout(l),l=null);var i=e.touches;if(i.length>1||n=="zoom")return;var s=i[0],a=o-s.clientX,c=u-s.clientY;if(n=="wait"){if(!(a*a+c*c>4))return e.preventDefault();n="cursor"}o=s.clientX,u=s.clientY,e.clientX=s.clientX,e.clientY=s.clientY;var h=e.timeStamp,p=h-f;f=h;if(n=="scroll"){var d=new r(e,t);d.speed=1,d.wheelX=a,d.wheelY=c,10*Math.abs(a)0)if(g==16){for(w=b;w-1){for(w=b;w=0;C--){if(r[C]!=N)break;t[C]=s}}}function I(e,t,n){if(o=e){u=i+1;while(u=e)u++;for(a=i,l=u-1;a=t.length||(o=n[r-1])!=b&&o!=w||(c=t[r+1])!=b&&c!=w)return E;return u&&(c=w),c==o?c:E;case k:o=r>0?n[r-1]:S;if(o==b&&r+10&&n[r-1]==b)return b;if(u)return E;p=r+1,h=t.length;while(p=1425&&d<=2303||d==64286;o=t[p];if(v&&(o==y||o==T))return y}if(r<1||(o=t[r-1])==S)return E;return n[r-1];case S:return u=!1,f=!0,s;case x:return l=!0,E;case O:case M:case D:case P:case _:u=!1;case H:return E}}function R(e){var t=e.charCodeAt(0),n=t>>8;return n==0?t>191?g:B[t]:n==5?/[\u0591-\u05f4]/.test(e)?y:g:n==6?/[\u0610-\u061a\u064b-\u065f\u06d6-\u06e4\u06e7-\u06ed]/.test(e)?A:/[\u0660-\u0669\u066b-\u066c]/.test(e)?w:t==1642?L:/[\u06f0-\u06f9]/.test(e)?b:T:n==32&&t<=8287?j[t&255]:n==254?t>=65136?T:E:E}function U(e){return e>="\u064b"&&e<="\u0655"}var r=["\u0621","\u0641"],i=["\u063a","\u064a"],s=0,o=0,u=!1,a=!1,f=!1,l=!1,c=!1,h=!1,p=[[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]],d=[[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]],v=0,m=1,g=0,y=1,b=2,w=3,E=4,S=5,x=6,T=7,N=8,C=9,k=10,L=11,A=12,O=13,M=14,_=15,D=16,P=17,H=18,B=[H,H,H,H,H,H,H,H,H,x,S,x,N,S,H,H,H,H,H,H,H,H,H,H,H,H,H,H,S,S,S,x,N,E,E,L,L,L,E,E,E,E,E,k,C,k,C,C,b,b,b,b,b,b,b,b,b,b,C,E,E,E,E,E,E,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,E,E,E,E,E,E,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,E,E,E,E,H,H,H,H,H,H,S,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,C,E,L,L,L,L,E,E,E,E,g,E,E,H,E,E,L,L,b,b,E,g,E,E,E,b,g,E,E,E,E,E],j=[N,N,N,N,N,N,N,N,N,N,N,H,H,H,g,y,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,N,S,O,M,_,D,P,C,L,L,L,L,L,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,C,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,N];t.L=g,t.R=y,t.EN=b,t.ON_R=3,t.AN=4,t.R_H=5,t.B=6,t.RLE=7,t.DOT="\u00b7",t.doBidiReorder=function(e,n,r){if(e.length<2)return{};var i=e.split(""),o=new Array(i.length),u=new Array(i.length),a=[];s=r?m:v,F(i,a,i.length,n);for(var f=0;fT&&n[f]0&&i[f-1]==="\u0644"&&/\u0622|\u0623|\u0625|\u0627/.test(i[f])&&(a[f-1]=a[f]=t.R_H,f++);i[i.length-1]===t.DOT&&(a[i.length-1]=t.B),i[0]==="\u202b"&&(a[0]=t.RLE);for(var f=0;f=0&&(e=this.session.$docRowCache[n])}return e},e.prototype.getSplitIndex=function(){var e=0,t=this.session.$screenRowCache;if(t.length){var n,r=this.session.$getRowCacheIndex(t,this.currentRow);while(this.currentRow-e>0){n=this.session.$getRowCacheIndex(t,this.currentRow-e-1);if(n!==r)break;r=n,e++}}else e=this.currentRow;return e},e.prototype.updateRowLine=function(e,t){e===undefined&&(e=this.getDocumentRow());var n=e===this.session.getLength()-1,s=n?this.EOF:this.EOL;this.wrapIndent=0,this.line=this.session.getLine(e),this.isRtlDir=this.$isRtl||this.line.charAt(0)===this.RLE;if(this.session.$useWrapMode){var o=this.session.$wrapData[e];o&&(t===undefined&&(t=this.getSplitIndex()),t>0&&o.length?(this.wrapIndent=o.indent,this.wrapOffset=this.wrapIndent*this.charWidths[r.L],this.line=tt?this.session.getOverwrite()?e:e-1:t,i=r.getVisualFromLogicalIdx(n,this.bidiMap),s=this.bidiMap.bidiLevels,o=0;!this.session.getOverwrite()&&e<=t&&s[i]%2!==0&&i++;for(var u=0;ut&&s[i]%2===0&&(o+=this.charWidths[s[i]]),this.wrapIndent&&(o+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset),this.isRtlDir&&(o+=this.rtlLineOffset),o},e.prototype.getSelections=function(e,t){var n=this.bidiMap,r=n.bidiLevels,i,s=[],o=0,u=Math.min(e,t)-this.wrapIndent,a=Math.max(e,t)-this.wrapIndent,f=!1,l=!1,c=0;this.wrapIndent&&(o+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset);for(var h,p=0;p=u&&hn+s/2){n+=s;if(r===i.length-1){s=0;break}s=this.charWidths[i[++r]]}return r>0&&i[r-1]%2!==0&&i[r]%2===0?(e0&&i[r-1]%2===0&&i[r]%2!==0?t=1+(e>n?this.bidiMap.logicalFromVisual[r]:this.bidiMap.logicalFromVisual[r-1]):this.isRtlDir&&r===i.length-1&&s===0&&i[r-1]%2===0||!this.isRtlDir&&r===0&&i[r]%2!==0?t=1+this.bidiMap.logicalFromVisual[r]:(r>0&&i[r-1]%2!==0&&s!==0&&r--,t=this.bidiMap.logicalFromVisual[r]),t===0&&this.isRtlDir&&t++,t+this.wrapIndent},e}();t.BidiHandler=o}),define("ace/selection",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/range"],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./lib/lang"),s=e("./lib/event_emitter").EventEmitter,o=e("./range").Range,u=function(){function e(e){this.session=e,this.doc=e.getDocument(),this.clearSelection(),this.cursor=this.lead=this.doc.createAnchor(0,0),this.anchor=this.doc.createAnchor(0,0),this.$silent=!1;var t=this;this.cursor.on("change",function(e){t.$cursorChanged=!0,t.$silent||t._emit("changeCursor"),!t.$isEmpty&&!t.$silent&&t._emit("changeSelection"),!t.$keepDesiredColumnOnChange&&e.old.column!=e.value.column&&(t.$desiredColumn=null)}),this.anchor.on("change",function(){t.$anchorChanged=!0,!t.$isEmpty&&!t.$silent&&t._emit("changeSelection")})}return e.prototype.isEmpty=function(){return this.$isEmpty||this.anchor.row==this.lead.row&&this.anchor.column==this.lead.column},e.prototype.isMultiLine=function(){return!this.$isEmpty&&this.anchor.row!=this.cursor.row},e.prototype.getCursor=function(){return this.lead.getPosition()},e.prototype.setAnchor=function(e,t){this.$isEmpty=!1,this.anchor.setPosition(e,t)},e.prototype.getAnchor=function(){return this.$isEmpty?this.getSelectionLead():this.anchor.getPosition()},e.prototype.getSelectionLead=function(){return this.lead.getPosition()},e.prototype.isBackwards=function(){var e=this.anchor,t=this.lead;return e.row>t.row||e.row==t.row&&e.column>t.column},e.prototype.getRange=function(){var e=this.anchor,t=this.lead;return this.$isEmpty?o.fromPoints(t,t):this.isBackwards()?o.fromPoints(t,e):o.fromPoints(e,t)},e.prototype.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},e.prototype.selectAll=function(){this.$setSelection(0,0,Number.MAX_VALUE,Number.MAX_VALUE)},e.prototype.setRange=function(e,t){var n=t?e.end:e.start,r=t?e.start:e.end;this.$setSelection(n.row,n.column,r.row,r.column)},e.prototype.$setSelection=function(e,t,n,r){if(this.$silent)return;var i=this.$isEmpty,s=this.inMultiSelectMode;this.$silent=!0,this.$cursorChanged=this.$anchorChanged=!1,this.anchor.setPosition(e,t),this.cursor.setPosition(n,r),this.$isEmpty=!o.comparePoints(this.anchor,this.cursor),this.$silent=!1,this.$cursorChanged&&this._emit("changeCursor"),(this.$cursorChanged||this.$anchorChanged||i!=this.$isEmpty||s)&&this._emit("changeSelection")},e.prototype.$moveSelection=function(e){var t=this.lead;this.$isEmpty&&this.setSelectionAnchor(t.row,t.column),e.call(this)},e.prototype.selectTo=function(e,t){this.$moveSelection(function(){this.moveCursorTo(e,t)})},e.prototype.selectToPosition=function(e){this.$moveSelection(function(){this.moveCursorToPosition(e)})},e.prototype.moveTo=function(e,t){this.clearSelection(),this.moveCursorTo(e,t)},e.prototype.moveToPosition=function(e){this.clearSelection(),this.moveCursorToPosition(e)},e.prototype.selectUp=function(){this.$moveSelection(this.moveCursorUp)},e.prototype.selectDown=function(){this.$moveSelection(this.moveCursorDown)},e.prototype.selectRight=function(){this.$moveSelection(this.moveCursorRight)},e.prototype.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},e.prototype.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},e.prototype.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},e.prototype.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},e.prototype.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},e.prototype.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},e.prototype.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},e.prototype.getWordRange=function(e,t){if(typeof t=="undefined"){var n=e||this.lead;e=n.row,t=n.column}return this.session.getWordRange(e,t)},e.prototype.selectWord=function(){this.setSelectionRange(this.getWordRange())},e.prototype.selectAWord=function(){var e=this.getCursor(),t=this.session.getAWordRange(e.row,e.column);this.setSelectionRange(t)},e.prototype.getLineRange=function(e,t){var n=typeof e=="number"?e:this.lead.row,r,i=this.session.getFoldLine(n);return i?(n=i.start.row,r=i.end.row):r=n,t===!0?new o(n,0,r,this.session.getLine(r).length):new o(n,0,r+1,0)},e.prototype.selectLine=function(){this.setSelectionRange(this.getLineRange())},e.prototype.moveCursorUp=function(){this.moveCursorBy(-1,0)},e.prototype.moveCursorDown=function(){this.moveCursorBy(1,0)},e.prototype.wouldMoveIntoSoftTab=function(e,t,n){var r=e.column,i=e.column+t;return n<0&&(r=e.column-t,i=e.column),this.session.isTabStop(e)&&this.doc.getLine(e.row).slice(r,i).split(" ").length-1==t},e.prototype.moveCursorLeft=function(){var e=this.lead.getPosition(),t;if(t=this.session.getFoldAt(e.row,e.column,-1))this.moveCursorTo(t.start.row,t.start.column);else if(e.column===0)e.row>0&&this.moveCursorTo(e.row-1,this.doc.getLine(e.row-1).length);else{var n=this.session.getTabSize();this.wouldMoveIntoSoftTab(e,n,-1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,-n):this.moveCursorBy(0,-1)}},e.prototype.moveCursorRight=function(){var e=this.lead.getPosition(),t;if(t=this.session.getFoldAt(e.row,e.column,1))this.moveCursorTo(t.end.row,t.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row0&&(t.column=r)}}this.moveCursorTo(t.row,t.column)},e.prototype.moveCursorFileEnd=function(){var e=this.doc.getLength()-1,t=this.doc.getLine(e).length;this.moveCursorTo(e,t)},e.prototype.moveCursorFileStart=function(){this.moveCursorTo(0,0)},e.prototype.moveCursorLongWordRight=function(){var e=this.lead.row,t=this.lead.column,n=this.doc.getLine(e),r=n.substring(t);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var i=this.session.getFoldAt(e,t,1);if(i){this.moveCursorTo(i.end.row,i.end.column);return}this.session.nonTokenRe.exec(r)&&(t+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,r=n.substring(t));if(t>=n.length){this.moveCursorTo(e,n.length),this.moveCursorRight(),e0&&this.moveCursorWordLeft();return}this.session.tokenRe.exec(s)&&(t-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(e,t)},e.prototype.$shortWordEndIndex=function(e){var t=0,n,r=/\s/,i=this.session.tokenRe;i.lastIndex=0;if(this.session.tokenRe.exec(e))t=this.session.tokenRe.lastIndex;else{while((n=e[t])&&r.test(n))t++;if(t<1){i.lastIndex=0;while((n=e[t])&&!i.test(n)){i.lastIndex=0,t++;if(r.test(n)){if(t>2){t--;break}while((n=e[t])&&r.test(n))t++;if(t>2)break}}}}return i.lastIndex=0,t},e.prototype.moveCursorShortWordRight=function(){var e=this.lead.row,t=this.lead.column,n=this.doc.getLine(e),r=n.substring(t),i=this.session.getFoldAt(e,t,1);if(i)return this.moveCursorTo(i.end.row,i.end.column);if(t==n.length){var s=this.doc.getLength();do e++,r=this.doc.getLine(e);while(e0&&/^\s*$/.test(r));t=r.length,/\s+$/.test(r)||(r="")}var s=i.stringReverse(r),o=this.$shortWordEndIndex(s);return this.moveCursorTo(e,t-o)},e.prototype.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},e.prototype.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},e.prototype.moveCursorBy=function(e,t){var n=this.session.documentToScreenPosition(this.lead.row,this.lead.column),r;t===0&&(e!==0&&(this.session.$bidiHandler.isBidiRow(n.row,this.lead.row)?(r=this.session.$bidiHandler.getPosLeft(n.column),n.column=Math.round(r/this.session.$bidiHandler.charWidths[0])):r=n.column*this.session.$bidiHandler.charWidths[0]),this.$desiredColumn?n.column=this.$desiredColumn:this.$desiredColumn=n.column);if(e!=0&&this.session.lineWidgets&&this.session.lineWidgets[this.lead.row]){var i=this.session.lineWidgets[this.lead.row];e<0?e-=i.rowsAbove||0:e>0&&(e+=i.rowCount-(i.rowsAbove||0))}var s=this.session.screenToDocumentPosition(n.row+e,n.column,r);e!==0&&t===0&&s.row===this.lead.row&&s.column===this.lead.column,this.moveCursorTo(s.row,s.column+t,t===0)},e.prototype.moveCursorToPosition=function(e){this.moveCursorTo(e.row,e.column)},e.prototype.moveCursorTo=function(e,t,n){var r=this.session.getFoldAt(e,t,1);r&&(e=r.start.row,t=r.start.column),this.$keepDesiredColumnOnChange=!0;var i=this.session.getLine(e);/[\uDC00-\uDFFF]/.test(i.charAt(t))&&i.charAt(t-1)&&(this.lead.row==e&&this.lead.column==t+1?t-=1:t+=1),this.lead.setPosition(e,t),this.$keepDesiredColumnOnChange=!1,n||(this.$desiredColumn=null)},e.prototype.moveCursorToScreen=function(e,t,n){var r=this.session.screenToDocumentPosition(e,t);this.moveCursorTo(r.row,r.column,n)},e.prototype.detach=function(){this.lead.detach(),this.anchor.detach()},e.prototype.fromOrientedRange=function(e){this.setSelectionRange(e,e.cursor==e.start),this.$desiredColumn=e.desiredColumn||this.$desiredColumn},e.prototype.toOrientedRange=function(e){var t=this.getRange();return e?(e.start.column=t.start.column,e.start.row=t.start.row,e.end.column=t.end.column,e.end.row=t.end.row):e=t,e.cursor=this.isBackwards()?e.start:e.end,e.desiredColumn=this.$desiredColumn,e},e.prototype.getRangeOfMovements=function(e){var t=this.getCursor();try{e(this);var n=this.getCursor();return o.fromPoints(t,n)}catch(r){return o.fromPoints(t,t)}finally{this.moveCursorToPosition(t)}},e.prototype.toJSON=function(){if(this.rangeCount)var e=this.ranges.map(function(e){var t=e.clone();return t.isBackwards=e.cursor==e.start,t});else{var e=this.getRange();e.isBackwards=this.isBackwards()}return e},e.prototype.fromJSON=function(e){if(e.start==undefined){if(this.rangeList&&e.length>1){this.toSingleRange(e[0]);for(var t=e.length;t--;){var n=o.fromPoints(e[t].start,e[t].end);e[t].isBackwards&&(n.cursor=n.start),this.addRange(n,!0)}return}e=e[0]}this.rangeList&&this.toSingleRange(e),this.setSelectionRange(e,e.isBackwards)},e.prototype.isEqual=function(e){if((e.length||this.rangeCount)&&e.length!=this.rangeCount)return!1;if(!e.length||!this.ranges)return this.getRange().isEqual(e);for(var t=this.ranges.length;t--;)if(!this.ranges[t].isEqual(e[t]))return!1;return!0},e}();u.prototype.setSelectionAnchor=u.prototype.setAnchor,u.prototype.getSelectionAnchor=u.prototype.getAnchor,u.prototype.setSelectionRange=u.prototype.setRange,r.implement(u.prototype,s),t.Selection=u}),define("ace/tokenizer",["require","exports","module","ace/lib/report_error"],function(e,t,n){"use strict";var r=e("./lib/report_error").reportError,i=2e3,s=function(){function e(e){this.splitRegex,this.states=e,this.regExps={},this.matchMappings={};for(var t in this.states){var n=this.states[t],r=[],i=0,s=this.matchMappings[t]={defaultToken:"text"},o="g",u=[];for(var a=0;a1?f.onMatch=this.$applyToken:f.onMatch=f.token),c>1&&(/\\\d/.test(f.regex)?l=f.regex.replace(/\\([0-9]+)/g,function(e,t){return"\\"+(parseInt(t,10)+i+1)}):(c=1,l=this.removeCapturingGroups(f.regex)),!f.splitRegex&&typeof f.token!="string"&&u.push(f)),s[i]=a,i+=c,r.push(l),f.onMatch||(f.onMatch=null)}r.length||(s[0]=0,r.push("$")),u.forEach(function(e){e.splitRegex=this.createSplitterRegexp(e.regex,o)},this),this.regExps[t]=new RegExp("("+r.join(")|(")+")|($)",o)}}return e.prototype.$setMaxTokenCount=function(e){i=e|0},e.prototype.$applyToken=function(e){var t=this.splitRegex.exec(e).slice(1),n=this.token.apply(this,t);if(typeof n=="string")return[{type:n,value:e}];var r=[];for(var i=0,s=n.length;il){var g=e.substring(l,m-v.length);h.type==p?h.value+=g:(h.type&&f.push(h),h={type:p,value:g})}for(var y=0;yi){c>2*e.length&&this.reportError("infinite loop with in ace tokenizer",{startState:t,line:e});while(l1&&n[0]!==r&&n.unshift("#tmp",r),{tokens:f,state:n.length?n:r}},e}();s.prototype.reportError=r,t.Tokenizer=s}),define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/deep_copy"],function(e,t,n){"use strict";var r=e("../lib/deep_copy").deepCopy,i;i=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}},function(){this.addRules=function(e,t){if(!t){for(var n in e)this.$rules[n]=e[n];return}for(var n in e){var r=e[n];for(var i=0;i=this.$rowTokens.length){this.$row+=1,e||(e=this.$session.getLength());if(this.$row>=e)return this.$row=e-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},e.prototype.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},e.prototype.getCurrentTokenRow=function(){return this.$row},e.prototype.getCurrentTokenColumn=function(){var e=this.$rowTokens,t=this.$tokenIndex,n=e[t].start;if(n!==undefined)return n;n=0;while(t>0)t-=1,n+=e[t].value.length;return n},e.prototype.getCurrentTokenPosition=function(){return{row:this.$row,column:this.getCurrentTokenColumn()}},e.prototype.getCurrentTokenRange=function(){var e=this.$rowTokens[this.$tokenIndex],t=this.getCurrentTokenColumn();return new r(this.$row,t,this.$row,t+e.value.length)},e}();t.TokenIterator=i}),define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../behaviour").Behaviour,s=e("../../token_iterator").TokenIterator,o=e("../../lib/lang"),u=["text","paren.rparen","rparen","paren","punctuation.operator"],a=["text","paren.rparen","rparen","paren","punctuation.operator","comment"],f,l={},c={'"':'"',"'":"'"},h=function(e){var t=-1;e.multiSelect&&(t=e.selection.index,l.rangeCount!=e.multiSelect.rangeCount&&(l={rangeCount:e.multiSelect.rangeCount}));if(l[t])return f=l[t];f=l[t]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""}},p=function(e,t,n,r){var i=e.end.row-e.start.row;return{text:n+t+r,selection:[0,e.start.column+1,i,e.end.column+(i?0:1)]}},d;d=function(e){e=e||{},this.add("braces","insertion",function(t,n,r,i,s){var u=r.getCursorPosition(),a=i.doc.getLine(u.row);if(s=="{"){h(r);var l=r.getSelectionRange(),c=i.doc.getTextRange(l);if(c!==""&&c!=="{"&&r.getWrapBehavioursEnabled())return p(l,c,"{","}");if(d.isSaneInsertion(r,i))return/[\]\}\)]/.test(a[u.column])||r.inMultiSelectMode||e.braces?(d.recordAutoInsert(r,i,"}"),{text:"{}",selection:[1,1]}):(d.recordMaybeInsert(r,i,"{"),{text:"{",selection:[1,1]})}else if(s=="}"){h(r);var v=a.substring(u.column,u.column+1);if(v=="}"){var m=i.$findOpeningBracket("}",{column:u.column+1,row:u.row});if(m!==null&&d.isAutoInsertedClosing(u,a,s))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}else{if(s=="\n"||s=="\r\n"){h(r);var g="";d.isMaybeInsertedClosing(u,a)&&(g=o.stringRepeat("}",f.maybeInsertedBrackets),d.clearMaybeInsertedClosing());var v=a.substring(u.column,u.column+1);if(v==="}"){var y=i.findMatchingBracket({row:u.row,column:u.column+1},"}");if(!y)return null;var b=this.$getIndent(i.getLine(y.row))}else{if(!g){d.clearMaybeInsertedClosing();return}var b=this.$getIndent(a)}var w=b+i.getTabString();return{text:"\n"+w+"\n"+b+g,selection:[1,w.length,1,w.length]}}d.clearMaybeInsertedClosing()}}),this.add("braces","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s=="{"){h(n);var o=r.doc.getLine(i.start.row),u=o.substring(i.end.column,i.end.column+1);if(u=="}")return i.end.column++,i;f.maybeInsertedBrackets--}}),this.add("parens","insertion",function(e,t,n,r,i){if(i=="("){h(n);var s=n.getSelectionRange(),o=r.doc.getTextRange(s);if(o!==""&&n.getWrapBehavioursEnabled())return p(s,o,"(",")");if(d.isSaneInsertion(n,r))return d.recordAutoInsert(n,r,")"),{text:"()",selection:[1,1]}}else if(i==")"){h(n);var u=n.getCursorPosition(),a=r.doc.getLine(u.row),f=a.substring(u.column,u.column+1);if(f==")"){var l=r.$findOpeningBracket(")",{column:u.column+1,row:u.row});if(l!==null&&d.isAutoInsertedClosing(u,a,i))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("parens","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s=="("){h(n);var o=r.doc.getLine(i.start.row),u=o.substring(i.start.column+1,i.start.column+2);if(u==")")return i.end.column++,i}}),this.add("brackets","insertion",function(e,t,n,r,i){if(i=="["){h(n);var s=n.getSelectionRange(),o=r.doc.getTextRange(s);if(o!==""&&n.getWrapBehavioursEnabled())return p(s,o,"[","]");if(d.isSaneInsertion(n,r))return d.recordAutoInsert(n,r,"]"),{text:"[]",selection:[1,1]}}else if(i=="]"){h(n);var u=n.getCursorPosition(),a=r.doc.getLine(u.row),f=a.substring(u.column,u.column+1);if(f=="]"){var l=r.$findOpeningBracket("]",{column:u.column+1,row:u.row});if(l!==null&&d.isAutoInsertedClosing(u,a,i))return d.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("brackets","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s=="["){h(n);var o=r.doc.getLine(i.start.row),u=o.substring(i.start.column+1,i.start.column+2);if(u=="]")return i.end.column++,i}}),this.add("string_dquotes","insertion",function(e,t,n,r,i){var s=r.$mode.$quotes||c;if(i.length==1&&s[i]){if(this.lineCommentStart&&this.lineCommentStart.indexOf(i)!=-1)return;h(n);var o=i,u=n.getSelectionRange(),a=r.doc.getTextRange(u);if(a!==""&&(a.length!=1||!s[a])&&n.getWrapBehavioursEnabled())return p(u,a,o,o);if(!a){var f=n.getCursorPosition(),l=r.doc.getLine(f.row),d=l.substring(f.column-1,f.column),v=l.substring(f.column,f.column+1),m=r.getTokenAt(f.row,f.column),g=r.getTokenAt(f.row,f.column+1);if(d=="\\"&&m&&/escape/.test(m.type))return null;var y=m&&/string|escape/.test(m.type),b=!g||/string|escape/.test(g.type),w;if(v==o)w=y!==b,w&&/string\.end/.test(g.type)&&(w=!1);else{if(y&&!b)return null;if(y&&b)return null;var E=r.$mode.tokenRe;E.lastIndex=0;var S=E.test(d);E.lastIndex=0;var x=E.test(v),T=r.$mode.$pairQuotesAfter,N=T&&T[o]&&T[o].test(d);if(!N&&S||x)return null;if(v&&!/[\s;,.})\]\\]/.test(v))return null;var C=l[f.column-2];if(!(d!=o||C!=o&&!E.test(C)))return null;w=!0}return{text:w?o+o:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(e,t,n,r,i){var s=r.$mode.$quotes||c,o=r.doc.getTextRange(i);if(!i.isMultiLine()&&s.hasOwnProperty(o)){h(n);var u=r.doc.getLine(i.start.row),a=u.substring(i.start.column+1,i.start.column+2);if(a==o)return i.end.column++,i}}),e.closeDocComment!==!1&&this.add("doc comment end","insertion",function(e,t,n,r,i){if(e==="doc-start"&&(i==="\n"||i==="\r\n")&&n.selection.isEmpty()){var s=n.getCursorPosition(),o=r.doc.getLine(s.row),u=r.doc.getLine(s.row+1),a=this.$getIndent(o);if(/\s*\*/.test(u))return/^\s*\*/.test(o)?{text:i+a+"* ",selection:[1,3+a.length,1,3+a.length]}:{text:i+a+" * ",selection:[1,3+a.length,1,3+a.length]};if(/\/\*\*/.test(o.substring(0,s.column)))return{text:i+a+" * "+i+" "+a+"*/",selection:[1,4+a.length,1,4+a.length]}}})},d.isSaneInsertion=function(e,t){var n=e.getCursorPosition(),r=new s(t,n.row,n.column);if(!this.$matchTokenType(r.getCurrentToken()||"text",u)){if(/[)}\]]/.test(e.session.getLine(n.row)[n.column]))return!0;var i=new s(t,n.row,n.column+1);if(!this.$matchTokenType(i.getCurrentToken()||"text",u))return!1}return r.stepForward(),r.getCurrentTokenRow()!==n.row||this.$matchTokenType(r.getCurrentToken()||"text",a)},d.$matchTokenType=function(e,t){return t.indexOf(e.type||e)>-1},d.recordAutoInsert=function(e,t,n){var r=e.getCursorPosition(),i=t.doc.getLine(r.row);this.isAutoInsertedClosing(r,i,f.autoInsertedLineEnd[0])||(f.autoInsertedBrackets=0),f.autoInsertedRow=r.row,f.autoInsertedLineEnd=n+i.substr(r.column),f.autoInsertedBrackets++},d.recordMaybeInsert=function(e,t,n){var r=e.getCursorPosition(),i=t.doc.getLine(r.row);this.isMaybeInsertedClosing(r,i)||(f.maybeInsertedBrackets=0),f.maybeInsertedRow=r.row,f.maybeInsertedLineStart=i.substr(0,r.column)+n,f.maybeInsertedLineEnd=i.substr(r.column),f.maybeInsertedBrackets++},d.isAutoInsertedClosing=function(e,t,n){return f.autoInsertedBrackets>0&&e.row===f.autoInsertedRow&&n===f.autoInsertedLineEnd[0]&&t.substr(e.column)===f.autoInsertedLineEnd},d.isMaybeInsertedClosing=function(e,t){return f.maybeInsertedBrackets>0&&e.row===f.maybeInsertedRow&&t.substr(e.column)===f.maybeInsertedLineEnd&&t.substr(0,e.column)==f.maybeInsertedLineStart},d.popAutoInsertedClosing=function(){f.autoInsertedLineEnd=f.autoInsertedLineEnd.substr(1),f.autoInsertedBrackets--},d.clearMaybeInsertedClosing=function(){f&&(f.maybeInsertedBrackets=0,f.maybeInsertedRow=-1)},r.inherits(d,i),t.CstyleBehaviour=d}),define("ace/unicode",["require","exports","module"],function(e,t,n){"use strict";var r=[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],i=0,s=[];for(var o=0;o2?r%f!=f-1:r%f==0}}var E=Infinity;w(function(e,t){var n=e.search(/\S/);n!==-1?(ne.length&&(E=e.length)}),u==Infinity&&(u=E,s=!1,o=!1),l&&u%f!=0&&(u=Math.floor(u/f)*f),w(o?m:v)},this.toggleBlockComment=function(e,t,n,r){var i=this.blockComment;if(!i)return;!i.start&&i[0]&&(i=i[0]);var s=new f(t,r.row,r.column),o=s.getCurrentToken(),u=t.selection,a=t.selection.toOrientedRange(),c,h;if(o&&/comment/.test(o.type)){var p,d;while(o&&/comment/.test(o.type)){var v=o.value.indexOf(i.start);if(v!=-1){var m=s.getCurrentTokenRow(),g=s.getCurrentTokenColumn()+v;p=new l(m,g,m,g+i.start.length);break}o=s.stepBackward()}var s=new f(t,r.row,r.column),o=s.getCurrentToken();while(o&&/comment/.test(o.type)){var v=o.value.indexOf(i.end);if(v!=-1){var m=s.getCurrentTokenRow(),g=s.getCurrentTokenColumn()+v;d=new l(m,g,m,g+i.end.length);break}o=s.stepForward()}d&&t.remove(d),p&&(t.remove(p),c=p.start.row,h=-i.start.length)}else h=i.start.length,c=n.start.row,t.insert(n.end,i.end),t.insert(n.start,i.start);a.start.row==c&&(a.start.column+=h),a.end.row==c&&(a.end.column+=h),t.selection.fromOrientedRange(a)},this.getNextLineIndent=function(e,t,n){return this.$getIndent(t)},this.checkOutdent=function(e,t,n){return!1},this.autoOutdent=function(e,t,n){},this.$getIndent=function(e){return e.match(/^\s*/)[0]},this.createWorker=function(e){return null},this.createModeDelegates=function(e){this.$embeds=[],this.$modes={};for(var t in e)if(e[t]){var n=e[t],i=n.prototype.$id,s=r.$modes[i];s||(r.$modes[i]=s=new n),r.$modes[t]||(r.$modes[t]=s),this.$embeds.push(t),this.$modes[t]=s}var o=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"],u=function(e){(function(t){var n=o[e],r=t[n];t[o[e]]=function(){return this.$delegator(n,arguments,r)}})(a)},a=this;for(var t=0;t=0&&t.row=0&&t.column<=e[t.row].length}function s(e,t){t.action!="insert"&&t.action!="remove"&&r(t,"delta.action must be 'insert' or 'remove'"),t.lines instanceof Array||r(t,"delta.lines must be an Array"),(!t.start||!t.end)&&r(t,"delta.start/end must be an present");var n=t.start;i(e,t.start)||r(t,"delta.start must be contained in document");var s=t.end;t.action=="remove"&&!i(e,s)&&r(t,"delta.end must contained in document for 'remove' actions");var o=s.row-n.row,u=s.column-(o==0?n.column:0);(o!=t.lines.length-1||t.lines[o].length!=u)&&r(t,"delta.range must match delta lines")}t.applyDelta=function(e,t,n){var r=t.start.row,i=t.start.column,s=e[r]||"";switch(t.action){case"insert":var o=t.lines;if(o.length===1)e[r]=s.substring(0,i)+t.lines[0]+s.substring(i);else{var u=[r,1].concat(t.lines);e.splice.apply(e,u),e[r]=s.substring(0,i)+e[r],e[r+t.lines.length-1]+=s.substring(i)}break;case"remove":var a=t.end.column,f=t.end.row;r===f?e[r]=s.substring(0,i)+s.substring(a):e.splice(r,f-r+1,s.substring(0,i)+e[f].substring(a))}}}),define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){"use strict";function o(e,t,n){var r=n?e.column<=t.column:e.columnthis.row)return;var t=u(e,{row:this.row,column:this.column},this.$insertRight);this.setPosition(t.row,t.column,!0)},e.prototype.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._signal("change",{old:i,value:r})},e.prototype.detach=function(){this.document.off("change",this.$onChange)},e.prototype.attach=function(e){this.document=e||this.document,this.document.on("change",this.$onChange)},e.prototype.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n},e}();s.prototype.$insertRight=!1,r.implement(s.prototype,i),t.Anchor=s}),define("ace/document",["require","exports","module","ace/lib/oop","ace/apply_delta","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./apply_delta").applyDelta,s=e("./lib/event_emitter").EventEmitter,o=e("./range").Range,u=e("./anchor").Anchor,a=function(){function e(e){this.$lines=[""],e.length===0?this.$lines=[""]:Array.isArray(e)?this.insertMergedLines({row:0,column:0},e):this.insert({row:0,column:0},e)}return e.prototype.setValue=function(e){var t=this.getLength()-1;this.remove(new o(0,0,t,this.getLine(t).length)),this.insert({row:0,column:0},e||"")},e.prototype.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},e.prototype.createAnchor=function(e,t){return new u(this,e,t)},e.prototype.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n",this._signal("changeNewLineMode")},e.prototype.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},e.prototype.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e,this._signal("changeNewLineMode")},e.prototype.getNewLineMode=function(){return this.$newLineMode},e.prototype.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},e.prototype.getLine=function(e){return this.$lines[e]||""},e.prototype.getLines=function(e,t){return this.$lines.slice(e,t+1)},e.prototype.getAllLines=function(){return this.getLines(0,this.getLength())},e.prototype.getLength=function(){return this.$lines.length},e.prototype.getTextRange=function(e){return this.getLinesForRange(e).join(this.getNewLineCharacter())},e.prototype.getLinesForRange=function(e){var t;if(e.start.row===e.end.row)t=[this.getLine(e.start.row).substring(e.start.column,e.end.column)];else{t=this.getLines(e.start.row,e.end.row),t[0]=(t[0]||"").substring(e.start.column);var n=t.length-1;e.end.row-e.start.row==n&&(t[n]=t[n].substring(0,e.end.column))}return t},e.prototype.insertLines=function(e,t){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(e,t)},e.prototype.removeLines=function(e,t){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(e,t)},e.prototype.insertNewLine=function(e){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(e,["",""])},e.prototype.insert=function(e,t){return this.getLength()<=1&&this.$detectNewLine(t),this.insertMergedLines(e,this.$split(t))},e.prototype.insertInLine=function(e,t){var n=this.clippedPos(e.row,e.column),r=this.pos(e.row,e.column+t.length);return this.applyDelta({start:n,end:r,action:"insert",lines:[t]},!0),this.clonePos(r)},e.prototype.clippedPos=function(e,t){var n=this.getLength();e===undefined?e=n:e<0?e=0:e>=n&&(e=n-1,t=undefined);var r=this.getLine(e);return t==undefined&&(t=r.length),t=Math.min(Math.max(t,0),r.length),{row:e,column:t}},e.prototype.clonePos=function(e){return{row:e.row,column:e.column}},e.prototype.pos=function(e,t){return{row:e,column:t}},e.prototype.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):(e.row=Math.max(0,e.row),e.column=Math.min(Math.max(e.column,0),this.getLine(e.row).length)),e},e.prototype.insertFullLines=function(e,t){e=Math.min(Math.max(e,0),this.getLength());var n=0;e0,r=t=0&&this.applyDelta({start:this.pos(e,this.getLine(e).length),end:this.pos(e+1,0),action:"remove",lines:["",""]})},e.prototype.replace=function(e,t){e instanceof o||(e=o.fromPoints(e.start,e.end));if(t.length===0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);var n;return t?n=this.insert(e.start,t):n=e.start,n},e.prototype.applyDeltas=function(e){for(var t=0;t=0;t--)this.revertDelta(e[t])},e.prototype.applyDelta=function(e,t){var n=e.action=="insert";if(n?e.lines.length<=1&&!e.lines[0]:!o.comparePoints(e.start,e.end))return;n&&e.lines.length>2e4?this.$splitAndapplyLargeDelta(e,2e4):(i(this.$lines,e,t),this._signal("change",e))},e.prototype.$safeApplyDelta=function(e){var t=this.$lines.length;(e.action=="remove"&&e.start.row20){n.running=setTimeout(n.$worker,20);break}}n.currentLine=t,r==-1&&(r=t),s<=r&&n.fireUpdateEvent(s,r)}}return e.prototype.setTokenizer=function(e){this.tokenizer=e,this.lines=[],this.states=[],this.start(0)},e.prototype.setDocument=function(e){this.doc=e,this.lines=[],this.states=[],this.stop()},e.prototype.fireUpdateEvent=function(e,t){var n={first:e,last:t};this._signal("update",{data:n})},e.prototype.start=function(e){this.currentLine=Math.min(e||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},e.prototype.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},e.prototype.$updateOnChange=function(e){var t=e.start.row,n=e.end.row-t;if(n===0)this.lines[t]=null;else if(e.action=="remove")this.lines.splice(t,n+1,null),this.states.splice(t,n+1,null);else{var r=Array(n+1);r.unshift(t,1),this.lines.splice.apply(this.lines,r),this.states.splice.apply(this.states,r)}this.currentLine=Math.min(t,this.currentLine,this.doc.getLength()),this.stop()},e.prototype.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},e.prototype.getTokens=function(e){return this.lines[e]||this.$tokenizeRow(e)},e.prototype.getState=function(e){return this.currentLine==e&&this.$tokenizeRow(e),this.states[e]||"start"},e.prototype.$tokenizeRow=function(e){var t=this.doc.getLine(e),n=this.states[e-1],r=this.tokenizer.getLineTokens(t,n,e);return this.states[e]+""!=r.state+""?(this.states[e]=r.state,this.lines[e+1]=null,this.currentLine>e+1&&(this.currentLine=e+1)):this.currentLine==e&&(this.currentLine=e+1),this.lines[e]=r.tokens},e.prototype.cleanup=function(){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.removeAllListeners()},e}();r.implement(s.prototype,i),t.BackgroundTokenizer=s}),define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/range"],function(e,t,n){"use strict";var r=e("./lib/lang"),i=e("./range").Range,s=function(){function e(e,t,n){n===void 0&&(n="text"),this.setRegexp(e),this.clazz=t,this.type=n}return e.prototype.setRegexp=function(e){if(this.regExp+""==e+"")return;this.regExp=e,this.cache=[]},e.prototype.update=function(e,t,n,s){if(!this.regExp)return;var o=s.firstRow,u=s.lastRow,a={};for(var f=o;f<=u;f++){var l=this.cache[f];l==null&&(l=r.getMatchOffsets(n.getLine(f),this.regExp),l.length>this.MAX_RANGES&&(l=l.slice(0,this.MAX_RANGES)),l=l.map(function(e){return new i(f,e.offset,f,e.offset+e.length)}),this.cache[f]=l.length?l:"");for(var c=l.length;c--;){var h=l[c].toScreenRange(n),p=h.toString();if(a[p])continue;a[p]=!0,t.drawSingleLineMarker(e,h,this.clazz,s)}}},e}();s.prototype.MAX_RANGES=500,t.SearchHighlight=s}),define("ace/undomanager",["require","exports","module","ace/range"],function(e,t,n){"use strict";function i(e,t){for(var n=t;n--;){var r=e[n];if(r&&!r[0].ignore){while(n0){a.row+=i,a.column+=a.row==r.row?s:0;continue}!t&&l<=0&&(a.row=n.row,a.column=n.column,l===0&&(a.bias=1))}}function f(e){return{row:e.row,column:e.column}}function l(e){return{start:f(e.start),end:f(e.end),action:e.action,lines:e.lines.slice()}}function c(e){e=e||this;if(Array.isArray(e))return e.map(c).join("\n");var t="";e.action?(t=e.action=="insert"?"+":"-",t+="["+e.lines+"]"):e.value&&(Array.isArray(e.value)?t=e.value.map(h).join("\n"):t=h(e.value)),e.start&&(t+=h(e));if(e.id||e.rev)t+=" ("+(e.id||e.rev)+")";return t}function h(e){return e.start.row+":"+e.start.column+"=>"+e.end.row+":"+e.end.column}function p(e,t){var n=e.action=="insert",r=t.action=="insert";if(n&&r)if(o(t.start,e.end)>=0)m(t,e,-1);else{if(!(o(t.start,e.start)<=0))return null;m(e,t,1)}else if(n&&!r)if(o(t.start,e.end)>=0)m(t,e,-1);else{if(!(o(t.end,e.start)<=0))return null;m(e,t,-1)}else if(!n&&r)if(o(t.start,e.start)>=0)m(t,e,1);else{if(!(o(t.start,e.start)<=0))return null;m(e,t,1)}else if(!n&&!r)if(o(t.start,e.start)>=0)m(t,e,1);else{if(!(o(t.end,e.start)<=0))return null;m(e,t,-1)}return[t,e]}function d(e,t){for(var n=e.length;n--;)for(var r=0;r=0?m(e,t,-1):o(e.start,t.start)<=0?m(t,e,1):(m(e,s.fromPoints(t.start,e.start),-1),m(t,e,1));else if(!n&&r)o(t.start,e.end)>=0?m(t,e,-1):o(t.start,e.start)<=0?m(e,t,1):(m(t,s.fromPoints(e.start,t.start),-1),m(e,t,1));else if(!n&&!r)if(o(t.start,e.end)>=0)m(t,e,-1);else{if(!(o(t.end,e.start)<=0)){var i,u;return o(e.start,t.start)<0&&(i=e,e=y(e,t.start)),o(e.end,t.end)>0&&(u=y(e,t.end)),g(t.end,e.start,e.end,-1),u&&!i&&(e.lines=u.lines,e.start=u.start,e.end=u.end,u=e),[t,i,u].filter(Boolean)}m(e,t,-1)}return[t,e]}function m(e,t,n){g(e.start,t.start,t.end,n),g(e.end,t.start,t.end,n)}function g(e,t,n,r){e.row==(r==1?t:n).row&&(e.column+=r*(n.column-t.column)),e.row+=r*(n.row-t.row)}function y(e,t){var n=e.lines,r=e.end;e.end=f(t);var i=e.end.row-e.start.row,s=n.splice(i,n.length),o=i?t.column:t.column-e.start.column;n.push(s[0].substring(0,o)),s[0]=s[0].substr(o);var u={start:f(t),end:r,lines:s,action:e.action};return u}function b(e,t){t=l(t);for(var n=e.length;n--;){var r=e[n];for(var i=0;ithis.$undoDepth-1&&this.$undoStack.splice(0,r-this.$undoDepth+1),this.$undoStack.push(this.lastDeltas),e.id=this.$rev=++this.$maxRev}if(e.action=="remove"||e.action=="insert")this.$lastDelta=e;this.lastDeltas.push(e)},e.prototype.addSelection=function(e,t){this.selections.push({value:e,rev:t||this.$rev})},e.prototype.startNewGroup=function(){return this.lastDeltas=null,this.$rev},e.prototype.markIgnored=function(e,t){t==null&&(t=this.$rev+1);var n=this.$undoStack;for(var r=n.length;r--;){var i=n[r][0];if(i.id<=e)break;i.id0},e.prototype.canRedo=function(){return this.$redoStack.length>0},e.prototype.bookmark=function(e){e==undefined&&(e=this.$rev),this.mark=e},e.prototype.isAtBookmark=function(){return this.$rev===this.mark},e.prototype.toJSON=function(){return{$redoStack:this.$redoStack,$undoStack:this.$undoStack}},e.prototype.fromJSON=function(e){this.reset(),this.$undoStack=e.$undoStack,this.$redoStack=e.$redoStack},e.prototype.$prettyPrint=function(e){return e?c(e):c(this.$undoStack)+"\n---\n"+c(this.$redoStack)},e}();r.prototype.hasUndo=r.prototype.canUndo,r.prototype.hasRedo=r.prototype.canRedo,r.prototype.isClean=r.prototype.isAtBookmark,r.prototype.markClean=r.prototype.bookmark;var s=e("./range").Range,o=s.comparePoints,u=s.comparePoints;t.UndoManager=r}),define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../range").Range,i=function(){function e(e,t){this.foldData=e,Array.isArray(t)?this.folds=t:t=this.folds=[t];var n=t[t.length-1];this.range=new r(t[0].start.row,t[0].start.column,n.end.row,n.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(e){e.setFoldLine(this)},this)}return e.prototype.shiftRow=function(e){this.start.row+=e,this.end.row+=e,this.folds.forEach(function(t){t.start.row+=e,t.end.row+=e})},e.prototype.addFold=function(e){if(e.sameRow){if(e.start.rowthis.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(e),this.folds.sort(function(e,t){return-e.range.compareEnd(t.start.row,t.start.column)}),this.range.compareEnd(e.start.row,e.start.column)>0?(this.end.row=e.end.row,this.end.column=e.end.column):this.range.compareStart(e.end.row,e.end.column)<0&&(this.start.row=e.start.row,this.start.column=e.start.column)}else if(e.start.row==this.end.row)this.folds.push(e),this.end.row=e.end.row,this.end.column=e.end.column;else{if(e.end.row!=this.start.row)throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");this.folds.unshift(e),this.start.row=e.start.row,this.start.column=e.start.column}e.foldLine=this},e.prototype.containsRow=function(e){return e>=this.start.row&&e<=this.end.row},e.prototype.walk=function(e,t,n){var r=0,i=this.folds,s,o,u,a=!0;t==null&&(t=this.end.row,n=this.end.column);for(var f=0;f0)continue;var a=i(e,o.start);return u===0?t&&a!==0?-s-2:s:a>0||a===0&&!t?s:-s-1}return-s-1},e.prototype.add=function(e){var t=!e.isEmpty(),n=this.pointIndex(e.start,t);n<0&&(n=-n-1);var r=this.pointIndex(e.end,t,n);return r<0?r=-r-1:r++,this.ranges.splice(n,r-n,e)},e.prototype.addList=function(e){var t=[];for(var n=e.length;n--;)t.push.apply(t,this.add(e[n]));return t},e.prototype.substractPoint=function(e){var t=this.pointIndex(e);if(t>=0)return this.ranges.splice(t,1)},e.prototype.merge=function(){var e=[],t=this.ranges;t=t.sort(function(e,t){return i(e.start,t.start)});var n=t[0],r;for(var s=1;s=0},e.prototype.containsPoint=function(e){return this.pointIndex(e)>=0},e.prototype.rangeAtPoint=function(e){var t=this.pointIndex(e);if(t>=0)return this.ranges[t]},e.prototype.clipRows=function(e,t){var n=this.ranges;if(n[0].start.row>t||n[n.length-1].start.row=r)break}if(e.action=="insert"){var f=i-r,l=-t.column+n.column;for(;or)break;a.start.row==r&&a.start.column>=t.column&&(a.start.column==t.column&&this.$bias<=0||(a.start.column+=l,a.start.row+=f));if(a.end.row==r&&a.end.column>=t.column){if(a.end.column==t.column&&this.$bias<0)continue;a.end.column==t.column&&l>0&&oa.start.column&&a.end.column==s[o+1].start.column&&(a.end.column-=l),a.end.column+=l,a.end.row+=f}}}else{var f=r-i,l=t.column-n.column;for(;oi)break;if(a.end.rowt.column)a.end.column=t.column,a.end.row=t.row}else a.end.column+=l,a.end.row+=f;else a.end.row>i&&(a.end.row+=f);if(a.start.rowt.column)a.start.column=t.column,a.start.row=t.row}else a.start.column+=l,a.start.row+=f;else a.start.row>i&&(a.start.row+=f)}}if(f!=0&&o=e)return i;if(i.end.row>e)return null}return null},this.getNextFoldLine=function(e,t){var n=this.$foldData,r=0;t&&(r=n.indexOf(t)),r==-1&&(r=0);for(r;r=e)return i}return null},this.getFoldedRowCount=function(e,t){var n=this.$foldData,r=t-e+1;for(var i=0;i=t){u=e?r-=t-u:r=0);break}o>=e&&(u>=e?r-=o-u:r-=o-e+1)}return r},this.$addFoldLine=function(e){return this.$foldData.push(e),this.$foldData.sort(function(e,t){return e.start.row-t.start.row}),e},this.addFold=function(e,t){var n=this.$foldData,r=!1,o;e instanceof s?o=e:(o=new s(t,e),o.collapseChildren=t.collapseChildren),this.$clipRangeToDocument(o.range);var u=o.start.row,a=o.start.column,f=o.end.row,l=o.end.column,c=this.getFoldAt(u,a,1),h=this.getFoldAt(f,l,-1);if(c&&h==c)return c.addSubFold(o);c&&!c.range.isStart(u,a)&&this.removeFold(c),h&&!h.range.isEnd(f,l)&&this.removeFold(h);var p=this.getFoldsInRange(o.range);p.length>0&&(this.removeFolds(p),o.collapseChildren||p.forEach(function(e){o.addSubFold(e)}));for(var d=0;d0&&this.foldAll(e.start.row+1,e.end.row,e.collapseChildren-1),e.subFolds=[]},this.expandFolds=function(e){e.forEach(function(e){this.expandFold(e)},this)},this.unfold=function(e,t){var n,i;if(e==null)n=new r(0,0,this.getLength(),0),t==null&&(t=!0);else if(typeof e=="number")n=new r(e,0,e,this.getLine(e).length);else if("row"in e)n=r.fromPoints(e,e);else{if(Array.isArray(e))return i=[],e.forEach(function(e){i=i.concat(this.unfold(e))},this),i;n=e}i=this.getFoldsInRangeList(n);var s=i;while(i.length==1&&r.comparePoints(i[0].start,n.start)<0&&r.comparePoints(i[0].end,n.end)>0)this.expandFolds(i),i=this.getFoldsInRangeList(n);t!=0?this.removeFolds(i):this.expandFolds(i);if(s.length)return s},this.isRowFolded=function(e,t){return!!this.getFoldLine(e,t)},this.getRowFoldEnd=function(e,t){var n=this.getFoldLine(e,t);return n?n.end.row:e},this.getRowFoldStart=function(e,t){var n=this.getFoldLine(e,t);return n?n.start.row:e},this.getFoldDisplayLine=function(e,t,n,r,i){r==null&&(r=e.start.row),i==null&&(i=0),t==null&&(t=e.end.row),n==null&&(n=this.getLine(t).length);var s=this.doc,o="";return e.walk(function(e,t,n,u){if(tl)break}while(s&&a.test(s.type)&&!/^comment.start/.test(s.type));s=i.stepBackward()}else s=i.getCurrentToken();return f.end.row=i.getCurrentTokenRow(),f.end.column=i.getCurrentTokenColumn(),/^comment.end/.test(s.type)||(f.end.column+=s.value.length-2),f}},this.foldAll=function(e,t,n,r){n==undefined&&(n=1e5);var i=this.foldWidgets;if(!i)return;t=t||this.getLength(),e=e||0;for(var s=e;s=e&&(s=o.end.row,o.collapseChildren=n,this.addFold("...",o))}},this.foldToLevel=function(e){this.foldAll();while(e-->0)this.unfold(null,!1)},this.foldAllComments=function(){var e=this;this.foldAll(null,null,null,function(t){var n=e.getTokens(t);for(var r=0;r=0){var s=n[r];s==null&&(s=n[r]=this.getFoldWidget(r));if(s=="start"){var o=this.getFoldWidgetRange(r);i||(i=o);if(o&&o.end.row>=e)break}r--}return{range:r!==-1&&o,firstRange:i}},this.onFoldWidgetClick=function(e,t){t instanceof u&&(t=t.domEvent);var n={children:t.shiftKey,all:t.ctrlKey||t.metaKey,siblings:t.altKey},r=this.$toggleFoldWidget(e,n);if(!r){var i=t.target||t.srcElement;i&&/ace_fold-widget/.test(i.className)&&(i.className+=" ace_invalid")}},this.$toggleFoldWidget=function(e,t){if(!this.getFoldWidget)return;var n=this.getFoldWidget(e),r=this.getLine(e),i=n==="end"?-1:1,s=this.getFoldAt(e,i===-1?0:r.length,i);if(s)return t.children||t.all?this.removeFold(s):this.expandFold(s),s;var o=this.getFoldWidgetRange(e,!0);if(o&&!o.isMultiLine()){s=this.getFoldAt(o.start.row,o.start.column,1);if(s&&o.isEqual(s.range))return this.removeFold(s),s}if(t.siblings){var u=this.getParentFoldRangeData(e);if(u.range)var a=u.range.start.row+1,f=u.range.end.row;this.foldAll(a,f,t.all?1e4:0)}else t.children?(f=o?o.end.row:this.getLength(),this.foldAll(e+1,f,t.all?1e4:0)):o&&(t.all&&(o.collapseChildren=1e4),this.addFold("...",o));return o},this.toggleFoldWidget=function(e){var t=this.selection.getCursor().row;t=this.getRowFoldStart(t);var n=this.$toggleFoldWidget(t,{});if(n)return;var r=this.getParentFoldRangeData(t,!0);n=r.range||r.firstRange;if(n){t=n.start.row;var i=this.getFoldAt(t,this.getLine(t).length,1);i?this.removeFold(i):this.addFold("...",n)}},this.updateFoldWidgets=function(e){var t=e.start.row,n=e.end.row-t;if(n===0)this.foldWidgets[t]=null;else if(e.action=="remove")this.foldWidgets.splice(t,n+1,null);else{var r=Array(n+1);r.unshift(t,1),this.foldWidgets.splice.apply(this.foldWidgets,r)}},this.tokenizerUpdateFoldWidgets=function(e){var t=e.data;t.first!=t.last&&this.foldWidgets.length>t.first&&this.foldWidgets.splice(t.first,this.foldWidgets.length)}}var r=e("../range").Range,i=e("./fold_line").FoldLine,s=e("./fold").Fold,o=e("../token_iterator").TokenIterator,u=e("../mouse/mouse_event").MouseEvent;t.Folding=a}),define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(e,t,n){"use strict";function s(){this.findMatchingBracket=function(e,t){if(e.column==0)return null;var n=t||this.getLine(e.row).charAt(e.column-1);if(n=="")return null;var r=n.match(/([\(\[\{])|([\)\]\}])/);return r?r[1]?this.$findClosingBracket(r[1],e):this.$findOpeningBracket(r[2],e):null},this.getBracketRange=function(e){var t=this.getLine(e.row),n=!0,r,s=t.charAt(e.column-1),o=s&&s.match(/([\(\[\{])|([\)\]\}])/);o||(s=t.charAt(e.column),e={row:e.row,column:e.column+1},o=s&&s.match(/([\(\[\{])|([\)\]\}])/),n=!1);if(!o)return null;if(o[1]){var u=this.$findClosingBracket(o[1],e);if(!u)return null;r=i.fromPoints(e,u),n||(r.end.column++,r.start.column--),r.cursor=r.end}else{var u=this.$findOpeningBracket(o[2],e);if(!u)return null;r=i.fromPoints(u,e),n||(r.start.column++,r.end.column--),r.cursor=r.start}return r},this.getMatchingBracketRanges=function(e,t){var n=this.getLine(e.row),r=/([\(\[\{])|([\)\]\}])/,s=!t&&n.charAt(e.column-1),o=s&&s.match(r);o||(s=(t===undefined||t)&&n.charAt(e.column),e={row:e.row,column:e.column+1},o=s&&s.match(r));if(!o)return null;var u=new i(e.row,e.column-1,e.row,e.column),a=o[1]?this.$findClosingBracket(o[1],e):this.$findOpeningBracket(o[2],e);if(!a)return[u];var f=new i(a.row,a.column,a.row,a.column+1);return[u,f]},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{","<":">",">":"<"},this.$findOpeningBracket=function(e,t,n){var i=this.$brackets[e],s=1,o=new r(this,t.row,t.column),u=o.getCurrentToken();u||(u=o.stepForward());if(!u)return;n||(n=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end)\b/,"(?:start|begin|end)").replace(/-close\b/,"-(close|open)")+")+"));var a=t.column-o.getCurrentTokenColumn()-2,f=u.value;for(;;){while(a>=0){var l=f.charAt(a);if(l==i){s-=1;if(s==0)return{row:o.getCurrentTokenRow(),column:a+o.getCurrentTokenColumn()}}else l==e&&(s+=1);a-=1}do u=o.stepBackward();while(u&&!n.test(u.type));if(u==null)break;f=u.value,a=f.length-1}return null},this.$findClosingBracket=function(e,t,n){var i=this.$brackets[e],s=1,o=new r(this,t.row,t.column),u=o.getCurrentToken();u||(u=o.stepForward());if(!u)return;n||(n=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:start|begin)\b/,"(?:start|begin|end)").replace(/-open\b/,"-(close|open)")+")+"));var a=t.column-o.getCurrentTokenColumn();for(;;){var f=u.value,l=f.length;while(a"?r=!0:t.type.indexOf("tag-name")!==-1&&(n=!0));while(t&&!n);return t},this.$findClosingTag=function(e,t){var n,r=t.value,s=t.value,o=0,u=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1);t=e.stepForward();var a=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+t.value.length),f=!1;do{n=t,t=e.stepForward();if(t){if(t.value===">"&&!f){var l=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1);f=!0}if(t.type.indexOf("tag-name")!==-1){r=t.value;if(s===r)if(n.value==="<")o++;else if(n.value==="")return;var p=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1)}}}else if(s===r&&t.value==="/>"){o--;if(o<0)var c=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+2),h=c,p=h,l=new i(a.end.row,a.end.column,a.end.row,a.end.column+1)}}}while(t&&o>=0);if(u&&l&&c&&p&&a&&h)return{openTag:new i(u.start.row,u.start.column,l.end.row,l.end.column),closeTag:new i(c.start.row,c.start.column,p.end.row,p.end.column),openTagName:a,closeTagName:h}},this.$findOpeningTag=function(e,t){var n=e.getCurrentToken(),r=t.value,s=0,o=e.getCurrentTokenRow(),u=e.getCurrentTokenColumn(),a=u+2,f=new i(o,u,o,a);e.stepForward();var l=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+t.value.length);t=e.stepForward();if(!t||t.value!==">")return;var c=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1);e.stepBackward(),e.stepBackward();do{t=n,o=e.getCurrentTokenRow(),u=e.getCurrentTokenColumn(),a=u+t.value.length,n=e.stepBackward();if(t)if(t.type.indexOf("tag-name")!==-1){if(r===t.value)if(n.value==="<"){s++;if(s>0){var h=new i(o,u,o,a),p=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1);do t=e.stepForward();while(t&&t.value!==">");var d=new i(e.getCurrentTokenRow(),e.getCurrentTokenColumn(),e.getCurrentTokenRow(),e.getCurrentTokenColumn()+1)}}else n.value===""){var v=0,m=n;while(m){if(m.type.indexOf("tag-name")!==-1&&m.value===r){s--;break}if(m.value==="<")break;m=e.stepBackward(),v++}for(var g=0;g=4352&&e<=4447||e>=4515&&e<=4519||e>=4602&&e<=4607||e>=9001&&e<=9002||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12283||e>=12288&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12589||e>=12593&&e<=12686||e>=12688&&e<=12730||e>=12736&&e<=12771||e>=12784&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=13054||e>=13056&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=55216&&e<=55238||e>=55243&&e<=55291||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=65281&&e<=65376||e>=65504&&e<=65510}var r=e("./lib/oop"),i=e("./lib/lang"),s=e("./bidihandler").BidiHandler,o=e("./config"),u=e("./lib/event_emitter").EventEmitter,a=e("./selection").Selection,f=e("./mode/text").Mode,l=e("./range").Range,c=e("./document").Document,h=e("./background_tokenizer").BackgroundTokenizer,p=e("./search_highlight").SearchHighlight,d=e("./undomanager").UndoManager,v=function(){function e(t,n){this.doc,this.$breakpoints=[],this.$decorations=[],this.$frontMarkers={},this.$backMarkers={},this.$markerId=1,this.$undoSelect=!0,this.$foldData=[],this.id="session"+ ++e.$uid,this.$foldData.toString=function(){return this.join("\n")},this.bgTokenizer=new h((new f).getTokenizer(),this);var r=this;this.bgTokenizer.on("update",function(e){r._signal("tokenizerUpdate",e)}),this.on("changeFold",this.onChangeFold.bind(this)),this.$onChange=this.onChange.bind(this);if(typeof t!="object"||!t.getLine)t=new c(t);this.setDocument(t),this.selection=new a(this),this.$bidiHandler=new s(this),o.resetOptions(this),this.setMode(n),o._signal("session",this),this.destroyed=!1}return e.prototype.setDocument=function(e){this.doc&&this.doc.off("change",this.$onChange),this.doc=e,e.on("change",this.$onChange,!0),this.bgTokenizer.setDocument(this.getDocument()),this.resetCaches()},e.prototype.getDocument=function(){return this.doc},e.prototype.$resetRowCache=function(e){if(!e){this.$docRowCache=[],this.$screenRowCache=[];return}var t=this.$docRowCache.length,n=this.$getRowCacheIndex(this.$docRowCache,e)+1;t>n&&(this.$docRowCache.splice(n,t),this.$screenRowCache.splice(n,t))},e.prototype.$getRowCacheIndex=function(e,t){var n=0,r=e.length-1;while(n<=r){var i=n+r>>1,s=e[i];if(t>s)n=i+1;else{if(!(t=t)break}return r=n[s],r?(r.index=s,r.start=i-r.value.length,r):null},e.prototype.setUndoManager=function(e){this.$undoManager=e,this.$informUndoManager&&this.$informUndoManager.cancel();if(e){var t=this;e.addSession(this),this.$syncInformUndoManager=function(){t.$informUndoManager.cancel(),t.mergeUndoDeltas=!1},this.$informUndoManager=i.delayedCall(this.$syncInformUndoManager)}else this.$syncInformUndoManager=function(){}},e.prototype.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},e.prototype.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},e.prototype.getTabString=function(){return this.getUseSoftTabs()?i.stringRepeat(" ",this.getTabSize()):" "},e.prototype.setUseSoftTabs=function(e){this.setOption("useSoftTabs",e)},e.prototype.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},e.prototype.setTabSize=function(e){this.setOption("tabSize",e)},e.prototype.getTabSize=function(){return this.$tabSize},e.prototype.isTabStop=function(e){return this.$useSoftTabs&&e.column%this.$tabSize===0},e.prototype.setNavigateWithinSoftTabs=function(e){this.setOption("navigateWithinSoftTabs",e)},e.prototype.getNavigateWithinSoftTabs=function(){return this.$navigateWithinSoftTabs},e.prototype.setOverwrite=function(e){this.setOption("overwrite",e)},e.prototype.getOverwrite=function(){return this.$overwrite},e.prototype.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},e.prototype.addGutterDecoration=function(e,t){this.$decorations[e]||(this.$decorations[e]=""),this.$decorations[e]+=" "+t,this._signal("changeBreakpoint",{})},e.prototype.removeGutterDecoration=function(e,t){this.$decorations[e]=(this.$decorations[e]||"").replace(" "+t,""),this._signal("changeBreakpoint",{})},e.prototype.getBreakpoints=function(){return this.$breakpoints},e.prototype.setBreakpoints=function(e){this.$breakpoints=[];for(var t=0;t0&&(r=!!n.charAt(t-1).match(this.tokenRe)),r||(r=!!n.charAt(t).match(this.tokenRe));if(r)var i=this.tokenRe;else if(/^\s+$/.test(n.slice(t-1,t+1)))var i=/\s/;else var i=this.nonTokenRe;var s=t;if(s>0){do s--;while(s>=0&&n.charAt(s).match(i));s++}var o=t;while(oe&&(e=t.screenWidth)}),this.lineWidgetWidth=e},e.prototype.$computeWidth=function(e){if(this.$modified||e){this.$modified=!1;if(this.$useWrapMode)return this.screenWidth=this.$wrapLimit;var t=this.doc.getAllLines(),n=this.$rowLengthCache,r=0,i=0,s=this.$foldData[i],o=s?s.start.row:Infinity,u=t.length;for(var a=0;ao){a=s.end.row+1;if(a>=u)break;s=this.$foldData[i++],o=s?s.start.row:Infinity}n[a]==null&&(n[a]=this.$getStringScreenWidth(t[a])[0]),n[a]>r&&(r=n[a])}this.screenWidth=r}},e.prototype.getLine=function(e){return this.doc.getLine(e)},e.prototype.getLines=function(e,t){return this.doc.getLines(e,t)},e.prototype.getLength=function(){return this.doc.getLength()},e.prototype.getTextRange=function(e){return this.doc.getTextRange(e||this.selection.getRange())},e.prototype.insert=function(e,t){return this.doc.insert(e,t)},e.prototype.remove=function(e){return this.doc.remove(e)},e.prototype.removeFullLines=function(e,t){return this.doc.removeFullLines(e,t)},e.prototype.undoChanges=function(e,t){if(!e.length)return;this.$fromUndo=!0;for(var n=e.length-1;n!=-1;n--){var r=e[n];r.action=="insert"||r.action=="remove"?this.doc.revertDelta(r):r.folds&&this.addFolds(r.folds)}!t&&this.$undoSelect&&(e.selectionBefore?this.selection.fromJSON(e.selectionBefore):this.selection.setRange(this.$getUndoSelection(e,!0))),this.$fromUndo=!1},e.prototype.redoChanges=function(e,t){if(!e.length)return;this.$fromUndo=!0;for(var n=0;ne.end.column&&(s.start.column+=u),s.end.row==e.end.row&&s.end.column>e.end.column&&(s.end.column+=u)),o&&s.start.row>=e.end.row&&(s.start.row+=o,s.end.row+=o)}s.end=this.insert(s.start,r);if(i.length){var a=e.start,f=s.start,o=f.row-a.row,u=f.column-a.column;this.addFolds(i.map(function(e){return e=e.clone(),e.start.row==a.row&&(e.start.column+=u),e.end.row==a.row&&(e.end.column+=u),e.start.row+=o,e.end.row+=o,e}))}return s},e.prototype.indentRows=function(e,t,n){n=n.replace(/\t/g,this.getTabString());for(var r=e;r<=t;r++)this.doc.insertInLine({row:r,column:0},n)},e.prototype.outdentRows=function(e){var t=e.collapseRows(),n=new l(0,0,0,0),r=this.getTabSize();for(var i=t.start.row;i<=t.end.row;++i){var s=this.getLine(i);n.start.row=i,n.end.row=i;for(var o=0;o0){var r=this.getRowFoldEnd(t+n);if(r>this.doc.getLength()-1)return 0;var i=r-t}else{e=this.$clipRowToDocument(e),t=this.$clipRowToDocument(t);var i=t-e+1}var s=new l(e,0,t,Number.MAX_VALUE),o=this.getFoldsInRange(s).map(function(e){return e=e.clone(),e.start.row+=i,e.end.row+=i,e}),u=n==0?this.doc.getLines(e,t):this.doc.removeFullLines(e,t);return this.doc.insertFullLines(e+i,u),o.length&&this.addFolds(o),i},e.prototype.moveLinesUp=function(e,t){return this.$moveLines(e,t,-1)},e.prototype.moveLinesDown=function(e,t){return this.$moveLines(e,t,1)},e.prototype.duplicateLines=function(e,t){return this.$moveLines(e,t,0)},e.prototype.$clipRowToDocument=function(e){return Math.max(0,Math.min(e,this.doc.getLength()-1))},e.prototype.$clipColumnToRow=function(e,t){return t<0?0:Math.min(this.doc.getLine(e).length,t)},e.prototype.$clipPositionToDocument=function(e,t){t=Math.max(0,t);if(e<0)e=0,t=0;else{var n=this.doc.getLength();e>=n?(e=n-1,t=this.doc.getLine(n-1).length):t=Math.min(this.doc.getLine(e).length,t)}return{row:e,column:t}},e.prototype.$clipRangeToDocument=function(e){e.start.row<0?(e.start.row=0,e.start.column=0):e.start.column=this.$clipColumnToRow(e.start.row,e.start.column);var t=this.doc.getLength()-1;return e.end.row>t?(e.end.row=t,e.end.column=this.doc.getLine(t).length):e.end.column=this.$clipColumnToRow(e.end.row,e.end.column),e},e.prototype.setUseWrapMode=function(e){if(e!=this.$useWrapMode){this.$useWrapMode=e,this.$modified=!0,this.$resetRowCache(0);if(e){var t=this.getLength();this.$wrapData=Array(t),this.$updateWrapData(0,t-1)}this._signal("changeWrapMode")}},e.prototype.getUseWrapMode=function(){return this.$useWrapMode},e.prototype.setWrapLimitRange=function(e,t){if(this.$wrapLimitRange.min!==e||this.$wrapLimitRange.max!==t)this.$wrapLimitRange={min:e,max:t},this.$modified=!0,this.$bidiHandler.markAsDirty(),this.$useWrapMode&&this._signal("changeWrapMode")},e.prototype.adjustWrapLimit=function(e,t){var n=this.$wrapLimitRange;n.max<0&&(n={min:t,max:t});var r=this.$constrainWrapLimit(e,n.min,n.max);return r!=this.$wrapLimit&&r>1?(this.$wrapLimit=r,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0):!1},e.prototype.$constrainWrapLimit=function(e,t,n){return t&&(e=Math.max(t,e)),n&&(e=Math.min(n,e)),e},e.prototype.getWrapLimit=function(){return this.$wrapLimit},e.prototype.setWrapLimit=function(e){this.setWrapLimitRange(e,e)},e.prototype.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},e.prototype.$updateInternalDataOnChange=function(e){var t=this.$useWrapMode,n=e.action,r=e.start,i=e.end,s=r.row,o=i.row,u=o-s,a=null;this.$updating=!0;if(u!=0)if(n==="remove"){this[t?"$wrapData":"$rowLengthCache"].splice(s,u);var f=this.$foldData;a=this.getFoldsInRange(e),this.removeFolds(a);var l=this.getFoldLine(i.row),c=0;if(l){l.addRemoveChars(i.row,i.column,r.column-i.column),l.shiftRow(-u);var h=this.getFoldLine(s);h&&h!==l&&(h.merge(l),l=h),c=f.indexOf(l)+1}for(c;c=i.row&&l.shiftRow(-u)}o=s}else{var p=Array(u);p.unshift(s,0);var d=t?this.$wrapData:this.$rowLengthCache;d.splice.apply(d,p);var f=this.$foldData,l=this.getFoldLine(s),c=0;if(l){var v=l.range.compareInside(r.row,r.column);v==0?(l=l.split(r.row,r.column),l&&(l.shiftRow(u),l.addRemoveChars(o,0,i.column-r.column))):v==-1&&(l.addRemoveChars(s,0,i.column-r.column),l.shiftRow(u)),c=f.indexOf(l)+1}for(c;c=s&&l.shiftRow(u)}}else{u=Math.abs(e.start.column-e.end.column),n==="remove"&&(a=this.getFoldsInRange(e),this.removeFolds(a),u=-u);var l=this.getFoldLine(s);l&&l.addRemoveChars(s,r.column,u)}return t&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,t?this.$updateWrapData(s,o):this.$updateRowLengthCache(s,o),a},e.prototype.$updateRowLengthCache=function(e,t){this.$rowLengthCache[e]=null,this.$rowLengthCache[t]=null},e.prototype.$updateWrapData=function(e,t){var n=this.doc.getAllLines(),r=this.getTabSize(),i=this.$wrapData,s=this.$wrapLimit,o,u,a=e;t=Math.min(t,n.length-1);while(a<=t)u=this.getFoldLine(a,u),u?(o=[],u.walk(function(e,t,r,i){var s;if(e!=null){s=this.$getDisplayTokens(e,o.length),s[0]=y;for(var u=1;ut-h){var p=s+t-h;if(e[p-1]>=E&&e[p]>=E){c(p);continue}if(e[p]==y||e[p]==b){for(p;p!=s-1;p--)if(e[p]==y)break;if(p>s){c(p);continue}p=s+t;for(p;p>2)),s-1);while(p>d&&e[p]d&&e[p]d&&e[p]==w)p--}else while(p>d&&e[p]d){c(++p);continue}p=s+t,e[p]==g&&p--,c(p-h)}return r},e.prototype.$getDisplayTokens=function(e,t){var n=[],r;t=t||0;for(var i=0;i39&&s<48||s>57&&s<64?n.push(w):s>=4352&&T(s)?n.push(m,g):n.push(m)}return n},e.prototype.$getStringScreenWidth=function(e,t,n){if(t==0)return[0,0];t==null&&(t=Infinity),n=n||0;var r,i;for(i=0;i=4352&&T(r)?n+=2:n+=1;if(n>t)break}return[n,i]},e.prototype.getRowLength=function(e){var t=1;return this.lineWidgets&&(t+=this.lineWidgets[e]&&this.lineWidgets[e].rowCount||0),!this.$useWrapMode||!this.$wrapData[e]?t:this.$wrapData[e].length+t},e.prototype.getRowLineCount=function(e){return!this.$useWrapMode||!this.$wrapData[e]?1:this.$wrapData[e].length+1},e.prototype.getRowWrapIndent=function(e){if(this.$useWrapMode){var t=this.screenToDocumentPosition(e,Number.MAX_VALUE),n=this.$wrapData[t.row];return n.length&&n[0]=0)var u=f[l],i=this.$docRowCache[l],h=e>f[c-1];else var h=!c;var p=this.getLength()-1,d=this.getNextFoldLine(i),v=d?d.start.row:Infinity;while(u<=e){a=this.getRowLength(i);if(u+a>e||i>=p)break;u+=a,i++,i>v&&(i=d.end.row+1,d=this.getNextFoldLine(i,d),v=d?d.start.row:Infinity),h&&(this.$docRowCache.push(i),this.$screenRowCache.push(u))}if(d&&d.start.row<=i)r=this.getFoldDisplayLine(d),i=d.start.row;else{if(u+a<=e||i>p)return{row:p,column:this.getLine(p).length};r=this.getLine(i),d=null}var m=0,g=Math.floor(e-u);if(this.$useWrapMode){var y=this.$wrapData[i];y&&(o=y[g],g>0&&y.length&&(m=y.indent,s=y[g-1]||y[y.length-1],r=r.substring(s)))}return n!==undefined&&this.$bidiHandler.isBidiRow(u+g,i,g)&&(t=this.$bidiHandler.offsetToCol(n)),s+=this.$getStringScreenWidth(r,t-m)[1],this.$useWrapMode&&s>=o&&(s=o-1),d?d.idxToPosition(s):{row:i,column:s}},e.prototype.documentToScreenPosition=function(e,t){if(typeof t=="undefined")var n=this.$clipPositionToDocument(e.row,e.column);else n=this.$clipPositionToDocument(e,t);e=n.row,t=n.column;var r=0,i=null,s=null;s=this.getFoldAt(e,t,1),s&&(e=s.start.row,t=s.start.column);var o,u=0,a=this.$docRowCache,f=this.$getRowCacheIndex(a,e),l=a.length;if(l&&f>=0)var u=a[f],r=this.$screenRowCache[f],c=e>a[l-1];else var c=!l;var h=this.getNextFoldLine(u),p=h?h.start.row:Infinity;while(u=p){o=h.end.row+1;if(o>e)break;h=this.getNextFoldLine(o,h),p=h?h.start.row:Infinity}else o=u+1;r+=this.getRowLength(u),u=o,c&&(this.$docRowCache.push(u),this.$screenRowCache.push(r))}var d="";h&&u>=p?(d=this.getFoldDisplayLine(h,e,t),i=h.start.row):(d=this.getLine(e).substring(0,t),i=e);var v=0;if(this.$useWrapMode){var m=this.$wrapData[i];if(m){var g=0;while(d.length>=m[g])r++,g++;d=d.substring(m[g-1]||0,d.length),v=g>0?m.indent:0}}return this.lineWidgets&&this.lineWidgets[u]&&this.lineWidgets[u].rowsAbove&&(r+=this.lineWidgets[u].rowsAbove),{row:r,column:v+this.$getStringScreenWidth(d)[0]}},e.prototype.documentToScreenColumn=function(e,t){return this.documentToScreenPosition(e,t).column},e.prototype.documentToScreenRow=function(e,t){return this.documentToScreenPosition(e,t).row},e.prototype.getScreenLength=function(){var e=0,t=null;if(!this.$useWrapMode){e=this.getLength();var n=this.$foldData;for(var r=0;ro&&(s=t.end.row+1,t=this.$foldData[r++],o=t?t.start.row:Infinity)}}return this.lineWidgets&&(e+=this.$getWidgetScreenLength()),e},e.prototype.$setFontMetrics=function(e){if(!this.$enableVarChar)return;this.$getStringScreenWidth=function(t,n,r){if(n===0)return[0,0];n||(n=Infinity),r=r||0;var i,s;for(s=0;sn)break}return[r,s]}},e.prototype.destroy=function(){this.destroyed||(this.bgTokenizer.setDocument(null),this.bgTokenizer.cleanup(),this.destroyed=!0),this.$stopWorker(),this.removeAllListeners(),this.doc&&this.doc.off("change",this.$onChange),this.selection.detach()},e}();v.$uid=0,v.prototype.$modes=o.$modes,v.prototype.getValue=v.prototype.toString,v.prototype.$defaultUndoManager={undo:function(){},redo:function(){},hasUndo:function(){},hasRedo:function(){},reset:function(){},add:function(){},addSelection:function(){},startNewGroup:function(){},addSession:function(){}},v.prototype.$overwrite=!1,v.prototype.$mode=null,v.prototype.$modeId=null,v.prototype.$scrollTop=0,v.prototype.$scrollLeft=0,v.prototype.$wrapLimit=80,v.prototype.$useWrapMode=!1,v.prototype.$wrapLimitRange={min:null,max:null},v.prototype.lineWidgets=null,v.prototype.isFullWidth=T,r.implement(v.prototype,u);var m=1,g=2,y=3,b=4,w=9,E=10,S=11,x=12;e("./edit_session/folding").Folding.call(v.prototype),e("./edit_session/bracket_match").BracketMatch.call(v.prototype),o.defineOptions(v.prototype,"session",{wrap:{set:function(e){!e||e=="off"?e=!1:e=="free"?e=!0:e=="printMargin"?e=-1:typeof e=="string"&&(e=parseInt(e,10)||!1);if(this.$wrap==e)return;this.$wrap=e;if(!e)this.setUseWrapMode(!1);else{var t=typeof e=="number"?e:null;this.setWrapLimitRange(t,t),this.setUseWrapMode(!0)}},get:function(){return this.getUseWrapMode()?this.$wrap==-1?"printMargin":this.getWrapLimitRange().min?this.$wrap:"free":"off"},handlesSet:!0},wrapMethod:{set:function(e){e=e=="auto"?this.$mode.type!="text":e!="text",e!=this.$wrapAsCode&&(this.$wrapAsCode=e,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(e){this.$useWorker=e,this.$stopWorker(),e&&this.$startWorker()},initialValue:!0},useSoftTabs:{initialValue:!0},tabSize:{set:function(e){e=parseInt(e),e>0&&this.$tabSize!==e&&(this.$modified=!0,this.$rowLengthCache=[],this.$tabSize=e,this._signal("changeTabSize"))},initialValue:4,handlesSet:!0},navigateWithinSoftTabs:{initialValue:!1},foldStyle:{set:function(e){this.setFoldStyle(e)},handlesSet:!0},overwrite:{set:function(e){this._signal("changeOverwrite")},initialValue:!1},newLineMode:{set:function(e){this.doc.setNewLineMode(e)},get:function(){return this.doc.getNewLineMode()},handlesSet:!0},mode:{set:function(e){this.setMode(e)},get:function(){return this.$modeId},handlesSet:!0}}),t.EditSession=v}),define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(e,t,n){"use strict";function u(e,t){function i(e,r){r===void 0&&(r=!0);var i=n&&t.$supportsUnicodeFlag?new RegExp("[\\p{L}\\p{N}_]","u"):new RegExp("\\w");if(i.test(e)||t.regExp)return n&&t.$supportsUnicodeFlag?r?"(?<=^|[^\\p{L}\\p{N}_])":"(?=[^\\p{L}\\p{N}_]|$)":"\\b";return""}var n=r.supportsLookbehind(),s=Array.from(e),o=s[0],u=s[s.length-1];return i(o)+e+i(u,!1)}var r=e("./lib/lang"),i=e("./lib/oop"),s=e("./range").Range,o=function(){function e(){this.$options={}}return e.prototype.set=function(e){return i.mixin(this.$options,e),this},e.prototype.getOptions=function(){return r.copyObject(this.$options)},e.prototype.setOptions=function(e){this.$options=e},e.prototype.find=function(e){var t=this.$options,n=this.$matchIterator(e,t);if(!n)return!1;var r=null;return n.forEach(function(e,n,i,o){return r=new s(e,n,i,o),n==o&&t.start&&t.start.start&&t.skipCurrent!=0&&r.isEqual(t.start)?(r=null,!1):!0}),r},e.prototype.findAll=function(e){var t=this.$options;if(!t.needle)return[];this.$assembleRegExp(t);var n=t.range,i=n?e.getLines(n.start.row,n.end.row):e.doc.getAllLines(),o=[],u=t.re;if(t.$isMultiLine){var a=u.length,f=i.length-a,l;e:for(var c=u.offset||0;c<=f;c++){for(var h=0;hv)continue;o.push(l=new s(c,v,c+a-1,m)),a>2&&(c=c+a-2)}}else for(var g=0;gE&&o[h].end.row==S)h--;o=o.slice(g,h+1);for(g=0,h=o.length;g=f;n--)if(p(n,Number.MAX_VALUE,e))return;if(t.wrap==0)return;for(n=l,f=a.row;n>=f;n--)if(p(n,Number.MAX_VALUE,e))return};else var c=function(e){var n=a.row;if(p(n,a.column,e))return;for(n+=1;n<=l;n++)if(p(n,0,e))return;if(t.wrap==0)return;for(n=f,l=a.row;n<=l;n++)if(p(n,0,e))return};if(t.$isMultiLine)var h=n.length,p=function(t,r,s){var o=i?t-h+1:t;if(o<0||o+h>e.getLength())return;var u=e.getLine(o),a=u.search(n[0]);if(!i&&ar)return;if(s(o,a,o+h-1,l))return!0};else if(i)var p=function(t,i,s){var u=e.getLine(t),a=[],f,l=0;n.lastIndex=0;while(f=n.exec(u)){var c=f[0].length;l=f.index;if(!c){if(l>=u.length)break;n.lastIndex=l+=r.skipEmptyMatch(u,l,o)}if(f.index+c>i)break;a.push(f.index,c)}for(var h=a.length-1;h>=0;h-=2){var p=a[h-1],c=a[h];if(s(t,p,t,p+c))return!0}};else var p=function(t,i,s){var u=e.getLine(t),a,f;n.lastIndex=i;while(f=n.exec(u)){var l=f[0].length;a=f.index;if(s(t,a,t,a+l))return!0;if(!l){n.lastIndex=a+=r.skipEmptyMatch(u,a,o);if(a>=u.length)return!1}}};return{forEach:c}},e}();t.Search=o}),define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,t,n){"use strict";function a(e){return typeof e=="object"&&e.bindKey&&e.bindKey.position||(e.isDefault?-100:0)}var r=this&&this.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){function r(){this.constructor=t}if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n),t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),i=e("../lib/keys"),s=e("../lib/useragent"),o=i.KEY_MODS,u=function(){function e(e,t){this.$init(e,t,!1)}return e.prototype.$init=function(e,t,n){this.platform=t||(s.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(e),this.$singleCommand=n},e.prototype.addCommand=function(e){this.commands[e.name]&&this.removeCommand(e),this.commands[e.name]=e,e.bindKey&&this._buildKeyHash(e)},e.prototype.removeCommand=function(e,t){var n=e&&(typeof e=="string"?e:e.name);e=this.commands[n],t||delete this.commands[n];var r=this.commandKeyBinding;for(var i in r){var s=r[i];if(s==e)delete r[i];else if(Array.isArray(s)){var o=s.indexOf(e);o!=-1&&(s.splice(o,1),s.length==1&&(r[i]=s[0]))}}},e.prototype.bindKey=function(e,t,n){typeof e=="object"&&e&&(n==undefined&&(n=e.position),e=e[this.platform]);if(!e)return;if(typeof t=="function")return this.addCommand({exec:t,bindKey:e,name:t.name||e});e.split("|").forEach(function(e){var r="";if(e.indexOf(" ")!=-1){var i=e.split(/\s+/);e=i.pop(),i.forEach(function(e){var t=this.parseKeys(e),n=o[t.hashId]+t.key;r+=(r?" ":"")+n,this._addCommandToBinding(r,"chainKeys")},this),r+=" "}var s=this.parseKeys(e),u=o[s.hashId]+s.key;this._addCommandToBinding(r+u,t,n)},this)},e.prototype._addCommandToBinding=function(e,t,n){var r=this.commandKeyBinding,i;if(!t)delete r[e];else if(!r[e]||this.$singleCommand)r[e]=t;else{Array.isArray(r[e])?(i=r[e].indexOf(t))!=-1&&r[e].splice(i,1):r[e]=[r[e]],typeof n!="number"&&(n=a(t));var s=r[e];for(i=0;in)break}s.splice(i,0,t)}},e.prototype.addCommands=function(e){e&&Object.keys(e).forEach(function(t){var n=e[t];if(!n)return;if(typeof n=="string")return this.bindKey(n,t);typeof n=="function"&&(n={exec:n});if(typeof n!="object")return;n.name||(n.name=t),this.addCommand(n)},this)},e.prototype.removeCommands=function(e){Object.keys(e).forEach(function(t){this.removeCommand(e[t])},this)},e.prototype.bindKeys=function(e){Object.keys(e).forEach(function(t){this.bindKey(t,e[t])},this)},e.prototype._buildKeyHash=function(e){this.bindKey(e.bindKey,e)},e.prototype.parseKeys=function(e){var t=e.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(e){return e}),n=t.pop(),r=i[n];if(i.FUNCTION_KEYS[r])n=i.FUNCTION_KEYS[r].toLowerCase();else{if(!t.length)return{key:n,hashId:-1};if(t.length==1&&t[0]=="shift")return{key:n.toUpperCase(),hashId:-1}}var s=0;for(var o=t.length;o--;){var u=i.KEY_MODS[t[o]];if(u==null)return typeof console!="undefined"&&console.error("invalid modifier "+t[o]+" in "+e),!1;s|=u}return{key:n,hashId:s}},e.prototype.findKeyCommand=function(e,t){var n=o[e]+t;return this.commandKeyBinding[n]},e.prototype.handleKeyboard=function(e,t,n,r){if(r<0)return;var i=o[t]+n,s=this.commandKeyBinding[i];e.$keyChain&&(e.$keyChain+=" "+i,s=this.commandKeyBinding[e.$keyChain]||s);if(s)if(s=="chainKeys"||s[s.length-1]=="chainKeys")return e.$keyChain=e.$keyChain||i,{command:"null"};if(e.$keyChain)if(!!t&&t!=4||n.length!=1){if(t==-1||r>0)e.$keyChain=""}else e.$keyChain=e.$keyChain.slice(0,-i.length-1);return{command:s}},e.prototype.getStatusText=function(e,t){return t.$keyChain||""},e}(),f=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.$singleCommand=!0,r}return r(t,e),t}(u);f.call=function(e,t,n){u.prototype.$init.call(e,t,n,!0)},u.call=function(e,t,n){u.prototype.$init.call(e,t,n,!1)},t.HashHandler=f,t.MultiHashHandler=u}),define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(e,t,n){"use strict";var r=this&&this.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){function r(){this.constructor=t}if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n),t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),i=e("../lib/oop"),s=e("../keyboard/hash_handler").MultiHashHandler,o=e("../lib/event_emitter").EventEmitter,u=function(e){function t(t,n){var r=e.call(this,n,t)||this;return r.byName=r.commands,r.setDefaultHandler("exec",function(e){return e.args?e.command.exec(e.editor,e.args,e.event,!1):e.command.exec(e.editor,{},e.event,!0)}),r}return r(t,e),t.prototype.exec=function(e,t,n){if(Array.isArray(e)){for(var r=e.length;r--;)if(this.exec(e[r],t,n))return!0;return!1}typeof e=="string"&&(e=this.commands[e]);if(!e)return!1;if(t&&t.$readOnly&&!e.readOnly)return!1;if(this.$checkCommandState!=0&&e.isAvailable&&!e.isAvailable(t))return!1;var i={editor:t,command:e,args:n};return i.returnValue=this._emit("exec",i),this._signal("afterExec",i),i.returnValue===!1?!1:!0},t.prototype.toggleRecording=function(e){if(this.$inReplay)return;return e&&e._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(e){this.macro.push([e.command,e.args])}.bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0)},t.prototype.replay=function(e){if(this.$inReplay||!this.macro)return;if(this.recording)return this.toggleRecording(e);try{this.$inReplay=!0,this.macro.forEach(function(t){typeof t=="string"?this.exec(t,e):this.exec(t[0],e,t[1])},this)}finally{this.$inReplay=!1}},t.prototype.trimMacro=function(e){return e.map(function(e){return typeof e[0]!="string"&&(e[0]=e[0].name),e[1]||(e=e[0]),e})},t}(s);i.implement(u.prototype,o),t.CommandManager=u}),define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(e,t,n){"use strict";function o(e,t){return{win:e,mac:t}}var r=e("../lib/lang"),i=e("../config"),s=e("../range").Range;t.commands=[{name:"showSettingsMenu",description:"Show settings menu",bindKey:o("Ctrl-,","Command-,"),exec:function(e){i.loadModule("ace/ext/settings_menu",function(t){t.init(e),e.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",description:"Go to next error",bindKey:o("Alt-E","F4"),exec:function(e){i.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(e,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",description:"Go to previous error",bindKey:o("Alt-Shift-E","Shift-F4"),exec:function(e){i.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(e,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",description:"Select all",bindKey:o("Ctrl-A","Command-A"),exec:function(e){e.selectAll()},readOnly:!0},{name:"centerselection",description:"Center selection",bindKey:o(null,"Ctrl-L"),exec:function(e){e.centerSelection()},readOnly:!0},{name:"gotoline",description:"Go to line...",bindKey:o("Ctrl-L","Command-L"),exec:function(e,t){typeof t=="number"&&!isNaN(t)&&e.gotoLine(t),e.prompt({$type:"gotoLine"})},readOnly:!0},{name:"fold",bindKey:o("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(e){e.session.toggleFold(!1)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:o("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(e){e.session.toggleFold(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",description:"Toggle fold widget",bindKey:o("F2","F2"),exec:function(e){e.session.toggleFoldWidget()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",description:"Toggle parent fold widget",bindKey:o("Alt-F2","Alt-F2"),exec:function(e){e.session.toggleFoldWidget(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"foldall",description:"Fold all",bindKey:o(null,"Ctrl-Command-Option-0"),exec:function(e){e.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldAllComments",description:"Fold all comments",bindKey:o(null,"Ctrl-Command-Option-0"),exec:function(e){e.session.foldAllComments()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",description:"Fold other",bindKey:o("Alt-0","Command-Option-0"),exec:function(e){e.session.foldAll(),e.session.unfold(e.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",description:"Unfold all",bindKey:o("Alt-Shift-0","Command-Option-Shift-0"),exec:function(e){e.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",description:"Find next",bindKey:o("Ctrl-K","Command-G"),exec:function(e){e.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",description:"Find previous",bindKey:o("Ctrl-Shift-K","Command-Shift-G"),exec:function(e){e.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",description:"Select or find next",bindKey:o("Alt-K","Ctrl-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findNext()},readOnly:!0},{name:"selectOrFindPrevious",description:"Select or find previous",bindKey:o("Alt-Shift-K","Ctrl-Shift-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findPrevious()},readOnly:!0},{name:"find",description:"Find",bindKey:o("Ctrl-F","Command-F"),exec:function(e){i.loadModule("ace/ext/searchbox",function(t){t.Search(e)})},readOnly:!0},{name:"overwrite",description:"Overwrite",bindKey:"Insert",exec:function(e){e.toggleOverwrite()},readOnly:!0},{name:"selecttostart",description:"Select to start",bindKey:o("Ctrl-Shift-Home","Command-Shift-Home|Command-Shift-Up"),exec:function(e){e.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",description:"Go to start",bindKey:o("Ctrl-Home","Command-Home|Command-Up"),exec:function(e){e.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",description:"Select up",bindKey:o("Shift-Up","Shift-Up|Ctrl-Shift-P"),exec:function(e){e.getSelection().selectUp()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golineup",description:"Go line up",bindKey:o("Up","Up|Ctrl-P"),exec:function(e,t){e.navigateUp(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttoend",description:"Select to end",bindKey:o("Ctrl-Shift-End","Command-Shift-End|Command-Shift-Down"),exec:function(e){e.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",description:"Go to end",bindKey:o("Ctrl-End","Command-End|Command-Down"),exec:function(e){e.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",description:"Select down",bindKey:o("Shift-Down","Shift-Down|Ctrl-Shift-N"),exec:function(e){e.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",description:"Go line down",bindKey:o("Down","Down|Ctrl-N"),exec:function(e,t){e.navigateDown(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",description:"Select word left",bindKey:o("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(e){e.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",description:"Go to word left",bindKey:o("Ctrl-Left","Option-Left"),exec:function(e){e.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",description:"Select to line start",bindKey:o("Alt-Shift-Left","Command-Shift-Left|Ctrl-Shift-A"),exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",description:"Go to line start",bindKey:o("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(e){e.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",description:"Select left",bindKey:o("Shift-Left","Shift-Left|Ctrl-Shift-B"),exec:function(e){e.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",description:"Go to left",bindKey:o("Left","Left|Ctrl-B"),exec:function(e,t){e.navigateLeft(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",description:"Select word right",bindKey:o("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(e){e.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",description:"Go to word right",bindKey:o("Ctrl-Right","Option-Right"),exec:function(e){e.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",description:"Select to line end",bindKey:o("Alt-Shift-Right","Command-Shift-Right|Shift-End|Ctrl-Shift-E"),exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",description:"Go to line end",bindKey:o("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(e){e.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",description:"Select right",bindKey:o("Shift-Right","Shift-Right"),exec:function(e){e.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",description:"Go to right",bindKey:o("Right","Right|Ctrl-F"),exec:function(e,t){e.navigateRight(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",description:"Select page down",bindKey:"Shift-PageDown",exec:function(e){e.selectPageDown()},readOnly:!0},{name:"pagedown",description:"Page down",bindKey:o(null,"Option-PageDown"),exec:function(e){e.scrollPageDown()},readOnly:!0},{name:"gotopagedown",description:"Go to page down",bindKey:o("PageDown","PageDown|Ctrl-V"),exec:function(e){e.gotoPageDown()},readOnly:!0},{name:"selectpageup",description:"Select page up",bindKey:"Shift-PageUp",exec:function(e){e.selectPageUp()},readOnly:!0},{name:"pageup",description:"Page up",bindKey:o(null,"Option-PageUp"),exec:function(e){e.scrollPageUp()},readOnly:!0},{name:"gotopageup",description:"Go to page up",bindKey:"PageUp",exec:function(e){e.gotoPageUp()},readOnly:!0},{name:"scrollup",description:"Scroll up",bindKey:o("Ctrl-Up",null),exec:function(e){e.renderer.scrollBy(0,-2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",description:"Scroll down",bindKey:o("Ctrl-Down",null),exec:function(e){e.renderer.scrollBy(0,2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",description:"Select line start",bindKey:"Shift-Home",exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",description:"Select line end",bindKey:"Shift-End",exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",description:"Toggle recording",bindKey:o("Ctrl-Alt-E","Command-Option-E"),exec:function(e){e.commands.toggleRecording(e)},readOnly:!0},{name:"replaymacro",description:"Replay macro",bindKey:o("Ctrl-Shift-E","Command-Shift-E"),exec:function(e){e.commands.replay(e)},readOnly:!0},{name:"jumptomatching",description:"Jump to matching",bindKey:o("Ctrl-\\|Ctrl-P","Command-\\"),exec:function(e){e.jumpToMatching()},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"selecttomatching",description:"Select to matching",bindKey:o("Ctrl-Shift-\\|Ctrl-Shift-P","Command-Shift-\\"),exec:function(e){e.jumpToMatching(!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"expandToMatching",description:"Expand to matching",bindKey:o("Ctrl-Shift-M","Ctrl-Shift-M"),exec:function(e){e.jumpToMatching(!0,!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"passKeysToBrowser",description:"Pass keys to browser",bindKey:o(null,null),exec:function(){},passEvent:!0,readOnly:!0},{name:"copy",description:"Copy",exec:function(e){},readOnly:!0},{name:"cut",description:"Cut",exec:function(e){var t=e.$copyWithEmptySelection&&e.selection.isEmpty(),n=t?e.selection.getLineRange():e.selection.getRange();e._emit("cut",n),n.isEmpty()||e.session.remove(n),e.clearSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"paste",description:"Paste",exec:function(e,t){e.$handlePaste(t)},scrollIntoView:"cursor"},{name:"removeline",description:"Remove line",bindKey:o("Ctrl-D","Command-D"),exec:function(e){e.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",description:"Duplicate selection",bindKey:o("Ctrl-Shift-D","Command-Shift-D"),exec:function(e){e.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",description:"Sort lines",bindKey:o("Ctrl-Alt-S","Command-Alt-S"),exec:function(e){e.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",description:"Toggle comment",bindKey:o("Ctrl-/","Command-/"),exec:function(e){e.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",description:"Toggle block comment",bindKey:o("Ctrl-Shift-/","Command-Shift-/"),exec:function(e){e.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",description:"Modify number up",bindKey:o("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(e){e.modifyNumber(1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"modifyNumberDown",description:"Modify number down",bindKey:o("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(e){e.modifyNumber(-1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"replace",description:"Replace",bindKey:o("Ctrl-H","Command-Option-F"),exec:function(e){i.loadModule("ace/ext/searchbox",function(t){t.Search(e,!0)})}},{name:"undo",description:"Undo",bindKey:o("Ctrl-Z","Command-Z"),exec:function(e){e.undo()}},{name:"redo",description:"Redo",bindKey:o("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(e){e.redo()}},{name:"copylinesup",description:"Copy lines up",bindKey:o("Alt-Shift-Up","Command-Option-Up"),exec:function(e){e.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",description:"Move lines up",bindKey:o("Alt-Up","Option-Up"),exec:function(e){e.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",description:"Copy lines down",bindKey:o("Alt-Shift-Down","Command-Option-Down"),exec:function(e){e.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",description:"Move lines down",bindKey:o("Alt-Down","Option-Down"),exec:function(e){e.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",description:"Delete",bindKey:o("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(e){e.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",description:"Backspace",bindKey:o("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(e){e.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",description:"Cut or delete",bindKey:o("Shift-Delete",null),exec:function(e){if(!e.selection.isEmpty())return!1;e.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",description:"Remove to line start",bindKey:o("Alt-Backspace","Command-Backspace"),exec:function(e){e.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",description:"Remove to line end",bindKey:o("Alt-Delete","Ctrl-K|Command-Delete"),exec:function(e){e.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestarthard",description:"Remove to line start hard",bindKey:o("Ctrl-Shift-Backspace",null),exec:function(e){var t=e.selection.getRange();t.start.column=0,e.session.remove(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineendhard",description:"Remove to line end hard",bindKey:o("Ctrl-Shift-Delete",null),exec:function(e){var t=e.selection.getRange();t.end.column=Number.MAX_VALUE,e.session.remove(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",description:"Remove word left",bindKey:o("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(e){e.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",description:"Remove word right",bindKey:o("Ctrl-Delete","Alt-Delete"),exec:function(e){e.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",description:"Outdent",bindKey:o("Shift-Tab","Shift-Tab"),exec:function(e){e.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",description:"Indent",bindKey:o("Tab","Tab"),exec:function(e){e.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",description:"Block outdent",bindKey:o("Ctrl-[","Ctrl-["),exec:function(e){e.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",description:"Block indent",bindKey:o("Ctrl-]","Ctrl-]"),exec:function(e){e.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",description:"Insert string",exec:function(e,t){e.insert(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",description:"Insert text",exec:function(e,t){e.insert(r.stringRepeat(t.text||"",t.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",description:"Split line",bindKey:o(null,"Ctrl-O"),exec:function(e){e.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",description:"Transpose letters",bindKey:o("Alt-Shift-X","Ctrl-T"),exec:function(e){e.transposeLetters()},multiSelectAction:function(e){e.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",description:"To uppercase",bindKey:o("Ctrl-U","Ctrl-U"),exec:function(e){e.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",description:"To lowercase",bindKey:o("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(e){e.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"autoindent",description:"Auto Indent",bindKey:o(null,null),exec:function(e){e.autoIndent()},scrollIntoView:"animate"},{name:"expandtoline",description:"Expand to line",bindKey:o("Ctrl-Shift-L","Command-Shift-L"),exec:function(e){var t=e.selection.getRange();t.start.column=t.end.column=0,t.end.row++,e.selection.setRange(t,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"openlink",bindKey:o("Ctrl+F3","F3"),exec:function(e){e.openLink()}},{name:"joinlines",description:"Join lines",bindKey:o(null,null),exec:function(e){var t=e.selection.isBackwards(),n=t?e.selection.getSelectionLead():e.selection.getSelectionAnchor(),i=t?e.selection.getSelectionAnchor():e.selection.getSelectionLead(),o=e.session.doc.getLine(n.row).length,u=e.session.doc.getTextRange(e.selection.getRange()),a=u.replace(/\n\s*/," ").length,f=e.session.doc.getLine(n.row);for(var l=n.row+1;l<=i.row+1;l++){var c=r.stringTrimLeft(r.stringTrimRight(e.session.doc.getLine(l)));c.length!==0&&(c=" "+c),f+=c}i.row+10?(e.selection.moveCursorTo(n.row,n.column),e.selection.selectTo(n.row,n.column+a)):(o=e.session.doc.getLine(n.row).length>o?o+1:o,e.selection.moveCursorTo(n.row,o))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",description:"Invert selection",bindKey:o(null,null),exec:function(e){var t=e.session.doc.getLength()-1,n=e.session.doc.getLine(t).length,r=e.selection.rangeList.ranges,i=[];r.length<1&&(r=[e.selection.getRange()]);for(var o=0;ot[n].column&&n++,s.unshift(n,0),t.splice.apply(t,s),this.$updateRows()}},e.prototype.$updateRows=function(){var e=this.session.lineWidgets;if(!e)return;var t=!0;e.forEach(function(e,n){if(e){t=!1,e.row=n;while(e.$oldWidget)e.$oldWidget.row=n,e=e.$oldWidget}}),t&&(this.session.lineWidgets=null)},e.prototype.$registerLineWidget=function(e){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength()));var t=this.session.lineWidgets[e.row];return t&&(e.$oldWidget=t,t.el&&t.el.parentNode&&(t.el.parentNode.removeChild(t.el),t._inDocument=!1)),this.session.lineWidgets[e.row]=e,e},e.prototype.addLineWidget=function(e){this.$registerLineWidget(e),e.session=this.session;if(!this.editor)return e;var t=this.editor.renderer;e.html&&!e.el&&(e.el=r.createElement("div"),e.el.innerHTML=e.html),e.text&&!e.el&&(e.el=r.createElement("div"),e.el.textContent=e.text),e.el&&(r.addCssClass(e.el,"ace_lineWidgetContainer"),e.className&&r.addCssClass(e.el,e.className),e.el.style.position="absolute",e.el.style.zIndex="5",t.container.appendChild(e.el),e._inDocument=!0,e.coverGutter||(e.el.style.zIndex="3"),e.pixelHeight==null&&(e.pixelHeight=e.el.offsetHeight)),e.rowCount==null&&(e.rowCount=e.pixelHeight/t.layerConfig.lineHeight);var n=this.session.getFoldAt(e.row,0);e.$fold=n;if(n){var i=this.session.lineWidgets;e.row==n.end.row&&!i[n.start.row]?i[n.start.row]=e:e.hidden=!0}return this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows(),this.renderWidgets(null,t),this.onWidgetChanged(e),e},e.prototype.removeLineWidget=function(e){e._inDocument=!1,e.session=null,e.el&&e.el.parentNode&&e.el.parentNode.removeChild(e.el);if(e.editor&&e.editor.destroy)try{e.editor.destroy()}catch(t){}if(this.session.lineWidgets){var n=this.session.lineWidgets[e.row];if(n==e)this.session.lineWidgets[e.row]=e.$oldWidget,e.$oldWidget&&this.onWidgetChanged(e.$oldWidget);else while(n){if(n.$oldWidget==e){n.$oldWidget=e.$oldWidget;break}n=n.$oldWidget}}this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows()},e.prototype.getWidgetsAtRow=function(e){var t=this.session.lineWidgets,n=t&&t[e],r=[];while(n)r.push(n),n=n.$oldWidget;return r},e.prototype.onWidgetChanged=function(e){this.session._changedWidgets.push(e),this.editor&&this.editor.renderer.updateFull()},e.prototype.measureWidgets=function(e,t){var n=this.session._changedWidgets,r=t.layerConfig;if(!n||!n.length)return;var i=Infinity;for(var s=0;s0&&!r[i])i--;this.firstRow=n.firstRow,this.lastRow=n.lastRow,t.$cursorLayer.config=n;for(var o=i;o<=s;o++){var u=r[o];if(!u||!u.el)continue;if(u.hidden){u.el.style.top=-100-(u.pixelHeight||0)+"px";continue}u._inDocument||(u._inDocument=!0,t.container.appendChild(u.el));var a=t.$cursorLayer.getPixelPosition({row:o,column:0},!0).top;u.coverLine||(a+=n.lineHeight*this.session.getRowLineCount(u.row)),u.el.style.top=a-n.offset+"px";var f=u.coverGutter?0:t.gutterWidth;u.fixedWidth||(f-=t.scrollLeft),u.el.style.left=f+"px",u.fullWidth&&u.screenWidth&&(u.el.style.minWidth=n.width+2*n.padding+"px"),u.fixedWidth?u.el.style.right=t.scrollBar.getWidth()+"px":u.el.style.right=""}},e}();t.LineWidgets=i}),define("ace/keyboard/gutter_handler",["require","exports","module","ace/lib/keys","ace/mouse/default_gutter_handler"],function(e,t,n){"use strict";var r=e("../lib/keys"),i=e("../mouse/default_gutter_handler").GutterTooltip,s=function(){function e(e){this.editor=e,this.gutterLayer=e.renderer.$gutterLayer,this.element=e.renderer.$gutter,this.lines=e.renderer.$gutterLayer.$lines,this.activeRowIndex=null,this.activeLane=null,this.annotationTooltip=new i(this.editor)}return e.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))},e.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))},e.prototype.$onGutterKeyDown=function(e){if(this.annotationTooltip.isOpen){e.preventDefault(),e.keyCode===r.escape&&this.annotationTooltip.hideTooltip();return}if(e.target===this.element){if(e.keyCode!=r["enter"])return;e.preventDefault();var t=this.editor.getCursorPosition().row;this.editor.isRowVisible(t)||this.editor.scrollToLine(t,!0,!0),setTimeout(function(){var e=this.$rowToRowIndex(this.gutterLayer.$cursorCell.row),t=this.$findNearestFoldWidget(e),n=this.$findNearestAnnotation(e);if(t===null&&n===null)return;if(t===null&&n!==null){this.activeRowIndex=n,this.activeLane="annotation",this.$focusAnnotation(this.activeRowIndex);return}if(t!==null&&n===null){this.activeRowIndex=t,this.activeLane="fold",this.$focusFoldWidget(this.activeRowIndex);return}if(Math.abs(n-e)0||e+t=0&&this.$isFoldWidgetVisible(e-t))return e-t;if(e+t<=this.lines.getLength()-1&&this.$isFoldWidgetVisible(e+t))return e+t}return null},e.prototype.$findNearestAnnotation=function(e){if(this.$isAnnotationVisible(e))return e;var t=0;while(e-t>0||e+t=0&&this.$isAnnotationVisible(e-t))return e-t;if(e+t<=this.lines.getLength()-1&&this.$isAnnotationVisible(e+t))return e+t}return null},e.prototype.$focusFoldWidget=function(e){if(e==null)return;var t=this.$getFoldWidget(e);t.classList.add(this.editor.renderer.keyboardFocusClassName),t.focus()},e.prototype.$focusAnnotation=function(e){if(e==null)return;var t=this.$getAnnotation(e);t.classList.add(this.editor.renderer.keyboardFocusClassName),t.focus()},e.prototype.$blurFoldWidget=function(e){var t=this.$getFoldWidget(e);t.classList.remove(this.editor.renderer.keyboardFocusClassName),t.blur()},e.prototype.$blurAnnotation=function(e){var t=this.$getAnnotation(e);t.classList.remove(this.editor.renderer.keyboardFocusClassName),t.blur()},e.prototype.$moveFoldWidgetUp=function(){var e=this.activeRowIndex;while(e>0){e--;if(this.$isFoldWidgetVisible(e)){this.$blurFoldWidget(this.activeRowIndex),this.activeRowIndex=e,this.$focusFoldWidget(this.activeRowIndex);return}}return},e.prototype.$moveFoldWidgetDown=function(){var e=this.activeRowIndex;while(e0){e--;if(this.$isAnnotationVisible(e)){this.$blurAnnotation(this.activeRowIndex),this.activeRowIndex=e,this.$focusAnnotation(this.activeRowIndex);return}}return},e.prototype.$moveAnnotationDown=function(){var e=this.activeRowIndex;while(e=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},i=e("./lib/oop"),s=e("./lib/dom"),o=e("./lib/lang"),u=e("./lib/useragent"),a=e("./keyboard/textinput").TextInput,f=e("./mouse/mouse_handler").MouseHandler,l=e("./mouse/fold_handler").FoldHandler,c=e("./keyboard/keybinding").KeyBinding,h=e("./edit_session").EditSession,p=e("./search").Search,d=e("./range").Range,v=e("./lib/event_emitter").EventEmitter,m=e("./commands/command_manager").CommandManager,g=e("./commands/default_commands").commands,y=e("./config"),b=e("./token_iterator").TokenIterator,w=e("./line_widgets").LineWidgets,E=e("./keyboard/gutter_handler").GutterKeyboardHandler,S=e("./config").nls,x=e("./clipboard"),T=e("./lib/keys"),N=function(){function e(t,n,r){this.session,this.$toDestroy=[];var i=t.getContainerElement();this.container=i,this.renderer=t,this.id="editor"+ ++e.$uid,this.commands=new m(u.isMac?"mac":"win",g),typeof document=="object"&&(this.textInput=new a(t.getTextAreaContainer(),this),this.renderer.textarea=this.textInput.getElement(),this.$mouseHandler=new f(this),new l(this)),this.keyBinding=new c(this),this.$search=(new p).set({wrap:!0}),this.$historyTracker=this.$historyTracker.bind(this),this.commands.on("exec",this.$historyTracker),this.$initOperationListeners(),this._$emitInputEvent=o.delayedCall(function(){this._signal("input",{}),this.session&&!this.session.destroyed&&this.session.bgTokenizer.scheduleStart()}.bind(this)),this.on("change",function(e,t){t._$emitInputEvent.schedule(31)}),this.setSession(n||r&&r.session||new h("")),y.resetOptions(this),r&&this.setOptions(r),y._signal("editor",this)}return e.prototype.$initOperationListeners=function(){this.commands.on("exec",this.startOperation.bind(this),!0),this.commands.on("afterExec",this.endOperation.bind(this),!0),this.$opResetTimer=o.delayedCall(this.endOperation.bind(this,!0)),this.on("change",function(){this.curOp||(this.startOperation(),this.curOp.selectionBefore=this.$lastSel),this.curOp.docChanged=!0}.bind(this),!0),this.on("changeSelection",function(){this.curOp||(this.startOperation(),this.curOp.selectionBefore=this.$lastSel),this.curOp.selectionChanged=!0}.bind(this),!0)},e.prototype.startOperation=function(e){if(this.curOp){if(!e||this.curOp.command)return;this.prevOp=this.curOp}e||(this.previousCommand=null,e={}),this.$opResetTimer.schedule(),this.curOp=this.session.curOp={command:e.command||{},args:e.args,scrollTop:this.renderer.scrollTop},this.curOp.selectionBefore=this.selection.toJSON()},e.prototype.endOperation=function(e){if(this.curOp&&this.session){if(e&&e.returnValue===!1||!this.session)return this.curOp=null;if(e==1&&this.curOp.command&&this.curOp.command.name=="mouse")return;this._signal("beforeEndOperation");if(!this.curOp)return;var t=this.curOp.command,n=t&&t.scrollIntoView;if(n){switch(n){case"center-animate":n="animate";case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":var r=this.selection.getRange(),i=this.renderer.layerConfig;(r.start.row>=i.lastRow||r.end.row<=i.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead);break;default:}n=="animate"&&this.renderer.animateScrolling(this.curOp.scrollTop)}var s=this.selection.toJSON();this.curOp.selectionAfter=s,this.$lastSel=this.selection.toJSON(),this.session.getUndoManager().addSelection(s),this.prevOp=this.curOp,this.curOp=null}},e.prototype.$historyTracker=function(e){if(!this.$mergeUndoDeltas)return;var t=this.prevOp,n=this.$mergeableCommands,r=t.command&&e.command.name==t.command.name;if(e.command.name=="insertstring"){var i=e.args;this.mergeNextCommand===undefined&&(this.mergeNextCommand=!0),r=r&&this.mergeNextCommand&&(!/\s/.test(i)||/\s/.test(t.args)),this.mergeNextCommand=!0}else r=r&&n.indexOf(e.command.name)!==-1;this.$mergeUndoDeltas!="always"&&Date.now()-this.sequenceStartTime>2e3&&(r=!1),r?this.session.mergeUndoDeltas=!0:n.indexOf(e.command.name)!==-1&&(this.sequenceStartTime=Date.now())},e.prototype.setKeyboardHandler=function(e,t){if(e&&typeof e=="string"&&e!="ace"){this.$keybindingId=e;var n=this;y.loadModule(["keybinding",e],function(r){n.$keybindingId==e&&n.keyBinding.setKeyboardHandler(r&&r.handler),t&&t()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(e),t&&t()},e.prototype.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},e.prototype.setSession=function(e){if(this.session==e)return;this.curOp&&this.endOperation(),this.curOp={};var t=this.session;if(t){this.session.off("change",this.$onDocumentChange),this.session.off("changeMode",this.$onChangeMode),this.session.off("tokenizerUpdate",this.$onTokenizerUpdate),this.session.off("changeTabSize",this.$onChangeTabSize),this.session.off("changeWrapLimit",this.$onChangeWrapLimit),this.session.off("changeWrapMode",this.$onChangeWrapMode),this.session.off("changeFold",this.$onChangeFold),this.session.off("changeFrontMarker",this.$onChangeFrontMarker),this.session.off("changeBackMarker",this.$onChangeBackMarker),this.session.off("changeBreakpoint",this.$onChangeBreakpoint),this.session.off("changeAnnotation",this.$onChangeAnnotation),this.session.off("changeOverwrite",this.$onCursorChange),this.session.off("changeScrollTop",this.$onScrollTopChange),this.session.off("changeScrollLeft",this.$onScrollLeftChange);var n=this.session.getSelection();n.off("changeCursor",this.$onCursorChange),n.off("changeSelection",this.$onSelectionChange)}this.session=e,e?(this.$onDocumentChange=this.onDocumentChange.bind(this),e.on("change",this.$onDocumentChange),this.renderer.setSession(e),this.$onChangeMode=this.onChangeMode.bind(this),e.on("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),e.on("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),e.on("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),e.on("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),e.on("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),e.on("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.on("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.on("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.on("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.on("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.on("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.on("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.on("changeScrollLeft",this.$onScrollLeftChange),this.selection=e.getSelection(),this.selection.on("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.onChangeMode(),this.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(e)),this._signal("changeSession",{session:e,oldSession:t}),this.curOp=null,t&&t._signal("changeEditor",{oldEditor:this}),e&&e._signal("changeEditor",{editor:this}),e&&!e.destroyed&&e.bgTokenizer.scheduleStart()},e.prototype.getSession=function(){return this.session},e.prototype.setValue=function(e,t){return this.session.doc.setValue(e),t?t==1?this.navigateFileEnd():t==-1&&this.navigateFileStart():this.selectAll(),e},e.prototype.getValue=function(){return this.session.getValue()},e.prototype.getSelection=function(){return this.selection},e.prototype.resize=function(e){this.renderer.onResize(e)},e.prototype.setTheme=function(e,t){this.renderer.setTheme(e,t)},e.prototype.getTheme=function(){return this.renderer.getTheme()},e.prototype.setStyle=function(e){this.renderer.setStyle(e)},e.prototype.unsetStyle=function(e){this.renderer.unsetStyle(e)},e.prototype.getFontSize=function(){return this.getOption("fontSize")||s.computedStyle(this.container).fontSize},e.prototype.setFontSize=function(e){this.setOption("fontSize",e)},e.prototype.$highlightBrackets=function(){if(this.$highlightPending)return;var e=this;this.$highlightPending=!0,setTimeout(function(){e.$highlightPending=!1;var t=e.session;if(!t||t.destroyed)return;t.$bracketHighlight&&(t.$bracketHighlight.markerIds.forEach(function(e){t.removeMarker(e)}),t.$bracketHighlight=null);var n=e.getCursorPosition(),r=e.getKeyboardHandler(),i=r&&r.$getDirectionForHighlight&&r.$getDirectionForHighlight(e),s=t.getMatchingBracketRanges(n,i);if(!s){var o=new b(t,n.row,n.column),u=o.getCurrentToken();if(u&&/\b(?:tag-open|tag-name)/.test(u.type)){var a=t.getMatchingTags(n);a&&(s=[a.openTagName,a.closeTagName])}}!s&&t.$mode.getMatching&&(s=t.$mode.getMatching(e.session));if(!s){e.getHighlightIndentGuides()&&e.renderer.$textLayer.$highlightIndentGuide();return}var f="ace_bracket";Array.isArray(s)?s.length==1&&(f="ace_error_bracket"):s=[s],s.length==2&&(d.comparePoints(s[0].end,s[1].start)==0?s=[d.fromPoints(s[0].start,s[1].end)]:d.comparePoints(s[0].start,s[1].end)==0&&(s=[d.fromPoints(s[1].start,s[0].end)])),t.$bracketHighlight={ranges:s,markerIds:s.map(function(e){return t.addMarker(e,f,"text")})},e.getHighlightIndentGuides()&&e.renderer.$textLayer.$highlightIndentGuide()},50)},e.prototype.focus=function(){this.textInput.focus()},e.prototype.isFocused=function(){return this.textInput.isFocused()},e.prototype.blur=function(){this.textInput.blur()},e.prototype.onFocus=function(e){if(this.$isFocused)return;this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus",e)},e.prototype.onBlur=function(e){if(!this.$isFocused)return;this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur",e)},e.prototype.$cursorChange=function(){this.renderer.updateCursor(),this.$highlightBrackets(),this.$updateHighlightActiveLine()},e.prototype.onDocumentChange=function(e){var t=this.session.$useWrapMode,n=e.start.row==e.end.row?e.end.row:Infinity;this.renderer.updateLines(e.start.row,n,t),this._signal("change",e),this.$cursorChange()},e.prototype.onTokenizerUpdate=function(e){var t=e.data;this.renderer.updateLines(t.first,t.last)},e.prototype.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},e.prototype.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},e.prototype.onCursorChange=function(){this.$cursorChange(),this._signal("changeSelection")},e.prototype.$updateHighlightActiveLine=function(){var e=this.getSession(),t;if(this.$highlightActiveLine){if(this.$selectionStyle!="line"||!this.selection.isMultiLine())t=this.getCursorPosition();this.renderer.theme&&this.renderer.theme.$selectionColorConflict&&!this.selection.isEmpty()&&(t=!1),this.renderer.$maxLines&&this.session.getLength()===1&&!(this.renderer.$minLines>1)&&(t=!1)}if(e.$highlightLineMarker&&!t)e.removeMarker(e.$highlightLineMarker.id),e.$highlightLineMarker=null;else if(!e.$highlightLineMarker&&t){var n=new d(t.row,t.column,t.row,Infinity);n.id=e.addMarker(n,"ace_active-line","screenLine"),e.$highlightLineMarker=n}else t&&(e.$highlightLineMarker.start.row=t.row,e.$highlightLineMarker.end.row=t.row,e.$highlightLineMarker.start.column=t.column,e._signal("changeBackMarker"))},e.prototype.onSelectionChange=function(e){var t=this.session;t.$selectionMarker&&t.removeMarker(t.$selectionMarker),t.$selectionMarker=null;if(!this.selection.isEmpty()){var n=this.selection.getRange(),r=this.getSelectionStyle();t.$selectionMarker=t.addMarker(n,"ace_selection",r)}else this.$updateHighlightActiveLine();var i=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(i),this._signal("changeSelection")},e.prototype.$getSelectionHighLightRegexp=function(){var e=this.session,t=this.getSelectionRange();if(t.isEmpty()||t.isMultiLine())return;var n=t.start.column,r=t.end.column,i=e.getLine(t.start.row),s=i.substring(n,r);if(s.length>5e3||!/[\w\d]/.test(s))return;var o=this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:s}),u=i.substring(n-1,r+1);if(!o.test(u))return;return o},e.prototype.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},e.prototype.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},e.prototype.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},e.prototype.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},e.prototype.onChangeMode=function(e){this.renderer.updateText(),this._emit("changeMode",e)},e.prototype.onChangeWrapLimit=function(){this.renderer.updateFull()},e.prototype.onChangeWrapMode=function(){this.renderer.onResize(!0)},e.prototype.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},e.prototype.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},e.prototype.getCopyText=function(){var e=this.getSelectedText(),t=this.session.doc.getNewLineCharacter(),n=!1;if(!e&&this.$copyWithEmptySelection){n=!0;var r=this.selection.getAllRanges();for(var i=0;iu.search(/\S|$/)){var a=u.substr(i.column).search(/\S|$/);n.doc.removeInLine(i.row,i.column,i.column+a)}}this.clearSelection();var f=i.column,l=n.getState(i.row),u=n.getLine(i.row),c=r.checkOutdent(l,u,e);n.insert(i,e),s&&s.selection&&(s.selection.length==2?this.selection.setSelectionRange(new d(i.row,f+s.selection[0],i.row,f+s.selection[1])):this.selection.setSelectionRange(new d(i.row+s.selection[0],s.selection[1],i.row+s.selection[2],s.selection[3])));if(this.$enableAutoIndent){if(n.getDocument().isNewLine(e)){var h=r.getNextLineIndent(l,u.slice(0,i.column),n.getTabString());n.insert({row:i.row+1,column:0},h)}c&&r.autoOutdent(l,n,i.row)}},e.prototype.autoIndent=function(){var e=this.session,t=e.getMode(),n=this.selection.isEmpty()?[new d(0,0,e.doc.getLength()-1,0)]:this.selection.getAllRanges(),r="",i="",s="",o=e.getTabString();for(var u=0;u0&&(r=e.getState(l-1),i=e.getLine(l-1),s=t.getNextLineIndent(r,i,o));var c=e.getLine(l),h=t.$getIndent(c);if(s!==h){if(h.length>0){var p=new d(l,0,l,h.length);e.remove(p)}s.length>0&&e.insert({row:l,column:0},s)}t.autoOutdent(r,e,l)}}},e.prototype.onTextInput=function(e,t){if(!t)return this.keyBinding.onTextInput(e);this.startOperation({command:{name:"insertstring"}});var n=this.applyComposition.bind(this,e,t);this.selection.rangeCount?this.forEachSelection(n):n(),this.endOperation()},e.prototype.applyComposition=function(e,t){if(t.extendLeft||t.extendRight){var n=this.selection.getRange();n.start.column-=t.extendLeft,n.end.column+=t.extendRight,n.start.column<0&&(n.start.row--,n.start.column+=this.session.getLine(n.start.row).length+1),this.selection.setRange(n),!e&&!n.isEmpty()&&this.remove()}(e||!this.selection.isEmpty())&&this.insert(e,!0);if(t.restoreStart||t.restoreEnd){var n=this.selection.getRange();n.start.column-=t.restoreStart,n.end.column-=t.restoreEnd,this.selection.setRange(n)}},e.prototype.onCommandKey=function(e,t,n){return this.keyBinding.onCommandKey(e,t,n)},e.prototype.setOverwrite=function(e){this.session.setOverwrite(e)},e.prototype.getOverwrite=function(){return this.session.getOverwrite()},e.prototype.toggleOverwrite=function(){this.session.toggleOverwrite()},e.prototype.setScrollSpeed=function(e){this.setOption("scrollSpeed",e)},e.prototype.getScrollSpeed=function(){return this.getOption("scrollSpeed")},e.prototype.setDragDelay=function(e){this.setOption("dragDelay",e)},e.prototype.getDragDelay=function(){return this.getOption("dragDelay")},e.prototype.setSelectionStyle=function(e){this.setOption("selectionStyle",e)},e.prototype.getSelectionStyle=function(){return this.getOption("selectionStyle")},e.prototype.setHighlightActiveLine=function(e){this.setOption("highlightActiveLine",e)},e.prototype.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},e.prototype.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},e.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},e.prototype.setHighlightSelectedWord=function(e){this.setOption("highlightSelectedWord",e)},e.prototype.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},e.prototype.setAnimatedScroll=function(e){this.renderer.setAnimatedScroll(e)},e.prototype.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},e.prototype.setShowInvisibles=function(e){this.renderer.setShowInvisibles(e)},e.prototype.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},e.prototype.setDisplayIndentGuides=function(e){this.renderer.setDisplayIndentGuides(e)},e.prototype.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},e.prototype.setHighlightIndentGuides=function(e){this.renderer.setHighlightIndentGuides(e)},e.prototype.getHighlightIndentGuides=function(){return this.renderer.getHighlightIndentGuides()},e.prototype.setShowPrintMargin=function(e){this.renderer.setShowPrintMargin(e)},e.prototype.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},e.prototype.setPrintMarginColumn=function(e){this.renderer.setPrintMarginColumn(e)},e.prototype.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},e.prototype.setReadOnly=function(e){this.setOption("readOnly",e)},e.prototype.getReadOnly=function(){return this.getOption("readOnly")},e.prototype.setBehavioursEnabled=function(e){this.setOption("behavioursEnabled",e)},e.prototype.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},e.prototype.setWrapBehavioursEnabled=function(e){this.setOption("wrapBehavioursEnabled",e)},e.prototype.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},e.prototype.setShowFoldWidgets=function(e){this.setOption("showFoldWidgets",e)},e.prototype.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},e.prototype.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},e.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},e.prototype.remove=function(e){this.selection.isEmpty()&&(e=="left"?this.selection.selectLeft():this.selection.selectRight());var t=this.getSelectionRange();if(this.getBehavioursEnabled()){var n=this.session,r=n.getState(t.start.row),i=n.getMode().transformAction(r,"deletion",this,n,t);if(t.end.column===0){var s=n.getTextRange(t);if(s[s.length-1]=="\n"){var o=n.getLine(t.end.row);/^\s+$/.test(o)&&(t.end.column=o.length)}}i&&(t=i)}this.session.remove(t),this.clearSelection()},e.prototype.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},e.prototype.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},e.prototype.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.selection.isEmpty()&&this.selection.selectLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},e.prototype.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var e=this.getSelectionRange();e.start.column==e.end.column&&e.start.row==e.end.row&&(e.end.column=0,e.end.row++),this.session.remove(e),this.clearSelection()},e.prototype.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var e=this.getCursorPosition();this.insert("\n"),this.moveCursorToPosition(e)},e.prototype.setGhostText=function(e,t){this.session.widgetManager||(this.session.widgetManager=new w(this.session),this.session.widgetManager.attach(this)),this.renderer.setGhostText(e,t)},e.prototype.removeGhostText=function(){if(!this.session.widgetManager)return;this.renderer.removeGhostText()},e.prototype.transposeLetters=function(){if(!this.selection.isEmpty())return;var e=this.getCursorPosition(),t=e.column;if(t===0)return;var n=this.session.getLine(e.row),r,i;tt.toLowerCase()?1:0});var i=new d(0,0,0,0);for(var r=e.first;r<=e.last;r++){var s=t.getLine(r);i.start.row=r,i.end.row=r,i.end.column=s.length,t.replace(i,n[r-e.first])}},e.prototype.toggleCommentLines=function(){var e=this.session.getState(this.getCursorPosition().row),t=this.$getSelectedRows();this.session.getMode().toggleCommentLines(e,this.session,t.first,t.last)},e.prototype.toggleBlockComment=function(){var e=this.getCursorPosition(),t=this.session.getState(e.row),n=this.getSelectionRange();this.session.getMode().toggleBlockComment(t,this.session,n,e)},e.prototype.getNumberAt=function(e,t){var n=/[\-]?[0-9]+(?:\.[0-9]+)?/g;n.lastIndex=0;var r=this.session.getLine(e);while(n.lastIndex=t){var s={value:i[0],start:i.index,end:i.index+i[0].length};return s}}return null},e.prototype.modifyNumber=function(e){var t=this.selection.getCursor().row,n=this.selection.getCursor().column,r=new d(t,n-1,t,n),i=this.session.getTextRange(r);if(!isNaN(parseFloat(i))&&isFinite(i)){var s=this.getNumberAt(t,n);if(s){var o=s.value.indexOf(".")>=0?s.start+s.value.indexOf(".")+1:s.end,u=s.start+s.value.length-o,a=parseFloat(s.value);a*=Math.pow(10,u),o!==s.end&&n=u&&s<=a&&(n=t,f.selection.clearSelection(),f.moveCursorTo(e,u+r),f.selection.selectTo(e,a+r)),u=a});var l=this.$toggleWordPairs,c;for(var h=0;h=a&&u<=f&&p.match(/((?:https?|ftp):\/\/[\S]+)/)){l=p.replace(/[\s:.,'";}\]]+$/,"");break}a=f}}catch(d){n={error:d}}finally{try{h&&!h.done&&(i=c.return)&&i.call(c)}finally{if(n)throw n.error}}return l},e.prototype.openLink=function(){var e=this.selection.getCursor(),t=this.findLinkAt(e.row,e.column);return t&&window.open(t,"_blank"),t!=null},e.prototype.removeLines=function(){var e=this.$getSelectedRows();this.session.removeFullLines(e.first,e.last),this.clearSelection()},e.prototype.duplicateSelection=function(){var e=this.selection,t=this.session,n=e.getRange(),r=e.isBackwards();if(n.isEmpty()){var i=n.start.row;t.duplicateLines(i,i)}else{var s=r?n.start:n.end,o=t.insert(s,t.getTextRange(n));n.start=s,n.end=o,e.setSelectionRange(n,r)}},e.prototype.moveLinesDown=function(){this.$moveLines(1,!1)},e.prototype.moveLinesUp=function(){this.$moveLines(-1,!1)},e.prototype.moveText=function(e,t,n){return this.session.moveText(e,t,n)},e.prototype.copyLinesUp=function(){this.$moveLines(-1,!0)},e.prototype.copyLinesDown=function(){this.$moveLines(1,!0)},e.prototype.$moveLines=function(e,t){var n,r,i=this.selection;if(!i.inMultiSelectMode||this.inVirtualSelectionMode){var s=i.toOrientedRange();n=this.$getSelectedRows(s),r=this.session.$moveLines(n.first,n.last,t?0:e),t&&e==-1&&(r=0),s.moveBy(r,0),i.fromOrientedRange(s)}else{var o=i.rangeList.ranges;i.rangeList.detach(this.session),this.inVirtualSelectionMode=!0;var u=0,a=0,f=o.length;for(var l=0;lp+1)break;p=d.last}l--,u=this.session.$moveLines(h,p,t?0:e),t&&e==-1&&(c=l+1);while(c<=l)o[c].moveBy(u,0),c++;t||(u=0),a+=u}i.fromOrientedRange(i.ranges[0]),i.rangeList.attach(this.session),this.inVirtualSelectionMode=!1}},e.prototype.$getSelectedRows=function(e){return e=(e||this.getSelectionRange()).collapseRows(),{first:this.session.getRowFoldStart(e.start.row),last:this.session.getRowFoldEnd(e.end.row)}},e.prototype.onCompositionStart=function(e){this.renderer.showComposition(e)},e.prototype.onCompositionUpdate=function(e){this.renderer.setCompositionText(e)},e.prototype.onCompositionEnd=function(){this.renderer.hideComposition()},e.prototype.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},e.prototype.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},e.prototype.isRowVisible=function(e){return e>=this.getFirstVisibleRow()&&e<=this.getLastVisibleRow()},e.prototype.isRowFullyVisible=function(e){return e>=this.renderer.getFirstFullyVisibleRow()&&e<=this.renderer.getLastFullyVisibleRow()},e.prototype.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},e.prototype.$moveByPage=function(e,t){var n=this.renderer,r=this.renderer.layerConfig,i=e*Math.floor(r.height/r.lineHeight);t===!0?this.selection.$moveSelection(function(){this.moveCursorBy(i,0)}):t===!1&&(this.selection.moveCursorBy(i,0),this.selection.clearSelection());var s=n.scrollTop;n.scrollBy(0,i*r.lineHeight),t!=null&&n.scrollCursorIntoView(null,.5),n.animateScrolling(s)},e.prototype.selectPageDown=function(){this.$moveByPage(1,!0)},e.prototype.selectPageUp=function(){this.$moveByPage(-1,!0)},e.prototype.gotoPageDown=function(){this.$moveByPage(1,!1)},e.prototype.gotoPageUp=function(){this.$moveByPage(-1,!1)},e.prototype.scrollPageDown=function(){this.$moveByPage(1)},e.prototype.scrollPageUp=function(){this.$moveByPage(-1)},e.prototype.scrollToRow=function(e){this.renderer.scrollToRow(e)},e.prototype.scrollToLine=function(e,t,n,r){this.renderer.scrollToLine(e,t,n,r)},e.prototype.centerSelection=function(){var e=this.getSelectionRange(),t={row:Math.floor(e.start.row+(e.end.row-e.start.row)/2),column:Math.floor(e.start.column+(e.end.column-e.start.column)/2)};this.renderer.alignCursor(t,.5)},e.prototype.getCursorPosition=function(){return this.selection.getCursor()},e.prototype.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},e.prototype.getSelectionRange=function(){return this.selection.getRange()},e.prototype.selectAll=function(){this.selection.selectAll()},e.prototype.clearSelection=function(){this.selection.clearSelection()},e.prototype.moveCursorTo=function(e,t){this.selection.moveCursorTo(e,t)},e.prototype.moveCursorToPosition=function(e){this.selection.moveCursorToPosition(e)},e.prototype.jumpToMatching=function(e,t){var n=this.getCursorPosition(),r=new b(this.session,n.row,n.column),i=r.getCurrentToken(),s=0;i&&i.type.indexOf("tag-name")!==-1&&(i=r.stepBackward());var o=i||r.stepForward();if(!o)return;var u,a=!1,f={},l=n.column-o.start,c,h={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(o.value.match(/[{}()\[\]]/g))for(;l1?f[o.value]++:i.value==="=0;--s)this.$tryReplace(n[s],e)&&r++;return this.selection.setSelectionRange(i),r},e.prototype.$tryReplace=function(e,t){var n=this.session.getTextRange(e);return t=this.$search.replace(n,t),t!==null?(e.end=this.session.replace(e,t),e):null},e.prototype.getLastSearchOptions=function(){return this.$search.getOptions()},e.prototype.find=function(e,t,n){t||(t={}),typeof e=="string"||e instanceof RegExp?t.needle=e:typeof e=="object"&&i.mixin(t,e);var r=this.selection.getRange();t.needle==null&&(e=this.session.getTextRange(r)||this.$search.$options.needle,e||(r=this.session.getWordRange(r.start.row,r.start.column),e=this.session.getTextRange(r)),this.$search.set({needle:e})),this.$search.set(t),t.start||this.$search.set({start:r});var s=this.$search.find(this.session);if(t.preventScroll)return s;if(s)return this.revealRange(s,n),s;t.backwards?r.start=r.end:r.end=r.start,this.selection.setRange(r)},e.prototype.findNext=function(e,t){this.find({skipCurrent:!0,backwards:!1},e,t)},e.prototype.findPrevious=function(e,t){this.find(e,{skipCurrent:!0,backwards:!0},t)},e.prototype.revealRange=function(e,t){this.session.unfold(e),this.selection.setSelectionRange(e);var n=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(e.start,e.end,.5),t!==!1&&this.renderer.animateScrolling(n)},e.prototype.undo=function(){this.session.getUndoManager().undo(this.session),this.renderer.scrollCursorIntoView(null,.5)},e.prototype.redo=function(){this.session.getUndoManager().redo(this.session),this.renderer.scrollCursorIntoView(null,.5)},e.prototype.destroy=function(){this.$toDestroy&&(this.$toDestroy.forEach(function(e){e.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()},e.prototype.setAutoScrollEditorIntoView=function(e){if(!e)return;var t,n=this,r=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var i=this.$scrollAnchor;i.style.cssText="position:absolute",this.container.insertBefore(i,this.container.firstChild);var s=this.on("changeSelection",function(){r=!0}),o=this.renderer.on("beforeRender",function(){r&&(t=n.renderer.container.getBoundingClientRect())}),u=this.renderer.on("afterRender",function(){if(r&&t&&(n.isFocused()||n.searchBox&&n.searchBox.isFocused())){var e=n.renderer,s=e.$cursorLayer.$pixelPos,o=e.layerConfig,u=s.top-o.offset;s.top>=0&&u+t.top<0?r=!0:s.topwindow.innerHeight?r=!1:r=null,r!=null&&(i.style.top=u+"px",i.style.left=s.left+"px",i.style.height=o.lineHeight+"px",i.scrollIntoView(r)),r=t=null}});this.setAutoScrollEditorIntoView=function(e){if(e)return;delete this.setAutoScrollEditorIntoView,this.off("changeSelection",s),this.renderer.off("afterRender",u),this.renderer.off("beforeRender",o)}},e.prototype.$resetCursorStyle=function(){var e=this.$cursorStyle||"ace",t=this.renderer.$cursorLayer;if(!t)return;t.setSmoothBlinking(/smooth/.test(e)),t.isBlinking=!this.$readOnly&&e!="wide",s.setCssClass(t.element,"ace_slim-cursors",/slim/.test(e))},e.prototype.prompt=function(e,t,n){var r=this;y.loadModule("ace/ext/prompt",function(i){i.prompt(r,e,t,n)})},e}();N.$uid=0,N.prototype.curOp=null,N.prototype.prevOp={},N.prototype.$mergeableCommands=["backspace","del","insertstring"],N.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"],["&&","||"],["==","!="]],i.implement(N.prototype,v),y.defineOptions(N.prototype,"editor",{selectionStyle:{set:function(e){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:e})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(e){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(e){this.textInput.setReadOnly(e),this.$resetCursorStyle()},initialValue:!1},copyWithEmptySelection:{set:function(e){this.textInput.setCopyWithEmptySelection(e)},initialValue:!1},cursorStyle:{set:function(e){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},enableAutoIndent:{initialValue:!0},autoScrollEditorIntoView:{set:function(e){this.setAutoScrollEditorIntoView(e)}},keyboardHandler:{set:function(e){this.setKeyboardHandler(e)},get:function(){return this.$keybindingId},handlesSet:!0},value:{set:function(e){this.session.setValue(e)},get:function(){return this.getValue()},handlesSet:!0,hidden:!0},session:{set:function(e){this.setSession(e)},get:function(){return this.session},handlesSet:!0,hidden:!0},showLineNumbers:{set:function(e){this.renderer.$gutterLayer.setShowLineNumbers(e),this.renderer.$loop.schedule(this.renderer.CHANGE_GUTTER),e&&this.$relativeLineNumbers?C.attach(this):C.detach(this)},initialValue:!0},relativeLineNumbers:{set:function(e){this.$showLineNumbers&&e?C.attach(this):C.detach(this)}},placeholder:{set:function(e){this.$updatePlaceholder||(this.$updatePlaceholder=function(){var e=this.session&&(this.renderer.$composition||this.session.getLength()>1||this.session.getLine(0).length>0);if(e&&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(!e&&!this.renderer.placeholderNode){this.renderer.on("afterRender",this.$updatePlaceholder),s.addCssClass(this.container,"ace_hasPlaceholder");var t=s.createElement("div");t.className="ace_placeholder",t.textContent=this.$placeholder||"",this.renderer.placeholderNode=t,this.renderer.content.appendChild(this.renderer.placeholderNode)}else!e&&this.renderer.placeholderNode&&(this.renderer.placeholderNode.textContent=this.$placeholder||"")}.bind(this),this.on("input",this.$updatePlaceholder)),this.$updatePlaceholder()}},enableKeyboardAccessibility:{set:function(e){var t={name:"blurTextInput",description:"Set focus to the editor content div to allow tabbing through the page",bindKey:"Esc",exec:function(e){e.blur(),e.renderer.scroller.focus()},readOnly:!0},n=function(e){if(e.target==this.renderer.scroller&&e.keyCode===T.enter){e.preventDefault();var t=this.getCursorPosition().row;this.isRowVisible(t)||this.scrollToLine(t,!0,!0),this.focus()}},r;e?(this.renderer.enableKeyboardAccessibility=!0,this.renderer.keyboardFocusClassName="ace_keyboard-focus",this.textInput.getElement().setAttribute("tabindex",-1),this.textInput.setNumberOfExtraLines(u.isWin?3:0),this.renderer.scroller.setAttribute("tabindex",0),this.renderer.scroller.setAttribute("role","group"),this.renderer.scroller.setAttribute("aria-roledescription",S("editor")),this.renderer.scroller.classList.add(this.renderer.keyboardFocusClassName),this.renderer.scroller.setAttribute("aria-label",S("Editor content, press Enter to start editing, press Escape to exit")),this.renderer.scroller.addEventListener("keyup",n.bind(this)),this.commands.addCommand(t),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",S("editor")),this.renderer.$gutter.setAttribute("aria-label",S("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),r||(r=new E(this)),r.addListener()):(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",n.bind(this)),this.commands.removeCommand(t),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),r&&r.removeListener())},initialValue:!1},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 C={getText:function(e,t){return(Math.abs(e.selection.lead.row-t)||t+1+(t<9?"\u00b7":""))+""},getWidth:function(e,t,n){return Math.max(t.toString().length,(n.lastRow+1).toString().length,2)*n.characterWidth},update:function(e,t){t.renderer.$loop.schedule(t.renderer.CHANGE_GUTTER)},attach:function(e){e.renderer.$gutterLayer.$renderer=this,e.on("changeSelection",this.update),this.update(null,e)},detach:function(e){e.renderer.$gutterLayer.$renderer==this&&(e.renderer.$gutterLayer.$renderer=null),e.off("changeSelection",this.update),this.update(null,e)}};t.Editor=N}),define("ace/layer/lines",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";var r=e("../lib/dom"),i=function(){function e(e,t){this.element=e,this.canvasHeight=t||5e5,this.element.style.height=this.canvasHeight*2+"px",this.cells=[],this.cellCache=[],this.$offsetCoefficient=0}return e.prototype.moveContainer=function(e){r.translate(this.element,0,-(e.firstRowScreen*e.lineHeight%this.canvasHeight)-e.offset*this.$offsetCoefficient)},e.prototype.pageChanged=function(e,t){return Math.floor(e.firstRowScreen*e.lineHeight/this.canvasHeight)!==Math.floor(t.firstRowScreen*t.lineHeight/this.canvasHeight)},e.prototype.computeLineTop=function(e,t,n){var r=t.firstRowScreen*t.lineHeight,i=Math.floor(r/this.canvasHeight),s=n.documentToScreenRow(e,0)*t.lineHeight;return s-i*this.canvasHeight},e.prototype.computeLineHeight=function(e,t,n){return t.lineHeight*n.getRowLineCount(e)},e.prototype.getLength=function(){return this.cells.length},e.prototype.get=function(e){return this.cells[e]},e.prototype.shift=function(){this.$cacheCell(this.cells.shift())},e.prototype.pop=function(){this.$cacheCell(this.cells.pop())},e.prototype.push=function(e){if(Array.isArray(e)){this.cells.push.apply(this.cells,e);var t=r.createFragment(this.element);for(var n=0;ns&&(a=i.end.row+1,i=t.getNextFoldLine(a,i),s=i?i.start.row:Infinity);if(a>r){while(this.$lines.getLength()>u+1)this.$lines.pop();break}o=this.$lines.get(++u),o?o.row=a:(o=this.$lines.createCell(a,e,this.session,l),this.$lines.push(o)),this.$renderCell(o,e,i,a),a++}this._signal("afterRender"),this.$updateGutterWidth(e)},e.prototype.$updateGutterWidth=function(e){var t=this.session,n=t.gutterRenderer||this.$renderer,r=t.$firstLineNumber,i=this.$lines.last()?this.$lines.last().text:"";if(this.$fixedWidth||t.$useWrapMode)i=t.getLength()+r-1;var s=n?n.getWidth(t,i,e):i.toString().length*e.characterWidth,o=this.$padding||this.$computePadding();s+=o.left+o.right,s!==this.gutterWidth&&!isNaN(s)&&(this.gutterWidth=s,this.element.parentNode.style.width=this.element.style.width=Math.ceil(this.gutterWidth)+"px",this._signal("changeGutterWidth",s))},e.prototype.$updateCursorRow=function(){if(!this.$highlightGutterLine)return;var e=this.session.selection.getCursor();if(this.$cursorRow===e.row)return;this.$cursorRow=e.row},e.prototype.updateLineHighlight=function(){if(!this.$highlightGutterLine)return;var e=this.session.selection.cursor.row;this.$cursorRow=e;if(this.$cursorCell&&this.$cursorCell.row==e)return;this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ",""));var t=this.$lines.cells;this.$cursorCell=null;for(var n=0;n=this.$cursorRow){if(r.row>this.$cursorRow){var i=this.session.getFoldLine(this.$cursorRow);if(!(n>0&&i&&i.start.row==t[n-1].row))break;r=t[n-1]}r.element.className="ace_gutter-active-line "+r.element.className,this.$cursorCell=r;break}}},e.prototype.scrollLines=function(e){var t=this.config;this.config=e,this.$updateCursorRow();if(this.$lines.pageChanged(t,e))return this.update(e);this.$lines.moveContainer(e);var n=Math.min(e.lastRow+e.gutterOffset,this.session.getLength()-1),r=this.oldLastRow;this.oldLastRow=n;if(!t||r0;i--)this.$lines.shift();if(r>n)for(var i=this.session.getFoldedRowCount(n+1,r);i>0;i--)this.$lines.pop();e.firstRowr&&this.$lines.push(this.$renderLines(e,r+1,n)),this.updateLineHighlight(),this._signal("afterRender"),this.$updateGutterWidth(e)},e.prototype.$renderLines=function(e,t,n){var r=[],i=t,s=this.session.getNextFoldLine(i),o=s?s.start.row:Infinity;for(;;){i>o&&(i=s.end.row+1,s=this.session.getNextFoldLine(i,s),o=s?s.start.row:Infinity);if(i>n)break;var u=this.$lines.createCell(i,e,this.session,l);this.$renderCell(u,e,s,i),r.push(u),i++}return r},e.prototype.$renderCell=function(e,t,n,i){var s=e.element,o=this.session,u=s.childNodes[0],f=s.childNodes[1],l=s.childNodes[2],c=l.firstChild,h=o.$firstLineNumber,p=o.$breakpoints,d=o.$decorations,v=o.gutterRenderer||this.$renderer,m=this.$showFoldWidgets&&o.foldWidgets,g=n?n.start.row:Number.MAX_VALUE,y=t.lineHeight+"px",b=this.$useSvgGutterIcons?"ace_gutter-cell_svg-icons ":"ace_gutter-cell ",w=this.$useSvgGutterIcons?"ace_icon_svg":"ace_icon",E=(v?v.getText(o,i):i+h).toString();this.$highlightGutterLine&&(i==this.$cursorRow||n&&i=g&&this.$cursorRow<=n.end.row)&&(b+="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)),p[i]&&(b+=p[i]),d[i]&&(b+=d[i]),this.$annotations[i]&&i!==g&&(b+=this.$annotations[i].className);if(m){var S=m[i];S==null&&(S=m[i]=o.getFoldWidget(i))}if(S){var x="ace_fold-widget ace_"+S,T=S=="start"&&i==g&&in.right-t.right)return"foldWidgets"},e}();f.prototype.$fixedWidth=!1,f.prototype.$highlightGutterLine=!0,f.prototype.$renderer="",f.prototype.$showLineNumbers=!0,f.prototype.$showFoldWidgets=!0,i.implement(f.prototype,o),t.Gutter=f}),define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(e,t,n){"use strict";function o(e,t,n,r){return(e?1:0)|(t?2:0)|(n?4:0)|(r?8:0)}var r=e("../range").Range,i=e("../lib/dom"),s=function(){function e(e){this.element=i.createElement("div"),this.element.className="ace_layer ace_marker-layer",e.appendChild(this.element)}return e.prototype.setPadding=function(e){this.$padding=e},e.prototype.setSession=function(e){this.session=e},e.prototype.setMarkers=function(e){this.markers=e},e.prototype.elt=function(e,t){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=t,n.className=e},e.prototype.update=function(e){if(!e)return;this.config=e,this.i=0;var t;for(var n in this.markers){var r=this.markers[n];if(!r.range){r.update(t,this,this.session,e);continue}var i=r.range.clipRows(e.firstRow,e.lastRow);if(i.isEmpty())continue;i=i.toScreenRange(this.session);if(r.renderer){var s=this.$getTop(i.start.row,e),o=this.$padding+i.start.column*e.characterWidth;r.renderer(t,i,o,s,e)}else r.type=="fullLine"?this.drawFullLineMarker(t,i,r.clazz,e):r.type=="screenLine"?this.drawScreenLineMarker(t,i,r.clazz,e):i.isMultiLine()?r.type=="text"?this.drawTextMarker(t,i,r.clazz,e):this.drawMultiLineMarker(t,i,r.clazz,e):this.drawSingleLineMarker(t,i,r.clazz+" ace_start"+" ace_br15",e)}if(this.i!=-1)while(this.ip,l==f),i,l==f?0:1,s)},e.prototype.drawMultiLineMarker=function(e,t,n,r,i){var s=this.$padding,o=r.lineHeight,u=this.$getTop(t.start.row,r),a=s+t.start.column*r.characterWidth;i=i||"";if(this.session.$bidiHandler.isBidiRow(t.start.row)){var f=t.clone();f.end.row=f.start.row,f.end.column=this.session.getLine(f.start.row).length,this.drawBidiSingleLineMarker(e,f,n+" ace_br1 ace_start",r,null,i)}else this.elt(n+" ace_br1 ace_start","height:"+o+"px;"+"right:0;"+"top:"+u+"px;left:"+a+"px;"+(i||""));if(this.session.$bidiHandler.isBidiRow(t.end.row)){var f=t.clone();f.start.row=f.end.row,f.start.column=0,this.drawBidiSingleLineMarker(e,f,n+" ace_br12",r,null,i)}else{u=this.$getTop(t.end.row,r);var l=t.end.column*r.characterWidth;this.elt(n+" ace_br12","height:"+o+"px;"+"width:"+l+"px;"+"top:"+u+"px;"+"left:"+s+"px;"+(i||""))}o=(t.end.row-t.start.row-1)*r.lineHeight;if(o<=0)return;u=this.$getTop(t.start.row+1,r);var c=(t.start.column?1:0)|(t.end.column?0:8);this.elt(n+(c?" ace_br"+c:""),"height:"+o+"px;"+"right:0;"+"top:"+u+"px;"+"left:"+s+"px;"+(i||""))},e.prototype.drawSingleLineMarker=function(e,t,n,r,i,s){if(this.session.$bidiHandler.isBidiRow(t.start.row))return this.drawBidiSingleLineMarker(e,t,n,r,i,s);var o=r.lineHeight,u=(t.end.column+(i||0)-t.start.column)*r.characterWidth,a=this.$getTop(t.start.row,r),f=this.$padding+t.start.column*r.characterWidth;this.elt(n,"height:"+o+"px;"+"width:"+u+"px;"+"top:"+a+"px;"+"left:"+f+"px;"+(s||""))},e.prototype.drawBidiSingleLineMarker=function(e,t,n,r,i,s){var o=r.lineHeight,u=this.$getTop(t.start.row,r),a=this.$padding,f=this.session.$bidiHandler.getSelections(t.start.column,t.end.column);f.forEach(function(e){this.elt(n,"height:"+o+"px;"+"width:"+(e.width+(i||0))+"px;"+"top:"+u+"px;"+"left:"+(a+e.left)+"px;"+(s||""))},this)},e.prototype.drawFullLineMarker=function(e,t,n,r,i){var s=this.$getTop(t.start.row,r),o=r.lineHeight;t.start.row!=t.end.row&&(o+=this.$getTop(t.end.row,r)-s),this.elt(n,"height:"+o+"px;"+"top:"+s+"px;"+"left:0;right:0;"+(i||""))},e.prototype.drawScreenLineMarker=function(e,t,n,r,i){var s=this.$getTop(t.start.row,r),o=r.lineHeight;this.elt(n,"height:"+o+"px;"+"top:"+s+"px;"+"left:0;right:0;"+(i||""))},e}();s.prototype.$padding=0,t.Marker=s}),define("ace/layer/text_util",["require","exports","module"],function(e,t,n){var r=new Set(["text","rparen","lparen"]);t.isTextToken=function(e){return r.has(e)}}),define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/layer/lines","ace/lib/event_emitter","ace/config","ace/layer/text_util"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../lib/dom"),s=e("../lib/lang"),o=e("./lines").Lines,u=e("../lib/event_emitter").EventEmitter,a=e("../config").nls,f=e("./text_util").isTextToken,l=function(){function e(e){this.dom=i,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 o(this.element)}return e.prototype.$updateEolChar=function(){var e=this.session.doc,t=e.getNewLineCharacter()=="\n"&&e.getNewLineMode()!="windows",n=t?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;if(this.EOL_CHAR!=n)return this.EOL_CHAR=n,!0},e.prototype.setPadding=function(e){this.$padding=e,this.element.style.margin="0 "+e+"px"},e.prototype.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},e.prototype.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},e.prototype.$setFontMetrics=function(e){this.$fontMetrics=e,this.$fontMetrics.on("changeCharacterSize",function(e){this._signal("changeCharacterSize",e)}.bind(this)),this.$pollSizeChanges()},e.prototype.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},e.prototype.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},e.prototype.setSession=function(e){this.session=e,e&&this.$computeTabString()},e.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)},e.prototype.setDisplayIndentGuides=function(e){return this.displayIndentGuides==e?!1:(this.displayIndentGuides=e,this.$computeTabString(),!0)},e.prototype.setHighlightIndentGuides=function(e){return this.$highlightIndentGuides===e?!1:(this.$highlightIndentGuides=e,e)},e.prototype.$computeTabString=function(){var e=this.session.getTabSize();this.tabSize=e;var t=this.$tabStrings=[0];for(var n=1;nl&&(u=a.end.row+1,a=this.session.getNextFoldLine(u,a),l=a?a.start.row:Infinity);if(u>i)break;var c=s[o++];if(c){this.dom.removeChildren(c),this.$renderLine(c,u,u==l?a:!1),f&&(c.style.top=this.$lines.computeLineTop(u,e,this.session)+"px");var h=e.lineHeight*this.session.getRowLength(u)+"px";c.style.height!=h&&(f=!0,c.style.height=h)}u++}if(f)while(o0;i--)this.$lines.shift();if(t.lastRow>e.lastRow)for(var i=this.session.getFoldedRowCount(e.lastRow+1,t.lastRow);i>0;i--)this.$lines.pop();e.firstRowt.lastRow&&this.$lines.push(this.$renderLinesFragment(e,t.lastRow+1,e.lastRow)),this.$highlightIndentGuide()},e.prototype.$renderLinesFragment=function(e,t,n){var r=[],s=t,o=this.session.getNextFoldLine(s),u=o?o.start.row:Infinity;for(;;){s>u&&(s=o.end.row+1,o=this.session.getNextFoldLine(s,o),u=o?o.start.row:Infinity);if(s>n)break;var a=this.$lines.createCell(s,e,this.session),f=a.element;this.dom.removeChildren(f),i.setStyle(f.style,"height",this.$lines.computeLineHeight(s,e,this.session)+"px"),i.setStyle(f.style,"top",this.$lines.computeLineTop(s,e,this.session)+"px"),this.$renderLine(f,s,s==u?o:!1),this.$useLineGroups()?f.className="ace_line_group":f.className="ace_line",r.push(a),s++}return r},e.prototype.update=function(e){this.$lines.moveContainer(e),this.config=e;var t=e.firstRow,n=e.lastRow,r=this.$lines;while(r.getLength())r.pop();r.push(this.$renderLinesFragment(e,t,n))},e.prototype.$renderToken=function(e,t,n,r){var i=this,o=/(\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,u=this.dom.createFragment(this.element),l,c=0;while(l=o.exec(r)){var h=l[1],p=l[2],d=l[3],v=l[4],m=l[5];if(!i.showSpaces&&p)continue;var g=c!=l.index?r.slice(c,l.index):"";c=l.index+l[0].length,g&&u.appendChild(this.dom.createTextNode(g,this.element));if(h){var y=i.session.getScreenTabSize(t+l.index);u.appendChild(i.$tabStrings[y].cloneNode(!0)),t+=y-1}else if(p)if(i.showSpaces){var b=this.dom.createElement("span");b.className="ace_invisible ace_invisible_space",b.textContent=s.stringRepeat(i.SPACE_CHAR,p.length),u.appendChild(b)}else u.appendChild(this.dom.createTextNode(p,this.element));else if(d){var b=this.dom.createElement("span");b.className="ace_invisible ace_invisible_space ace_invalid",b.textContent=s.stringRepeat(i.SPACE_CHAR,d.length),u.appendChild(b)}else if(v){t+=1;var b=this.dom.createElement("span");b.style.width=i.config.characterWidth*2+"px",b.className=i.showSpaces?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",b.textContent=i.showSpaces?i.SPACE_CHAR:v,u.appendChild(b)}else if(m){t+=1;var b=this.dom.createElement("span");b.style.width=i.config.characterWidth*2+"px",b.className="ace_cjk",b.textContent=m,u.appendChild(b)}}u.appendChild(this.dom.createTextNode(c?r.slice(c):r,this.element));if(!f(n.type)){var w="ace_"+n.type.replace(/\./g," ace_"),b=this.dom.createElement("span");n.type=="fold"&&(b.style.width=n.value.length*this.config.characterWidth+"px",b.setAttribute("title",a("Unfold code"))),b.className=w,b.appendChild(u),e.appendChild(b)}else e.appendChild(u);return t+r.length},e.prototype.renderIndentGuide=function(e,t,n){var r=t.search(this.$indentGuideRe);if(r<=0||r>=n)return t;if(t[0]==" "){r-=r%this.tabSize;var i=r/this.tabSize;for(var s=0;ss[o].start.row?this.$highlightIndentGuideMarker.dir=-1:this.$highlightIndentGuideMarker.dir=1;break}}if(!this.$highlightIndentGuideMarker.end&&e[t.row]!==""&&t.column===e[t.row].length){this.$highlightIndentGuideMarker.dir=1;for(var o=t.row+1;o0)for(var i=0;i=this.$highlightIndentGuideMarker.start+1){if(r.row>=this.$highlightIndentGuideMarker.end)break;this.$setIndentGuideActive(r,t)}}else for(var n=e.length-1;n>=0;n--){var r=e[n];if(this.$highlightIndentGuideMarker.end&&r.row=o)u=this.$renderToken(a,u,l,c.substring(0,o-r)),c=c.substring(o-r),r=o,a=this.$createLineElement(),e.appendChild(a),a.appendChild(this.dom.createTextNode(s.stringRepeat("\u00a0",n.indent),this.element)),i++,u=0,o=n[i]||Number.MAX_VALUE;c.length!=0&&(r+=c.length,u=this.$renderToken(a,u,l,c))}}n[n.length-1]>this.MAX_LINE_LENGTH&&this.$renderOverflowMessage(a,u,null,"",!0)},e.prototype.$renderSimpleLine=function(e,t){var n=0;for(var r=0;rthis.MAX_LINE_LENGTH)return this.$renderOverflowMessage(e,n,i,s);n=this.$renderToken(e,n,i,s)}},e.prototype.$renderOverflowMessage=function(e,t,n,r,i){n&&this.$renderToken(e,t,n,r.slice(0,this.MAX_LINE_LENGTH-t));var s=this.dom.createElement("span");s.className="ace_inline_button ace_keyword ace_toggle_wrap",s.textContent=i?"":"",e.appendChild(s)},e.prototype.$renderLine=function(e,t,n){!n&&n!=0&&(n=this.session.getFoldLine(t));if(n)var r=this.$getFoldLineTokens(t,n);else var r=this.session.getTokens(t);var i=e;if(r.length){var s=this.session.getRowSplitData(t);if(s&&s.length){this.$renderWrappedLine(e,r,s);var i=e.lastChild}else{var i=e;this.$useLineGroups()&&(i=this.$createLineElement(),e.appendChild(i)),this.$renderSimpleLine(i,r)}}else this.$useLineGroups()&&(i=this.$createLineElement(),e.appendChild(i));if(this.showEOL&&i){n&&(t=n.end.row);var o=this.dom.createElement("span");o.className="ace_invisible ace_invisible_eol",o.textContent=t==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,i.appendChild(o)}},e.prototype.$getFoldLineTokens=function(e,t){function i(e,t,n){var i=0,s=0;while(s+e[i].value.lengthn-t&&(o=o.substring(0,n-t)),r.push({type:e[i].type,value:o}),s=t+o.length,i+=1}while(sn?r.push({type:e[i].type,value:o.substring(0,n-s)}):r.push(e[i]),s+=o.length,i+=1}}var n=this.session,r=[],s=n.getTokens(e);return t.walk(function(e,t,o,u,a){e!=null?r.push({type:"fold",value:e}):(a&&(s=n.getTokens(t)),s.length&&i(s,u,o))},t.end.row,this.session.getLine(t.end.row).length),r},e.prototype.$useLineGroups=function(){return this.session.getUseWrapMode()},e}();l.prototype.EOF_CHAR="\u00b6",l.prototype.EOL_CHAR_LF="\u00ac",l.prototype.EOL_CHAR_CRLF="\u00a4",l.prototype.EOL_CHAR=l.prototype.EOL_CHAR_LF,l.prototype.TAB_CHAR="\u2014",l.prototype.SPACE_CHAR="\u00b7",l.prototype.$padding=0,l.prototype.MAX_LINE_LENGTH=1e4,l.prototype.showInvisibles=!1,l.prototype.showSpaces=!1,l.prototype.showTabs=!1,l.prototype.showEOL=!1,l.prototype.displayIndentGuides=!0,l.prototype.$highlightIndentGuides=!0,l.prototype.$tabStrings=[],l.prototype.destroy={},l.prototype.onChangeTabSize=l.prototype.$computeTabString,r.implement(l.prototype,u),t.Text=l}),define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";var r=e("../lib/dom"),i=function(){function e(e){this.element=r.createElement("div"),this.element.className="ace_layer ace_cursor-layer",e.appendChild(this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),r.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=this.$updateOpacity.bind(this)}return e.prototype.$updateOpacity=function(e){var t=this.cursors;for(var n=t.length;n--;)r.setStyle(t[n].style,"opacity",e?"":"0")},e.prototype.$startCssAnimation=function(){var e=this.cursors;for(var t=e.length;t--;)e[t].style.animationDuration=this.blinkInterval+"ms";this.$isAnimating=!0,setTimeout(function(){this.$isAnimating&&r.addCssClass(this.element,"ace_animate-blinking")}.bind(this))},e.prototype.$stopCssAnimation=function(){this.$isAnimating=!1,r.removeCssClass(this.element,"ace_animate-blinking")},e.prototype.setPadding=function(e){this.$padding=e},e.prototype.setSession=function(e){this.session=e},e.prototype.setBlinking=function(e){e!=this.isBlinking&&(this.isBlinking=e,this.restartTimer())},e.prototype.setBlinkInterval=function(e){e!=this.blinkInterval&&(this.blinkInterval=e,this.restartTimer())},e.prototype.setSmoothBlinking=function(e){e!=this.smoothBlinking&&(this.smoothBlinking=e,r.setCssClass(this.element,"ace_smooth-blinking",e),this.$updateCursors(!0),this.restartTimer())},e.prototype.addCursor=function(){var e=r.createElement("div");return e.className="ace_cursor",this.element.appendChild(e),this.cursors.push(e),e},e.prototype.removeCursor=function(){if(this.cursors.length>1){var e=this.cursors.pop();return e.parentNode.removeChild(e),e}},e.prototype.hideCursor=function(){this.isVisible=!1,r.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},e.prototype.showCursor=function(){this.isVisible=!0,r.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},e.prototype.restartTimer=function(){var e=this.$updateCursors;clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.$stopCssAnimation(),this.smoothBlinking&&(this.$isSmoothBlinking=!1,r.removeCssClass(this.element,"ace_smooth-blinking")),e(!0);if(!this.isBlinking||!this.blinkInterval||!this.isVisible){this.$stopCssAnimation();return}this.smoothBlinking&&(this.$isSmoothBlinking=!0,setTimeout(function(){this.$isSmoothBlinking&&r.addCssClass(this.element,"ace_smooth-blinking")}.bind(this)));if(r.HAS_CSS_ANIMATION)this.$startCssAnimation();else{var t=function(){this.timeoutId=setTimeout(function(){e(!1)},.6*this.blinkInterval)}.bind(this);this.intervalId=setInterval(function(){e(!0),t()},this.blinkInterval),t()}},e.prototype.getPixelPosition=function(e,t){if(!this.config||!this.session)return{left:0,top:0};e||(e=this.session.selection.getCursor());var n=this.session.documentToScreenPosition(e),r=this.$padding+(this.session.$bidiHandler.isBidiRow(n.row,e.row)?this.session.$bidiHandler.getPosLeft(n.column):n.column*this.config.characterWidth),i=(n.row-(t?this.config.firstRowScreen:0))*this.config.lineHeight;return{left:r,top:i}},e.prototype.isCursorInView=function(e,t){return e.top>=0&&e.tope.height+e.offset||o.top<0)&&n>1)continue;var u=this.cursors[i++]||this.addCursor(),a=u.style;this.drawCursor?this.drawCursor(u,o,e,t[n],this.session):this.isCursorInView(o,e)?(r.setStyle(a,"display","block"),r.translate(u,o.left,o.top),r.setStyle(a,"width",Math.round(e.characterWidth)+"px"),r.setStyle(a,"height",e.lineHeight+"px")):r.setStyle(a,"display","none")}while(this.cursors.length>i)this.removeCursor();var f=this.session.getOverwrite();this.$setOverwrite(f),this.$pixelPos=o,this.restartTimer()},e.prototype.$setOverwrite=function(e){e!=this.overwrite&&(this.overwrite=e,e?r.addCssClass(this.element,"ace_overwrite-cursors"):r.removeCssClass(this.element,"ace_overwrite-cursors"))},e.prototype.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)},e}();i.prototype.$padding=0,i.prototype.drawCursor=null,t.Cursor=i}),define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(e,t,n){"use strict";var r=this&&this.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){function r(){this.constructor=t}if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n),t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),i=e("./lib/oop"),s=e("./lib/dom"),o=e("./lib/event"),u=e("./lib/event_emitter").EventEmitter,a=32768,f=function(){function e(e,t){this.element=s.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+t,this.inner=s.createElement("div"),this.inner.className="ace_scrollbar-inner",this.inner.textContent="\u00a0",this.element.appendChild(this.inner),e.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,o.addListener(this.element,"scroll",this.onScroll.bind(this)),o.addListener(this.element,"mousedown",o.preventDefault)}return e.prototype.setVisible=function(e){this.element.style.display=e?"":"none",this.isVisible=e,this.coeff=1},e}();i.implement(f.prototype,u);var l=function(e){function t(t,n){var r=e.call(this,t,"-v")||this;return r.scrollTop=0,r.scrollHeight=0,n.$scrollbarWidth=r.width=s.scrollbarWidth(t.ownerDocument),r.inner.style.width=r.element.style.width=(r.width||15)+5+"px",r.$minWidth=0,r}return r(t,e),t.prototype.onScroll=function(){if(!this.skipEvent){this.scrollTop=this.element.scrollTop;if(this.coeff!=1){var e=this.element.clientHeight/this.scrollHeight;this.scrollTop=this.scrollTop*(1-e)/(this.coeff-e)}this._emit("scroll",{data:this.scrollTop})}this.skipEvent=!1},t.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},t.prototype.setHeight=function(e){this.element.style.height=e+"px"},t.prototype.setScrollHeight=function(e){this.scrollHeight=e,e>a?(this.coeff=a/e,e=a):this.coeff!=1&&(this.coeff=1),this.inner.style.height=e+"px"},t.prototype.setScrollTop=function(e){this.scrollTop!=e&&(this.skipEvent=!0,this.scrollTop=e,this.element.scrollTop=e*this.coeff)},t}(f);l.prototype.setInnerHeight=l.prototype.setScrollHeight;var c=function(e){function t(t,n){var r=e.call(this,t,"-h")||this;return r.scrollLeft=0,r.height=n.$scrollbarWidth,r.inner.style.height=r.element.style.height=(r.height||15)+5+"px",r}return r(t,e),t.prototype.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},t.prototype.getHeight=function(){return this.isVisible?this.height:0},t.prototype.setWidth=function(e){this.element.style.width=e+"px"},t.prototype.setInnerWidth=function(e){this.inner.style.width=e+"px"},t.prototype.setScrollWidth=function(e){this.inner.style.width=e+"px"},t.prototype.setScrollLeft=function(e){this.scrollLeft!=e&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=e)},t}(f);t.ScrollBar=l,t.ScrollBarV=l,t.ScrollBarH=c,t.VScrollBar=l,t.HScrollBar=c}),define("ace/scrollbar_custom",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(e,t,n){"use strict";var r=this&&this.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){function r(){this.constructor=t}if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n),t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),i=e("./lib/oop"),s=e("./lib/dom"),o=e("./lib/event"),u=e("./lib/event_emitter").EventEmitter;s.importCssString(".ace_editor>.ace_sb-v div, .ace_editor>.ace_sb-h div{\n position: absolute;\n background: rgba(128, 128, 128, 0.6);\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n border: 1px solid #bbb;\n border-radius: 2px;\n z-index: 8;\n}\n.ace_editor>.ace_sb-v, .ace_editor>.ace_sb-h {\n position: absolute;\n z-index: 6;\n background: none;\n overflow: hidden!important;\n}\n.ace_editor>.ace_sb-v {\n z-index: 6;\n right: 0;\n top: 0;\n width: 12px;\n}\n.ace_editor>.ace_sb-v div {\n z-index: 8;\n right: 0;\n width: 100%;\n}\n.ace_editor>.ace_sb-h {\n bottom: 0;\n left: 0;\n height: 12px;\n}\n.ace_editor>.ace_sb-h div {\n bottom: 0;\n height: 100%;\n}\n.ace_editor>.ace_sb_grabbed {\n z-index: 8;\n background: #000;\n}","ace_scrollbar.css",!1);var a=function(){function e(e,t){this.element=s.createElement("div"),this.element.className="ace_sb"+t,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,o.addMultiMouseDownListener(this.element,[500,300,300],this,"onMouseDown")}return e.prototype.setVisible=function(e){this.element.style.display=e?"":"none",this.isVisible=e,this.coeff=1},e}();i.implement(a.prototype,u);var f=function(e){function t(t,n){var r=e.call(this,t,"-v")||this;return r.scrollTop=0,r.scrollHeight=0,r.parent=t,r.width=r.VScrollWidth,r.renderer=n,r.inner.style.width=r.element.style.width=(r.width||15)+"px",r.$minWidth=0,r}return r(t,e),t.prototype.onMouseDown=function(e,t){if(e!=="mousedown")return;if(o.getButton(t)!==0||t.detail===2)return;if(t.target===this.inner){var n=this,r=t.clientY,i=function(e){r=e.clientY},s=function(){clearInterval(l)},u=t.clientY,a=this.thumbTop,f=function(){if(r===undefined)return;var e=n.scrollTopFromThumbTop(a+r-u);if(e===n.scrollTop)return;n._emit("scroll",{data:e})};o.capture(this.inner,i,s);var l=setInterval(f,20);return o.preventDefault(t)}var c=t.clientY-this.element.getBoundingClientRect().top-this.thumbHeight/2;return this._emit("scroll",{data:this.scrollTopFromThumbTop(c)}),o.preventDefault(t)},t.prototype.getHeight=function(){return this.height},t.prototype.scrollTopFromThumbTop=function(e){var t=e*(this.pageHeight-this.viewHeight)/(this.slideHeight-this.thumbHeight);return t>>=0,t<0?t=0:t>this.pageHeight-this.viewHeight&&(t=this.pageHeight-this.viewHeight),t},t.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},t.prototype.setHeight=function(e){this.height=Math.max(0,e),this.slideHeight=this.height,this.viewHeight=this.height,this.setScrollHeight(this.pageHeight,!0)},t.prototype.setScrollHeight=function(e,t){if(this.pageHeight===e&&!t)return;this.pageHeight=e,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}))},t.prototype.setScrollTop=function(e){this.scrollTop=e,e<0&&(e=0),this.thumbTop=e*(this.slideHeight-this.thumbHeight)/(this.pageHeight-this.viewHeight),this.inner.style.top=this.thumbTop+"px"},t}(a);f.prototype.setInnerHeight=f.prototype.setScrollHeight;var l=function(e){function t(t,n){var r=e.call(this,t,"-h")||this;return r.scrollLeft=0,r.scrollWidth=0,r.height=r.HScrollHeight,r.inner.style.height=r.element.style.height=(r.height||12)+"px",r.renderer=n,r}return r(t,e),t.prototype.onMouseDown=function(e,t){if(e!=="mousedown")return;if(o.getButton(t)!==0||t.detail===2)return;if(t.target===this.inner){var n=this,r=t.clientX,i=function(e){r=e.clientX},s=function(){clearInterval(l)},u=t.clientX,a=this.thumbLeft,f=function(){if(r===undefined)return;var e=n.scrollLeftFromThumbLeft(a+r-u);if(e===n.scrollLeft)return;n._emit("scroll",{data:e})};o.capture(this.inner,i,s);var l=setInterval(f,20);return o.preventDefault(t)}var c=t.clientX-this.element.getBoundingClientRect().left-this.thumbWidth/2;return this._emit("scroll",{data:this.scrollLeftFromThumbLeft(c)}),o.preventDefault(t)},t.prototype.getHeight=function(){return this.isVisible?this.height:0},t.prototype.scrollLeftFromThumbLeft=function(e){var t=e*(this.pageWidth-this.viewWidth)/(this.slideWidth-this.thumbWidth);return t>>=0,t<0?t=0:t>this.pageWidth-this.viewWidth&&(t=this.pageWidth-this.viewWidth),t},t.prototype.setWidth=function(e){this.width=Math.max(0,e),this.element.style.width=this.width+"px",this.slideWidth=this.width,this.viewWidth=this.width,this.setScrollWidth(this.pageWidth,!0)},t.prototype.setScrollWidth=function(e,t){if(this.pageWidth===e&&!t)return;this.pageWidth=e,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}))},t.prototype.setScrollLeft=function(e){this.scrollLeft=e,e<0&&(e=0),this.thumbLeft=e*(this.slideWidth-this.thumbWidth)/(this.pageWidth-this.viewWidth),this.inner.style.left=this.thumbLeft+"px"},t}(a);l.prototype.setInnerWidth=l.prototype.setScrollWidth,t.ScrollBar=f,t.ScrollBarV=f,t.ScrollBarH=l,t.VScrollBar=f,t.HScrollBar=l}),define("ace/renderloop",["require","exports","module","ace/lib/event"],function(e,t,n){"use strict";var r=e("./lib/event"),i=function(){function e(e,t){this.onRender=e,this.pending=!1,this.changes=0,this.$recursionLimit=2,this.window=t||window;var n=this;this._flush=function(e){n.pending=!1;var t=n.changes;t&&(r.blockIdle(100),n.changes=0,n.onRender(t));if(n.changes){if(n.$recursionLimit--<0)return;n.schedule()}else n.$recursionLimit=2}}return e.prototype.schedule=function(e){this.changes=this.changes|e,this.changes&&!this.pending&&(r.nextFrame(this._flush),this.pending=!0)},e.prototype.clear=function(e){var t=this.changes;return this.changes=0,t},e}();t.RenderLoop=i}),define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/lib/useragent","ace/lib/event_emitter"],function(e,t,n){var r=e("../lib/oop"),i=e("../lib/dom"),s=e("../lib/lang"),o=e("../lib/event"),u=e("../lib/useragent"),a=e("../lib/event_emitter").EventEmitter,f=512,l=typeof ResizeObserver=="function",c=200,h=function(){function e(e){this.el=i.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=i.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=i.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),e.appendChild(this.el),this.$measureNode.textContent=s.stringRepeat("X",f),this.$characterSize={width:0,height:0},l?this.$addObserver():this.checkForSizeChanges()}return e.prototype.$setMeasureNodeStyles=function(e,t){e.width=e.height="auto",e.left=e.top="0px",e.visibility="hidden",e.position="absolute",e.whiteSpace="pre",u.isIE<8?e["font-family"]="inherit":e.font="inherit",e.overflow=t?"hidden":"visible"},e.prototype.checkForSizeChanges=function(e){e===undefined&&(e=this.$measureSizes());if(e&&(this.$characterSize.width!==e.width||this.$characterSize.height!==e.height)){this.$measureNode.style.fontWeight="bold";var t=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=e,this.charSizes=Object.create(null),this.allowBoldFonts=t&&t.width===e.width&&t.height===e.height,this._emit("changeCharacterSize",{data:e})}},e.prototype.$addObserver=function(){var e=this;this.$observer=new window.ResizeObserver(function(t){e.checkForSizeChanges()}),this.$observer.observe(this.$measureNode)},e.prototype.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer||this.$observer)return this.$pollSizeChangesTimer;var e=this;return this.$pollSizeChangesTimer=o.onIdle(function t(){e.checkForSizeChanges(),o.onIdle(t,500)},500)},e.prototype.setPolling=function(e){e?this.$pollSizeChanges():this.$pollSizeChangesTimer&&(clearInterval(this.$pollSizeChangesTimer),this.$pollSizeChangesTimer=0)},e.prototype.$measureSizes=function(e){var t={height:(e||this.$measureNode).clientHeight,width:(e||this.$measureNode).clientWidth/f};return t.width===0||t.height===0?null:t},e.prototype.$measureCharWidth=function(e){this.$main.textContent=s.stringRepeat(e,f);var t=this.$main.getBoundingClientRect();return t.width/f},e.prototype.getCharacterWidth=function(e){var t=this.charSizes[e];return t===undefined&&(t=this.charSizes[e]=this.$measureCharWidth(e)/this.$characterSize.width),t},e.prototype.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$observer&&this.$observer.disconnect(),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)},e.prototype.$getZoom=function(e){return!e||!e.parentElement?1:(window.getComputedStyle(e).zoom||1)*this.$getZoom(e.parentElement)},e.prototype.$initTransformMeasureNodes=function(){var e=function(e,t){return["div",{style:"position: absolute;top:"+e+"px;left:"+t+"px;"}]};this.els=i.buildDom([e(0,0),e(c,0),e(0,c),e(c,c)],this.el)},e.prototype.transformCoordinates=function(e,t){function r(e,t,n){var r=e[1]*t[0]-e[0]*t[1];return[(-t[1]*n[0]+t[0]*n[1])/r,(+e[1]*n[0]-e[0]*n[1])/r]}function i(e,t){return[e[0]-t[0],e[1]-t[1]]}function s(e,t){return[e[0]+t[0],e[1]+t[1]]}function o(e,t){return[e*t[0],e*t[1]]}function u(e){var t=e.getBoundingClientRect();return[t.left,t.top]}if(e){var n=this.$getZoom(this.el);e=o(1/n,e)}this.els||this.$initTransformMeasureNodes();var a=u(this.els[0]),f=u(this.els[1]),l=u(this.els[2]),h=u(this.els[3]),p=r(i(h,f),i(h,l),i(s(f,l),s(h,a))),d=o(1+p[0],i(f,a)),v=o(1+p[1],i(l,a));if(t){var m=t,g=p[0]*m[0]/c+p[1]*m[1]/c+1,y=s(o(m[0],d),o(m[1],v));return s(o(1/g/c,y),a)}var b=i(e,a),w=r(i(d,o(p[0],b)),i(v,o(p[1],b)),b);return o(c,w)},e}();h.prototype.$characterSize={width:0,height:0},r.implement(h.prototype,a),t.FontMetrics=h}),define("ace/css/editor-css",["require","exports","module"],function(e,t,n){n.exports='\n.ace_br1 {border-top-left-radius : 3px;}\n.ace_br2 {border-top-right-radius : 3px;}\n.ace_br3 {border-top-left-radius : 3px; border-top-right-radius: 3px;}\n.ace_br4 {border-bottom-right-radius: 3px;}\n.ace_br5 {border-top-left-radius : 3px; border-bottom-right-radius: 3px;}\n.ace_br6 {border-top-right-radius : 3px; border-bottom-right-radius: 3px;}\n.ace_br7 {border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px;}\n.ace_br8 {border-bottom-left-radius : 3px;}\n.ace_br9 {border-top-left-radius : 3px; border-bottom-left-radius: 3px;}\n.ace_br10{border-top-right-radius : 3px; border-bottom-left-radius: 3px;}\n.ace_br11{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-left-radius: 3px;}\n.ace_br12{border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\n.ace_br13{border-top-left-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\n.ace_br14{border-top-right-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\n.ace_br15{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\n\n\n.ace_editor {\n position: relative;\n overflow: hidden;\n padding: 0;\n font: 12px/normal \'Monaco\', \'Menlo\', \'Ubuntu Mono\', \'Consolas\', \'Source Code Pro\', \'source-code-pro\', monospace;\n direction: ltr;\n text-align: left;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\n.ace_scroller {\n position: absolute;\n overflow: hidden;\n top: 0;\n bottom: 0;\n background-color: inherit;\n -ms-user-select: none;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n cursor: text;\n}\n\n.ace_content {\n position: absolute;\n box-sizing: border-box;\n min-width: 100%;\n contain: style size layout;\n font-variant-ligatures: no-common-ligatures;\n}\n\n.ace_keyboard-focus:focus {\n box-shadow: inset 0 0 0 2px #5E9ED6;\n outline: none;\n}\n\n.ace_dragging .ace_scroller:before{\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n content: \'\';\n background: rgba(250, 250, 250, 0.01);\n z-index: 1000;\n}\n.ace_dragging.ace_dark .ace_scroller:before{\n background: rgba(0, 0, 0, 0.01);\n}\n\n.ace_gutter {\n position: absolute;\n overflow : hidden;\n width: auto;\n top: 0;\n bottom: 0;\n left: 0;\n cursor: default;\n z-index: 4;\n -ms-user-select: none;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n contain: style size layout;\n}\n\n.ace_gutter-active-line {\n position: absolute;\n left: 0;\n right: 0;\n}\n\n.ace_scroller.ace_scroll-left:after {\n content: "";\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset;\n pointer-events: none;\n}\n\n.ace_gutter-cell, .ace_gutter-cell_svg-icons {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n padding-left: 19px;\n padding-right: 6px;\n background-repeat: no-repeat;\n}\n\n.ace_gutter-cell_svg-icons .ace_gutter_annotation {\n margin-left: -14px;\n float: left;\n}\n\n.ace_gutter-cell .ace_gutter_annotation {\n margin-left: -19px;\n float: left;\n}\n\n.ace_gutter-cell.ace_error, .ace_icon.ace_error, .ace_icon.ace_error_fold {\n 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==");\n background-repeat: no-repeat;\n background-position: 2px center;\n}\n\n.ace_gutter-cell.ace_warning, .ace_icon.ace_warning, .ace_icon.ace_warning_fold {\n 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==");\n background-repeat: no-repeat;\n background-position: 2px center;\n}\n\n.ace_gutter-cell.ace_info, .ace_icon.ace_info {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII=");\n background-repeat: no-repeat;\n background-position: 2px center;\n}\n.ace_dark .ace_gutter-cell.ace_info, .ace_dark .ace_icon.ace_info {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC");\n}\n\n.ace_icon_svg.ace_error {\n -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJyZWQiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIj4KPGNpcmNsZSBmaWxsPSJub25lIiBjeD0iOCIgY3k9IjgiIHI9IjciIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPGxpbmUgeDE9IjExIiB5MT0iNSIgeDI9IjUiIHkyPSIxMSIvPgo8bGluZSB4MT0iMTEiIHkxPSIxMSIgeDI9IjUiIHkyPSI1Ii8+CjwvZz4KPC9zdmc+");\n background-color: crimson;\n}\n.ace_icon_svg.ace_warning {\n -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJkYXJrb3JhbmdlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+Cjxwb2x5Z29uIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIHBvaW50cz0iOCAxIDE1IDE1IDEgMTUgOCAxIi8+CjxyZWN0IHg9IjgiIHk9IjEyIiB3aWR0aD0iMC4wMSIgaGVpZ2h0PSIwLjAxIi8+CjxsaW5lIHgxPSI4IiB5MT0iNiIgeDI9IjgiIHkyPSIxMCIvPgo8L2c+Cjwvc3ZnPg==");\n background-color: darkorange;\n}\n.ace_icon_svg.ace_info {\n -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJibHVlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+CjxjaXJjbGUgZmlsbD0ibm9uZSIgY3g9IjgiIGN5PSI4IiByPSI3IiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjxwb2x5bGluZSBwb2ludHM9IjggMTEgOCA4Ii8+Cjxwb2x5bGluZSBwb2ludHM9IjkgOCA2IDgiLz4KPGxpbmUgeDE9IjEwIiB5MT0iMTEiIHgyPSI2IiB5Mj0iMTEiLz4KPHJlY3QgeD0iOCIgeT0iNSIgd2lkdGg9IjAuMDEiIGhlaWdodD0iMC4wMSIvPgo8L2c+Cjwvc3ZnPg==");\n background-color: royalblue;\n}\n\n.ace_icon_svg.ace_error_fold {\n -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSI+CiAgPHBhdGggZD0ibSAxOC45Mjk4NTEsNy44Mjk4MDc2IGMgMC4xNDYzNTMsNi4zMzc0NjA0IC02LjMyMzE0Nyw3Ljc3Nzg0NDQgLTcuNDc3OTEyLDcuNzc3ODQ0NCAtMi4xMDcyNzI2LC0wLjEyODc1IDUuMTE3Njc4LDAuMzU2MjQ5IDUuMDUxNjk4LC03Ljg3MDA2MTggLTAuNjA0NjcyLC04LjAwMzk3MzQ5IC03LjA3NzI3MDYsLTcuNTYzMTE4OSAtNC44NTczLC03LjQzMDM5NTU2IDEuNjA2LC0wLjExNTE0MjI1IDYuODk3NDg1LDEuMjYyNTQ1OTYgNy4yODM1MTQsNy41MjI2MTI5NiB6IiBmaWxsPSJjcmltc29uIiBzdHJva2Utd2lkdGg9IjIiLz4KICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0ibSA4LjExNDc1NjIsMi4wNTI5ODI4IGMgMy4zNDkxNjk4LDAgNi4wNjQxMzI4LDIuNjc2ODYyNyA2LjA2NDEzMjgsNS45Nzg5NTMgMCwzLjMwMjExMjIgLTIuNzE0OTYzLDUuOTc4OTIwMiAtNi4wNjQxMzI4LDUuOTc4OTIwMiAtMy4zNDkxNDczLDAgLTYuMDY0MTc3MiwtMi42NzY4MDggLTYuMDY0MTc3MiwtNS45Nzg5MjAyIDAuMDA1MzksLTMuMjk5ODg2MSAyLjcxNzI2NTYsLTUuOTczNjQwOCA2LjA2NDE3NzIsLTUuOTc4OTUzIHogbSAwLC0xLjczNTgyNzE5IGMgLTQuMzIxNDgzNiwwIC03LjgyNDc0MDM4LDMuNDU0MDE4NDkgLTcuODI0NzQwMzgsNy43MTQ3ODAxOSAwLDQuMjYwNzI4MiAzLjUwMzI1Njc4LDcuNzE0NzQ1MiA3LjgyNDc0MDM4LDcuNzE0NzQ1MiA0LjMyMTQ0OTgsMCA3LjgyNDY5OTgsLTMuNDU0MDE3IDcuODI0Njk5OCwtNy43MTQ3NDUyIDAsLTIuMDQ2MDkxNCAtMC44MjQzOTIsLTQuMDA4MzY3MiAtMi4yOTE3NTYsLTUuNDU1MTc0NiBDIDEyLjE4MDIyNSwxLjEyOTk2NDggMTAuMTkwMDEzLDAuMzE3MTU1NjEgOC4xMTQ3NTYyLDAuMzE3MTU1NjEgWiBNIDYuOTM3NDU2Myw4LjI0MDU5ODUgNC42NzE4Njg1LDEwLjQ4NTg1MiA2LjAwODY4MTQsMTEuODc2NzI4IDguMzE3MDAzNSw5LjYwMDc5MTEgMTAuNjI1MzM3LDExLjg3NjcyOCAxMS45NjIxMzgsMTAuNDg1ODUyIDkuNjk2NTUwOCw4LjI0MDU5ODUgMTEuOTYyMTM4LDYuMDA2ODA2NiAxMC41NzMyNDYsNC42Mzc0MzM1IDguMzE3MDAzNSw2Ljg3MzQyOTcgNi4wNjA3NjA3LDQuNjM3NDMzNSA0LjY3MTg2ODUsNi4wMDY4MDY2IFoiIGZpbGw9ImNyaW1zb24iIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4=");\n background-color: crimson;\n}\n.ace_icon_svg.ace_warning_fold {\n -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNC43NzY5IDE0LjczMzdMOC42NTE5MiAyLjQ4MzY5QzguMzI5NDYgMS44Mzg3NyA3LjQwOTEzIDEuODM4NzcgNy4wODY2NyAyLjQ4MzY5TDAuOTYxNjY5IDE0LjczMzdDMC42NzA3NzUgMTUuMzE1NSAxLjA5MzgzIDE2IDEuNzQ0MjkgMTZIMTMuOTk0M0MxNC42NDQ4IDE2IDE1LjA2NzggMTUuMzE1NSAxNC43NzY5IDE0LjczMzdaTTMuMTYwMDcgMTQuMjVMNy44NjkyOSA0LjgzMTU2TDEyLjU3ODUgMTQuMjVIMy4xNjAwN1pNOC43NDQyOSAxMS42MjVWMTMuMzc1SDYuOTk0MjlWMTEuNjI1SDguNzQ0MjlaTTYuOTk0MjkgMTAuNzVWNy4yNUg4Ljc0NDI5VjEwLjc1SDYuOTk0MjlaIiBmaWxsPSIjRUM3MjExIi8+CjxwYXRoIGQ9Ik0xMS4xOTkxIDIuOTUyMzhDMTAuODgwOSAyLjMxNDY3IDEwLjM1MzcgMS44MDUyNiA5LjcwNTUgMS41MDlMMTEuMDQxIDEuMDY5NzhDMTEuNjg4MyAwLjk0OTgxNCAxMi4zMzcgMS4yNzI2MyAxMi42MzE3IDEuODYxNDFMMTcuNjEzNiAxMS44MTYxQzE4LjM1MjcgMTMuMjkyOSAxNy41OTM4IDE1LjA4MDQgMTYuMDE4IDE1LjU3NDVDMTYuNDA0NCAxNC40NTA3IDE2LjMyMzEgMTMuMjE4OCAxNS43OTI0IDEyLjE1NTVMMTEuMTk5MSAyLjk1MjM4WiIgZmlsbD0iI0VDNzIxMSIvPgo8L3N2Zz4=");\n background-color: darkorange;\n}\n\n.ace_scrollbar {\n contain: strict;\n position: absolute;\n right: 0;\n bottom: 0;\n z-index: 6;\n}\n\n.ace_scrollbar-inner {\n position: absolute;\n cursor: text;\n left: 0;\n top: 0;\n}\n\n.ace_scrollbar-v{\n overflow-x: hidden;\n overflow-y: scroll;\n top: 0;\n}\n\n.ace_scrollbar-h {\n overflow-x: scroll;\n overflow-y: hidden;\n left: 0;\n}\n\n.ace_print-margin {\n position: absolute;\n height: 100%;\n}\n\n.ace_text-input {\n position: absolute;\n z-index: 0;\n width: 0.5em;\n height: 1em;\n opacity: 0;\n background: transparent;\n -moz-appearance: none;\n appearance: none;\n border: none;\n resize: none;\n outline: none;\n overflow: hidden;\n font: inherit;\n padding: 0 1px;\n margin: 0 -1px;\n contain: strict;\n -ms-user-select: text;\n -moz-user-select: text;\n -webkit-user-select: text;\n user-select: text;\n /*with `pre-line` chrome inserts   instead of space*/\n white-space: pre!important;\n}\n.ace_text-input.ace_composition {\n background: transparent;\n color: inherit;\n z-index: 1000;\n opacity: 1;\n}\n.ace_composition_placeholder { color: transparent }\n.ace_composition_marker { \n border-bottom: 1px solid;\n position: absolute;\n border-radius: 0;\n margin-top: 1px;\n}\n\n[ace_nocontext=true] {\n transform: none!important;\n filter: none!important;\n clip-path: none!important;\n mask : none!important;\n contain: none!important;\n perspective: none!important;\n mix-blend-mode: initial!important;\n z-index: auto;\n}\n\n.ace_layer {\n z-index: 1;\n position: absolute;\n overflow: hidden;\n /* workaround for chrome bug https://github.com/ajaxorg/ace/issues/2312*/\n word-wrap: normal;\n white-space: pre;\n height: 100%;\n width: 100%;\n box-sizing: border-box;\n /* setting pointer-events: auto; on node under the mouse, which changes\n during scroll, will break mouse wheel scrolling in Safari */\n pointer-events: none;\n}\n\n.ace_gutter-layer {\n position: relative;\n width: auto;\n text-align: right;\n pointer-events: auto;\n height: 1000000px;\n contain: style size layout;\n}\n\n.ace_text-layer {\n font: inherit !important;\n position: absolute;\n height: 1000000px;\n width: 1000000px;\n contain: style size layout;\n}\n\n.ace_text-layer > .ace_line, .ace_text-layer > .ace_line_group {\n contain: style size layout;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n}\n\n.ace_hidpi .ace_text-layer,\n.ace_hidpi .ace_gutter-layer,\n.ace_hidpi .ace_content,\n.ace_hidpi .ace_gutter {\n contain: strict;\n}\n.ace_hidpi .ace_text-layer > .ace_line, \n.ace_hidpi .ace_text-layer > .ace_line_group {\n contain: strict;\n}\n\n.ace_cjk {\n display: inline-block;\n text-align: center;\n}\n\n.ace_cursor-layer {\n z-index: 4;\n}\n\n.ace_cursor {\n z-index: 4;\n position: absolute;\n box-sizing: border-box;\n border-left: 2px solid;\n /* workaround for smooth cursor repaintng whole screen in chrome */\n transform: translatez(0);\n}\n\n.ace_multiselect .ace_cursor {\n border-left-width: 1px;\n}\n\n.ace_slim-cursors .ace_cursor {\n border-left-width: 1px;\n}\n\n.ace_overwrite-cursors .ace_cursor {\n border-left-width: 0;\n border-bottom: 1px solid;\n}\n\n.ace_hidden-cursors .ace_cursor {\n opacity: 0.2;\n}\n\n.ace_hasPlaceholder .ace_hidden-cursors .ace_cursor {\n opacity: 0;\n}\n\n.ace_smooth-blinking .ace_cursor {\n transition: opacity 0.18s;\n}\n\n.ace_animate-blinking .ace_cursor {\n animation-duration: 1000ms;\n animation-timing-function: step-end;\n animation-name: blink-ace-animate;\n animation-iteration-count: infinite;\n}\n\n.ace_animate-blinking.ace_smooth-blinking .ace_cursor {\n animation-duration: 1000ms;\n animation-timing-function: ease-in-out;\n animation-name: blink-ace-animate-smooth;\n}\n \n@keyframes blink-ace-animate {\n from, to { opacity: 1; }\n 60% { opacity: 0; }\n}\n\n@keyframes blink-ace-animate-smooth {\n from, to { opacity: 1; }\n 45% { opacity: 1; }\n 60% { opacity: 0; }\n 85% { opacity: 0; }\n}\n\n.ace_marker-layer .ace_step, .ace_marker-layer .ace_stack {\n position: absolute;\n z-index: 3;\n}\n\n.ace_marker-layer .ace_selection {\n position: absolute;\n z-index: 5;\n}\n\n.ace_marker-layer .ace_bracket {\n position: absolute;\n z-index: 6;\n}\n\n.ace_marker-layer .ace_error_bracket {\n position: absolute;\n border-bottom: 1px solid #DE5555;\n border-radius: 0;\n}\n\n.ace_marker-layer .ace_active-line {\n position: absolute;\n z-index: 2;\n}\n\n.ace_marker-layer .ace_selected-word {\n position: absolute;\n z-index: 4;\n box-sizing: border-box;\n}\n\n.ace_line .ace_fold {\n box-sizing: border-box;\n\n display: inline-block;\n height: 11px;\n margin-top: -2px;\n vertical-align: middle;\n\n background-image:\n url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),\n url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII=");\n background-repeat: no-repeat, repeat-x;\n background-position: center center, top left;\n color: transparent;\n\n border: 1px solid black;\n border-radius: 2px;\n\n cursor: pointer;\n pointer-events: auto;\n}\n\n.ace_dark .ace_fold {\n}\n\n.ace_fold:hover{\n background-image:\n url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),\n url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC");\n}\n\n.ace_tooltip {\n background-color: #f5f5f5;\n border: 1px solid gray;\n border-radius: 1px;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);\n color: black;\n max-width: 100%;\n padding: 3px 4px;\n position: fixed;\n z-index: 999999;\n box-sizing: border-box;\n cursor: default;\n white-space: pre-wrap;\n word-wrap: break-word;\n line-height: normal;\n font-style: normal;\n font-weight: normal;\n letter-spacing: normal;\n pointer-events: none;\n overflow: auto;\n max-width: min(60em, 66vw);\n overscroll-behavior: contain;\n}\n.ace_tooltip pre {\n white-space: pre-wrap;\n}\n\n.ace_tooltip.ace_dark {\n background-color: #636363;\n color: #fff;\n}\n\n.ace_tooltip:focus {\n outline: 1px solid #5E9ED6;\n}\n\n.ace_icon {\n display: inline-block;\n width: 18px;\n vertical-align: top;\n}\n\n.ace_icon_svg {\n display: inline-block;\n width: 12px;\n vertical-align: top;\n -webkit-mask-repeat: no-repeat;\n -webkit-mask-size: 12px;\n -webkit-mask-position: center;\n}\n\n.ace_folding-enabled > .ace_gutter-cell, .ace_folding-enabled > .ace_gutter-cell_svg-icons {\n padding-right: 13px;\n}\n\n.ace_fold-widget {\n box-sizing: border-box;\n\n margin: 0 -12px 0 1px;\n display: none;\n width: 11px;\n vertical-align: top;\n\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");\n background-repeat: no-repeat;\n background-position: center;\n\n border-radius: 3px;\n \n border: 1px solid transparent;\n cursor: pointer;\n}\n\n.ace_folding-enabled .ace_fold-widget {\n display: inline-block; \n}\n\n.ace_fold-widget.ace_end {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");\n}\n\n.ace_fold-widget.ace_closed {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");\n}\n\n.ace_fold-widget:hover {\n border: 1px solid rgba(0, 0, 0, 0.3);\n background-color: rgba(255, 255, 255, 0.2);\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);\n}\n\n.ace_fold-widget:active {\n border: 1px solid rgba(0, 0, 0, 0.4);\n background-color: rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);\n}\n/**\n * Dark version for fold widgets\n */\n.ace_dark .ace_fold-widget {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");\n}\n.ace_dark .ace_fold-widget.ace_end {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");\n}\n.ace_dark .ace_fold-widget.ace_closed {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");\n}\n.ace_dark .ace_fold-widget:hover {\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);\n background-color: rgba(255, 255, 255, 0.1);\n}\n.ace_dark .ace_fold-widget:active {\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);\n}\n\n.ace_inline_button {\n border: 1px solid lightgray;\n display: inline-block;\n margin: -1px 8px;\n padding: 0 5px;\n pointer-events: auto;\n cursor: pointer;\n}\n.ace_inline_button:hover {\n border-color: gray;\n background: rgba(200,200,200,0.2);\n display: inline-block;\n pointer-events: auto;\n}\n\n.ace_fold-widget.ace_invalid {\n background-color: #FFB4B4;\n border-color: #DE5555;\n}\n\n.ace_fade-fold-widgets .ace_fold-widget {\n transition: opacity 0.4s ease 0.05s;\n opacity: 0;\n}\n\n.ace_fade-fold-widgets:hover .ace_fold-widget {\n transition: opacity 0.05s ease 0.05s;\n opacity:1;\n}\n\n.ace_underline {\n text-decoration: underline;\n}\n\n.ace_bold {\n font-weight: bold;\n}\n\n.ace_nobold .ace_bold {\n font-weight: normal;\n}\n\n.ace_italic {\n font-style: italic;\n}\n\n\n.ace_error-marker {\n background-color: rgba(255, 0, 0,0.2);\n position: absolute;\n z-index: 9;\n}\n\n.ace_highlight-marker {\n background-color: rgba(255, 255, 0,0.2);\n position: absolute;\n z-index: 8;\n}\n\n.ace_mobile-menu {\n position: absolute;\n line-height: 1.5;\n border-radius: 4px;\n -ms-user-select: none;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n background: white;\n box-shadow: 1px 3px 2px grey;\n border: 1px solid #dcdcdc;\n color: black;\n}\n.ace_dark > .ace_mobile-menu {\n background: #333;\n color: #ccc;\n box-shadow: 1px 3px 2px grey;\n border: 1px solid #444;\n\n}\n.ace_mobile-button {\n padding: 2px;\n cursor: pointer;\n overflow: hidden;\n}\n.ace_mobile-button:hover {\n background-color: #eee;\n opacity:1;\n}\n.ace_mobile-button:active {\n background-color: #ddd;\n}\n\n.ace_placeholder {\n font-family: arial;\n transform: scale(0.9);\n transform-origin: left;\n white-space: pre;\n opacity: 0.7;\n margin: 0 10px;\n}\n\n.ace_ghost_text {\n opacity: 0.5;\n font-style: italic;\n white-space: pre;\n}\n\n.ace_screenreader-only {\n position:absolute;\n left:-10000px;\n top:auto;\n width:1px;\n height:1px;\n overflow:hidden;\n}'}),define("ace/layer/decorators",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){"use strict";var r=e("../lib/dom"),i=e("../lib/oop"),s=e("../lib/event_emitter").EventEmitter,o=function(){function e(e,t){this.canvas=r.createElement("canvas"),this.renderer=t,this.pixelRatio=1,this.maxHeight=t.layerConfig.maxHeight,this.lineHeight=t.layerConfig.lineHeight,this.canvasHeight=e.parent.scrollHeight,this.heightRatio=this.canvasHeight/this.maxHeight,this.canvasWidth=e.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)"},e.element.appendChild(this.canvas)}return e.prototype.$updateDecorators=function(e){function i(e,t){return e.priorityt.priority?1:0}var t=this.renderer.theme.isDark===!0?this.colors.dark:this.colors.light;if(e){this.maxHeight=e.maxHeight,this.lineHeight=e.lineHeight,this.canvasHeight=e.height;var n=(e.lastRow+1)*this.lineHeight;nthis.canvasHeight&&(v=this.canvasHeight-this.halfMinDecorationHeight),h=Math.round(v-this.halfMinDecorationHeight),p=Math.round(v+this.halfMinDecorationHeight)}r.fillStyle=t[s[a].type]||null,r.fillRect(0,c,this.canvasWidth,p-h)}}var m=this.renderer.session.selection.getCursor();if(m){var l=this.compensateFoldRows(m.row,u),c=Math.round((m.row-l)*this.lineHeight*this.heightRatio);r.fillStyle="rgba(0, 0, 0, 0.5)",r.fillRect(0,c,this.canvasWidth,2)}},e.prototype.compensateFoldRows=function(e,t){var n=0;if(t&&t.length>0)for(var r=0;rt[r].start.row&&e=t[r].end.row&&(n+=t[r].end.row-t[r].start.row);return n},e}();i.implement(o.prototype,s),t.Decorator=o}),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"],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./lib/dom"),s=e("./lib/lang"),o=e("./config"),u=e("./layer/gutter").Gutter,a=e("./layer/marker").Marker,f=e("./layer/text").Text,l=e("./layer/cursor").Cursor,c=e("./scrollbar").HScrollBar,h=e("./scrollbar").VScrollBar,p=e("./scrollbar_custom").HScrollBar,d=e("./scrollbar_custom").VScrollBar,v=e("./renderloop").RenderLoop,m=e("./layer/font_metrics").FontMetrics,g=e("./lib/event_emitter").EventEmitter,y=e("./css/editor-css"),b=e("./layer/decorators").Decorator,w=e("./lib/useragent");i.importCssString(y,"ace_editor.css",!1);var E=function(){function e(e,t){var n=this;this.container=e||i.createElement("div"),i.addCssClass(this.container,"ace_editor"),i.HI_DPI&&i.addCssClass(this.container,"ace_hidpi"),this.setTheme(t),o.get("useStrictCSP")==null&&o.set("useStrictCSP",!1),this.$gutter=i.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.$gutter.setAttribute("aria-hidden","true"),this.scroller=i.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=i.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new u(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new a(this.content);var r=this.$textLayer=new f(this.content);this.canvas=r.element,this.$markerFront=new a(this.content),this.$cursorLayer=new l(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new h(this.container,this),this.scrollBarH=new c(this.container,this),this.scrollBarV.on("scroll",function(e){n.$scrollAnimation||n.session.setScrollTop(e.data-n.scrollMargin.top)}),this.scrollBarH.on("scroll",function(e){n.$scrollAnimation||n.session.setScrollLeft(e.data-n.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$fontMetrics=new m(this.container),this.$textLayer.$setFontMetrics(this.$fontMetrics),this.$textLayer.on("changeCharacterSize",function(e){n.updateCharacterSize(),n.onResize(!0,n.gutterWidth,n.$size.width,n.$size.height),n._signal("changeCharacterSize",e)}),this.$size={width:0,height:0,scrollerHeight:0,scrollerWidth:0,$dirty:!0},this.layerConfig={width:1,padding:0,firstRow:0,firstRowScreen:0,lastRow:0,lineHeight:0,characterWidth:0,minHeight:1,maxHeight:1,offset:0,height:1,gutterOffset:1},this.scrollMargin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.margin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.$keepTextAreaAtCursor=!w.isIOS,this.$loop=new v(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),this.$addResizeObserver(),o.resetOptions(this),o._signal("renderer",this)}return e.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(),i.setStyle(this.scroller.style,"line-height",this.lineHeight+"px")},e.prototype.setSession=function(e){this.session&&this.session.doc.off("changeNewLineMode",this.onChangeNewLineMode),this.session=e,e&&this.scrollMargin.top&&e.getScrollTop()<=0&&e.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession(e),this.$markerBack.setSession(e),this.$markerFront.setSession(e),this.$gutterLayer.setSession(e),this.$textLayer.setSession(e);if(!e)return;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)},e.prototype.updateLines=function(e,t,n){t===undefined&&(t=Infinity),this.$changedLines?(this.$changedLines.firstRow>e&&(this.$changedLines.firstRow=e),this.$changedLines.lastRowthis.layerConfig.lastRow)return;this.$loop.schedule(this.CHANGE_LINES)},e.prototype.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT),this.$textLayer.$updateEolChar(),this.session.$bidiHandler.setEolChar(this.$textLayer.EOL_CHAR)},e.prototype.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},e.prototype.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},e.prototype.updateFull=function(e){e?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},e.prototype.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},e.prototype.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},e.prototype.onResize=function(e,t,n,r){if(this.resizing>2)return;this.resizing>0?this.resizing++:this.resizing=e?1:0;var i=this.container;r||(r=i.clientHeight||i.scrollHeight),n||(n=i.clientWidth||i.scrollWidth);var s=this.$updateCachedSize(e,t,n,r);this.$resizeTimer&&this.$resizeTimer.cancel();if(!this.$size.scrollerHeight||!n&&!r)return this.resizing=0;e&&(this.$gutterLayer.$padding=null),e?this.$renderChanges(s|this.$changes,!0):this.$loop.schedule(s|this.$changes),this.resizing&&(this.resizing=0),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.$customScrollbar&&this.$updateCustomScrollbar(!0)},e.prototype.$updateCachedSize=function(e,t,n,r){r-=this.$extraHeight||0;var s=0,o=this.$size,u={width:o.width,height:o.height,scrollerHeight:o.scrollerHeight,scrollerWidth:o.scrollerWidth};r&&(e||o.height!=r)&&(o.height=r,s|=this.CHANGE_SIZE,o.scrollerHeight=o.height,this.$horizScroll&&(o.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.setHeight(o.scrollerHeight),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",s|=this.CHANGE_SCROLL);if(n&&(e||o.width!=n)){s|=this.CHANGE_SIZE,o.width=n,t==null&&(t=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=t,i.setStyle(this.scrollBarH.element.style,"left",t+"px"),i.setStyle(this.scroller.style,"left",t+this.margin.left+"px"),o.scrollerWidth=Math.max(0,n-t-this.scrollBarV.getWidth()-this.margin.h),i.setStyle(this.$gutter.style,"left",this.margin.left+"px");var a=this.scrollBarV.getWidth()+"px";i.setStyle(this.scrollBarH.element.style,"right",a),i.setStyle(this.scroller.style,"right",a),i.setStyle(this.scroller.style,"bottom",this.scrollBarH.getHeight()),this.scrollBarH.setWidth(o.scrollerWidth);if(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||e)s|=this.CHANGE_FULL}return o.$dirty=!n||!r,s&&this._signal("resize",u),s},e.prototype.onGutterResize=function(e){var t=this.$showGutter?e:0;t!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,t,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()},e.prototype.adjustWrapLimit=function(){var e=this.$size.scrollerWidth-this.$padding*2,t=Math.floor(e/this.characterWidth);return this.session.adjustWrapLimit(t,this.$showPrintMargin&&this.$printMarginColumn)},e.prototype.setAnimatedScroll=function(e){this.setOption("animatedScroll",e)},e.prototype.getAnimatedScroll=function(){return this.$animatedScroll},e.prototype.setShowInvisibles=function(e){this.setOption("showInvisibles",e),this.session.$bidiHandler.setShowInvisibles(e)},e.prototype.getShowInvisibles=function(){return this.getOption("showInvisibles")},e.prototype.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},e.prototype.setDisplayIndentGuides=function(e){this.setOption("displayIndentGuides",e)},e.prototype.getHighlightIndentGuides=function(){return this.getOption("highlightIndentGuides")},e.prototype.setHighlightIndentGuides=function(e){this.setOption("highlightIndentGuides",e)},e.prototype.setShowPrintMargin=function(e){this.setOption("showPrintMargin",e)},e.prototype.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},e.prototype.setPrintMarginColumn=function(e){this.setOption("printMarginColumn",e)},e.prototype.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},e.prototype.getShowGutter=function(){return this.getOption("showGutter")},e.prototype.setShowGutter=function(e){return this.setOption("showGutter",e)},e.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},e.prototype.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},e.prototype.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},e.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},e.prototype.$updatePrintMargin=function(){if(!this.$showPrintMargin&&!this.$printMarginEl)return;if(!this.$printMarginEl){var e=i.createElement("div");e.className="ace_layer ace_print-margin-layer",this.$printMarginEl=i.createElement("div"),this.$printMarginEl.className="ace_print-margin",e.appendChild(this.$printMarginEl),this.content.insertBefore(e,this.content.firstChild)}var t=this.$printMarginEl.style;t.left=Math.round(this.characterWidth*this.$printMarginColumn+this.$padding)+"px",t.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&this.session.$wrap==-1&&this.adjustWrapLimit()},e.prototype.getContainerElement=function(){return this.container},e.prototype.getMouseEventTarget=function(){return this.scroller},e.prototype.getTextAreaContainer=function(){return this.container},e.prototype.$moveTextAreaToCursor=function(){if(this.$isMousePressed)return;var e=this.textarea.style,t=this.$composition;if(!this.$keepTextAreaAtCursor&&!t){i.translate(this.textarea,-100,0);return}var n=this.$cursorLayer.$pixelPos;if(!n)return;t&&t.markerRange&&(n=this.$cursorLayer.getPixelPosition(t.markerRange.start,!0));var r=this.layerConfig,s=n.top,o=n.left;s-=r.offset;var u=t&&t.useTextareaForIME||w.isMobile?this.lineHeight:1;if(s<0||s>r.height-u){i.translate(this.textarea,0,0);return}var a=1,f=this.$size.height-u;if(!t)s+=this.lineHeight;else if(t.useTextareaForIME){var l=this.textarea.value;a=this.characterWidth*this.session.$getStringScreenWidth(l)[0]}else s+=this.lineHeight+2;o-=this.scrollLeft,o>this.$size.scrollerWidth-a&&(o=this.$size.scrollerWidth-a),o+=this.gutterWidth+this.margin.left,i.setStyle(e,"height",u+"px"),i.setStyle(e,"width",a+"px"),i.translate(this.textarea,Math.min(o,this.$size.scrollerWidth-a),Math.min(s,f))},e.prototype.getFirstVisibleRow=function(){return this.layerConfig.firstRow},e.prototype.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(this.layerConfig.offset===0?0:1)},e.prototype.getLastFullyVisibleRow=function(){var e=this.layerConfig,t=e.lastRow,n=this.session.documentToScreenRow(t,0)*e.lineHeight;return n-this.session.getScrollTop()>e.height-e.lineHeight?t-1:t},e.prototype.getLastVisibleRow=function(){return this.layerConfig.lastRow},e.prototype.setPadding=function(e){this.$padding=e,this.$textLayer.setPadding(e),this.$cursorLayer.setPadding(e),this.$markerFront.setPadding(e),this.$markerBack.setPadding(e),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},e.prototype.setScrollMargin=function(e,t,n,r){var i=this.scrollMargin;i.top=e|0,i.bottom=t|0,i.right=r|0,i.left=n|0,i.v=i.top+i.bottom,i.h=i.left+i.right,i.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-i.top),this.updateFull()},e.prototype.setMargin=function(e,t,n,r){var i=this.margin;i.top=e|0,i.bottom=t|0,i.right=r|0,i.left=n|0,i.v=i.top+i.bottom,i.h=i.left+i.right,this.$updateCachedSize(!0,this.gutterWidth,this.$size.width,this.$size.height),this.updateFull()},e.prototype.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},e.prototype.setHScrollBarAlwaysVisible=function(e){this.setOption("hScrollBarAlwaysVisible",e)},e.prototype.getVScrollBarAlwaysVisible=function(){return this.$vScrollBarAlwaysVisible},e.prototype.setVScrollBarAlwaysVisible=function(e){this.setOption("vScrollBarAlwaysVisible",e)},e.prototype.$updateScrollBarV=function(){var e=this.layerConfig.maxHeight,t=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&(e-=(t-this.lineHeight)*this.$scrollPastEnd,this.scrollTop>e-t&&(e=this.scrollTop+t,this.scrollBarV.scrollTop=null)),this.scrollBarV.setScrollHeight(e+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},e.prototype.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},e.prototype.freeze=function(){this.$frozen=!0},e.prototype.unfreeze=function(){this.$frozen=!1},e.prototype.$renderChanges=function(e,t){this.$changes&&(e|=this.$changes,this.$changes=0);if(!this.session||!this.container.offsetWidth||this.$frozen||!e&&!t){this.$changes|=e;return}if(this.$size.$dirty)return this.$changes|=e,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender",e),this.session&&this.session.$bidiHandler&&this.session.$bidiHandler.updateCharacterWidths(this.$fontMetrics);var n=this.layerConfig;if(e&this.CHANGE_FULL||e&this.CHANGE_SIZE||e&this.CHANGE_TEXT||e&this.CHANGE_LINES||e&this.CHANGE_SCROLL||e&this.CHANGE_H_SCROLL){e|=this.$computeLayerConfig()|this.$loop.clear();if(n.firstRow!=this.layerConfig.firstRow&&n.firstRowScreen==this.layerConfig.firstRowScreen){var r=this.scrollTop+(n.firstRow-Math.max(this.layerConfig.firstRow,0))*this.lineHeight;r>0&&(this.scrollTop=r,e|=this.CHANGE_SCROLL,e|=this.$computeLayerConfig()|this.$loop.clear())}n=this.layerConfig,this.$updateScrollBarV(),e&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),i.translate(this.content,-this.scrollLeft,-n.offset);var s=n.width+2*this.$padding+"px",o=n.minHeight+"px";i.setStyle(this.content.style,"width",s),i.setStyle(this.content.style,"height",o)}e&this.CHANGE_H_SCROLL&&(i.translate(this.content,-this.scrollLeft,-n.offset),this.scroller.className=this.scrollLeft<=0?"ace_scroller ":"ace_scroller ace_scroll-left ",this.enableKeyboardAccessibility&&(this.scroller.className+=this.keyboardFocusClassName));if(e&this.CHANGE_FULL){this.$changedLines=null,this.$textLayer.update(n),this.$showGutter&&this.$gutterLayer.update(n),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n),this.$markerBack.update(n),this.$markerFront.update(n),this.$cursorLayer.update(n),this.$moveTextAreaToCursor(),this._signal("afterRender",e);return}if(e&this.CHANGE_SCROLL){this.$changedLines=null,e&this.CHANGE_TEXT||e&this.CHANGE_LINES?this.$textLayer.update(n):this.$textLayer.scrollLines(n),this.$showGutter&&(e&this.CHANGE_GUTTER||e&this.CHANGE_LINES?this.$gutterLayer.update(n):this.$gutterLayer.scrollLines(n)),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n),this.$markerBack.update(n),this.$markerFront.update(n),this.$cursorLayer.update(n),this.$moveTextAreaToCursor(),this._signal("afterRender",e);return}e&this.CHANGE_TEXT?(this.$changedLines=null,this.$textLayer.update(n),this.$showGutter&&this.$gutterLayer.update(n),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n)):e&this.CHANGE_LINES?((this.$updateLines()||e&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(n),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n)):e&this.CHANGE_TEXT||e&this.CHANGE_GUTTER?(this.$showGutter&&this.$gutterLayer.update(n),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n)):e&this.CHANGE_CURSOR&&(this.$highlightGutterLine&&this.$gutterLayer.updateLineHighlight(n),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(n)),e&this.CHANGE_CURSOR&&(this.$cursorLayer.update(n),this.$moveTextAreaToCursor()),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(n),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(n),this._signal("afterRender",e)},e.prototype.$autosize=function(){var e=this.session.getScreenLength()*this.lineHeight,t=this.$maxLines*this.lineHeight,n=Math.min(t,Math.max((this.$minLines||1)*this.lineHeight,e))+this.scrollMargin.v+(this.$extraHeight||0);this.$horizScroll&&(n+=this.scrollBarH.getHeight()),this.$maxPixelHeight&&n>this.$maxPixelHeight&&(n=this.$maxPixelHeight);var r=n<=2*this.lineHeight,i=!r&&e>t;if(n!=this.desiredHeight||this.$size.height!=this.desiredHeight||i!=this.$vScroll){i!=this.$vScroll&&(this.$vScroll=i,this.scrollBarV.setVisible(i));var s=this.container.clientWidth;this.container.style.height=n+"px",this.$updateCachedSize(!0,this.$gutterWidth,s,n),this.desiredHeight=n,this._signal("autosize")}},e.prototype.$computeLayerConfig=function(){var e=this.session,t=this.$size,n=t.height<=2*this.lineHeight,r=this.session.getScreenLength(),i=r*this.lineHeight,s=this.$getLongestLine(),o=!n&&(this.$hScrollBarAlwaysVisible||t.scrollerWidth-s-2*this.$padding<0),u=this.$horizScroll!==o;u&&(this.$horizScroll=o,this.scrollBarH.setVisible(o));var a=this.$vScroll;this.$maxLines&&this.lineHeight>1&&this.$autosize();var f=t.scrollerHeight+this.lineHeight,l=!this.$maxLines&&this.$scrollPastEnd?(t.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;i+=l;var c=this.scrollMargin;this.session.setScrollTop(Math.max(-c.top,Math.min(this.scrollTop,i-t.scrollerHeight+c.bottom))),this.session.setScrollLeft(Math.max(-c.left,Math.min(this.scrollLeft,s+2*this.$padding-t.scrollerWidth+c.right)));var h=!n&&(this.$vScrollBarAlwaysVisible||t.scrollerHeight-i+l<0||this.scrollTop>c.top),p=a!==h;p&&(this.$vScroll=h,this.scrollBarV.setVisible(h));var d=this.scrollTop%this.lineHeight,v=Math.ceil(f/this.lineHeight)-1,m=Math.max(0,Math.round((this.scrollTop-d)/this.lineHeight)),g=m+v,y,b,w=this.lineHeight;m=e.screenToDocumentRow(m,0);var E=e.getFoldLine(m);E&&(m=E.start.row),y=e.documentToScreenRow(m,0),b=e.getRowLength(m)*w,g=Math.min(e.screenToDocumentRow(g,0),e.getLength()-1),f=t.scrollerHeight+e.getRowLength(g)*w+b,d=this.scrollTop-y*w;var S=0;if(this.layerConfig.width!=s||u)S=this.CHANGE_H_SCROLL;if(u||p)S|=this.$updateCachedSize(!0,this.gutterWidth,t.width,t.height),this._signal("scrollbarVisibilityChanged"),p&&(s=this.$getLongestLine());return this.layerConfig={width:s,padding:this.$padding,firstRow:m,firstRowScreen:y,lastRow:g,lineHeight:w,characterWidth:this.characterWidth,minHeight:f,maxHeight:i,offset:d,gutterOffset:w?Math.max(0,Math.ceil((d+t.height-t.scrollerHeight)/w)):0,height:this.$size.scrollerHeight},this.session.$bidiHandler&&this.session.$bidiHandler.setContentWidth(s-this.$padding),S},e.prototype.$updateLines=function(){if(!this.$changedLines)return;var e=this.$changedLines.firstRow,t=this.$changedLines.lastRow;this.$changedLines=null;var n=this.layerConfig;if(e>n.lastRow+1)return;if(tthis.$textLayer.MAX_LINE_LENGTH&&(e=this.$textLayer.MAX_LINE_LENGTH+30),Math.max(this.$size.scrollerWidth-2*this.$padding,Math.round(e*this.characterWidth))},e.prototype.updateFrontMarkers=function(){this.$markerFront.setMarkers(this.session.getMarkers(!0)),this.$loop.schedule(this.CHANGE_MARKER_FRONT)},e.prototype.updateBackMarkers=function(){this.$markerBack.setMarkers(this.session.getMarkers()),this.$loop.schedule(this.CHANGE_MARKER_BACK)},e.prototype.addGutterDecoration=function(e,t){this.$gutterLayer.addGutterDecoration(e,t)},e.prototype.removeGutterDecoration=function(e,t){this.$gutterLayer.removeGutterDecoration(e,t)},e.prototype.updateBreakpoints=function(e){this._rows=e,this.$loop.schedule(this.CHANGE_GUTTER)},e.prototype.setAnnotations=function(e){this.$gutterLayer.setAnnotations(e),this.$loop.schedule(this.CHANGE_GUTTER)},e.prototype.updateCursor=function(){this.$loop.schedule(this.CHANGE_CURSOR)},e.prototype.hideCursor=function(){this.$cursorLayer.hideCursor()},e.prototype.showCursor=function(){this.$cursorLayer.showCursor()},e.prototype.scrollSelectionIntoView=function(e,t,n){this.scrollCursorIntoView(e,n),this.scrollCursorIntoView(t,n)},e.prototype.scrollCursorIntoView=function(e,t,n){if(this.$size.scrollerHeight===0)return;var r=this.$cursorLayer.getPixelPosition(e),i=r.left,s=r.top,o=n&&n.top||0,u=n&&n.bottom||0;this.$scrollAnimation&&(this.$stopAnimation=!0);var a=this.$scrollAnimation?this.session.getScrollTop():this.scrollTop;a+o>s?(t&&a+o>s+this.lineHeight&&(s-=t*this.$size.scrollerHeight),s===0&&(s=-this.scrollMargin.top),this.session.setScrollTop(s)):a+this.$size.scrollerHeight-u=1-this.scrollMargin.top)return!0;if(t>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight<-1+this.scrollMargin.bottom)return!0;if(e<0&&this.session.getScrollLeft()>=1-this.scrollMargin.left)return!0;if(e>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right)return!0},e.prototype.pixelToScreenCoordinates=function(e,t){var n;if(this.$hasCssTransforms){n={top:0,left:0};var r=this.$fontMetrics.transformCoordinates([e,t]);e=r[1]-this.gutterWidth-this.margin.left,t=r[0]}else n=this.scroller.getBoundingClientRect();var i=e+this.scrollLeft-n.left-this.$padding,s=i/this.characterWidth,o=Math.floor((t+this.scrollTop-n.top)/this.lineHeight),u=this.$blockCursor?Math.floor(s):Math.round(s);return{row:o,column:u,side:s-u>0?1:-1,offsetX:i}},e.prototype.screenToTextCoordinates=function(e,t){var n;if(this.$hasCssTransforms){n={top:0,left:0};var r=this.$fontMetrics.transformCoordinates([e,t]);e=r[1]-this.gutterWidth-this.margin.left,t=r[0]}else n=this.scroller.getBoundingClientRect();var i=e+this.scrollLeft-n.left-this.$padding,s=i/this.characterWidth,o=this.$blockCursor?Math.floor(s):Math.round(s),u=Math.floor((t+this.scrollTop-n.top)/this.lineHeight);return this.session.screenToDocumentPosition(u,Math.max(o,0),i)},e.prototype.textToScreenCoordinates=function(e,t){var n=this.scroller.getBoundingClientRect(),r=this.session.documentToScreenPosition(e,t),i=this.$padding+(this.session.$bidiHandler.isBidiRow(r.row,e)?this.session.$bidiHandler.getPosLeft(r.column):Math.round(r.column*this.characterWidth)),s=r.row*this.lineHeight;return{pageX:n.left+i-this.scrollLeft,pageY:n.top+s-this.scrollTop}},e.prototype.visualizeFocus=function(){i.addCssClass(this.container,"ace_focus")},e.prototype.visualizeBlur=function(){i.removeCssClass(this.container,"ace_focus")},e.prototype.showComposition=function(e){this.$composition=e,e.cssText||(e.cssText=this.textarea.style.cssText),e.useTextareaForIME==undefined&&(e.useTextareaForIME=this.$useTextareaForIME),this.$useTextareaForIME?(i.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor(),this.$cursorLayer.element.style.display="none"):e.markerId=this.session.addMarker(e.markerRange,"ace_composition_marker","text")},e.prototype.setCompositionText=function(e){var t=this.session.selection.cursor;this.addToken(e,"composition_placeholder",t.row,t.column),this.$moveTextAreaToCursor()},e.prototype.hideComposition=function(){if(!this.$composition)return;this.$composition.markerId&&this.session.removeMarker(this.$composition.markerId),i.removeCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText=this.$composition.cssText;var e=this.session.selection.cursor;this.removeExtraToken(e.row,e.column),this.$composition=null,this.$cursorLayer.element.style.display=""},e.prototype.setGhostText=function(e,t){var n=this.session.selection.cursor,r=t||{row:n.row,column:n.column};this.removeGhostText();var i=e.split("\n");this.addToken(i[0],"ghost_text",r.row,r.column),this.$ghostText={text:e,position:{row:r.row,column:r.column}};if(i.length>1){this.$ghostTextWidget={text:i.slice(1).join("\n"),row:r.row,column:r.column,className:"ace_ghost_text"},this.session.widgetManager.addLineWidget(this.$ghostTextWidget);var s=this.$cursorLayer.getPixelPosition(r,!0),o=this.container,u=o.getBoundingClientRect().height,a=i.length*this.lineHeight,f=a1||Math.abs(e.$size.height-r)>1?e.$resizeTimer.delay():e.$resizeTimer.cancel()}),this.$resizeObserver.observe(this.container)},e}();E.prototype.CHANGE_CURSOR=1,E.prototype.CHANGE_MARKER=2,E.prototype.CHANGE_GUTTER=4,E.prototype.CHANGE_SCROLL=8,E.prototype.CHANGE_LINES=16,E.prototype.CHANGE_TEXT=32,E.prototype.CHANGE_SIZE=64,E.prototype.CHANGE_MARKER_BACK=128,E.prototype.CHANGE_MARKER_FRONT=256,E.prototype.CHANGE_FULL=512,E.prototype.CHANGE_H_SCROLL=1024,E.prototype.$changes=0,E.prototype.$padding=null,E.prototype.$frozen=!1,E.prototype.STEPS=8,r.implement(E.prototype,g),o.defineOptions(E.prototype,"renderer",{useResizeObserver:{set:function(e){!e&&this.$resizeObserver?(this.$resizeObserver.disconnect(),this.$resizeTimer.cancel(),this.$resizeTimer=this.$resizeObserver=null):e&&!this.$resizeObserver&&this.$addResizeObserver()}},animatedScroll:{initialValue:!1},showInvisibles:{set:function(e){this.$textLayer.setShowInvisibles(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(e){typeof e=="number"&&(this.$printMarginColumn=e),this.$showPrintMargin=!!e,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(e){this.$gutter.style.display=e?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},useSvgGutterIcons:{set:function(e){this.$gutterLayer.$useSvgGutterIcons=e},initialValue:!1},showFoldedAnnotations:{set:function(e){this.$gutterLayer.$showFoldedAnnotations=e},initialValue:!1},fadeFoldWidgets:{set:function(e){i.setCssClass(this.$gutter,"ace_fade-fold-widgets",e)},initialValue:!1},showFoldWidgets:{set:function(e){this.$gutterLayer.setShowFoldWidgets(e),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(e){this.$textLayer.setDisplayIndentGuides(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightIndentGuides:{set:function(e){this.$textLayer.setHighlightIndentGuides(e)==1?this.$textLayer.$highlightIndentGuide():this.$textLayer.$clearActiveIndentGuide(this.$textLayer.$lines.cells)},initialValue:!0},highlightGutterLine:{set:function(e){this.$gutterLayer.setHighlightGutterLine(e),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},hScrollBarAlwaysVisible:{set:function(e){(!this.$hScrollBarAlwaysVisible||!this.$horizScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(e){(!this.$vScrollBarAlwaysVisible||!this.$vScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(e){typeof e=="number"&&(e+="px"),this.container.style.fontSize=e,this.updateFontSize()},initialValue:12},fontFamily:{set:function(e){this.container.style.fontFamily=e,this.updateFontSize()}},maxLines:{set:function(e){this.updateFull()}},minLines:{set:function(e){this.$minLines<562949953421311||(this.$minLines=0),this.updateFull()}},maxPixelHeight:{set:function(e){this.updateFull()},initialValue:0},scrollPastEnd:{set:function(e){e=+e||0;if(this.$scrollPastEnd==e)return;this.$scrollPastEnd=e,this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(e){this.$gutterLayer.$fixedWidth=!!e,this.$loop.schedule(this.CHANGE_GUTTER)}},customScrollbar:{set:function(e){this.$updateCustomScrollbar(e)},initialValue:!1},theme:{set:function(e){this.setTheme(e)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0},hasCssTransforms:{},useTextareaForIME:{initialValue:!w.isMobile&&!w.isIE}}),t.VirtualRenderer=E}),define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/net","ace/lib/event_emitter","ace/config"],function(e,t,n){"use strict";function u(e){var t="importScripts('"+i.qualifyURL(e)+"');";try{return new Blob([t],{type:"application/javascript"})}catch(n){var r=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,s=new r;return s.append(t),s.getBlob("application/javascript")}}function a(e){if(typeof Worker=="undefined")return{postMessage:function(){},terminate:function(){}};if(o.get("loadWorkerFromBlob")){var t=u(e),n=window.URL||window.webkitURL,r=n.createObjectURL(t);return new Worker(r)}return new Worker(e)}var r=e("../lib/oop"),i=e("../lib/net"),s=e("../lib/event_emitter").EventEmitter,o=e("../config"),f=function(e){e.postMessage||(e=this.$createWorkerFromOldConfig.apply(this,arguments)),this.$worker=e,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(){r.implement(this,s),this.$createWorkerFromOldConfig=function(t,n,r,i,s){e.nameToUrl&&!e.toUrl&&(e.toUrl=e.nameToUrl);if(o.get("packaged")||!e.toUrl)i=i||o.moduleUrl(n,"worker");else{var u=this.$normalizePath;i=i||u(e.toUrl("ace/worker/worker.js",null,"_"));var f={};t.forEach(function(t){f[t]=u(e.toUrl(t,null,"_").replace(/(\.js)?(\?.*)?$/,""))})}return this.$worker=a(i),s&&this.send("importScripts",s),this.$worker.postMessage({init:!0,tlns:f,module:n,classname:r}),this.$worker},this.onMessage=function(e){var t=e.data;switch(t.type){case"event":this._signal(t.name,{data:t.data});break;case"call":var n=this.callbacks[t.id];n&&(n(t.data),delete this.callbacks[t.id]);break;case"error":this.reportError(t.data);break;case"log":window.console&&console.log&&console.log.apply(console,t.data)}},this.reportError=function(e){window.console&&console.error&&console.error(e)},this.$normalizePath=function(e){return i.qualifyURL(e)},this.terminate=function(){this._signal("terminate",{}),this.deltaQueue=null,this.$worker.terminate(),this.$worker.onerror=function(e){e.preventDefault()},this.$worker=null,this.$doc&&this.$doc.off("change",this.changeListener),this.$doc=null},this.send=function(e,t){this.$worker.postMessage({command:e,args:t})},this.call=function(e,t,n){if(n){var r=this.callbackId++;this.callbacks[r]=n,t.push(r)}this.send(e,t)},this.emit=function(e,t){try{t.data&&t.data.err&&(t.data.err={message:t.data.err.message,stack:t.data.err.stack,code:t.data.err.code}),this.$worker&&this.$worker.postMessage({event:e,data:{data:t.data}})}catch(n){console.error(n.stack)}},this.attachToDocument=function(e){this.$doc&&this.terminate(),this.$doc=e,this.call("setValue",[e.getValue()]),e.on("change",this.changeListener,!0)},this.changeListener=function(e){this.deltaQueue||(this.deltaQueue=[],setTimeout(this.$sendDeltaQueue,0)),e.action=="insert"?this.deltaQueue.push(e.start,e.lines):this.deltaQueue.push(e.start,e.end)},this.$sendDeltaQueue=function(){var e=this.deltaQueue;if(!e)return;this.deltaQueue=null,e.length>50&&e.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:e})}}).call(f.prototype);var l=function(e,t,n){var r=null,i=!1,u=Object.create(s),a=[],l=new f({messageBuffer:a,terminate:function(){},postMessage:function(e){a.push(e);if(!r)return;i?setTimeout(c):c()}});l.setEmitSync=function(e){i=e};var c=function(){var e=a.shift();e.command?r[e.command].apply(r,e.args):e.event&&u._signal(e.event,e.data)};return u.postMessage=function(e){l.onMessage({data:e})},u.callback=function(e,t){this.postMessage({type:"call",id:t,data:e})},u.emit=function(e,t){this.postMessage({type:"event",name:e,data:t})},o.loadModule(["worker",t],function(e){r=new e[n](u);while(a.length)c()}),l};t.UIWorkerClient=l,t.WorkerClient=f,t.createWorker=a}),define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(e,t,n){"use strict";var r=e("./range").Range,i=e("./lib/event_emitter").EventEmitter,s=e("./lib/oop"),o=function(){function e(e,t,n,r,i,s){var o=this;this.length=t,this.session=e,this.doc=e.getDocument(),this.mainClass=i,this.othersClass=s,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate,!0),this.$others=r,this.$onCursorChange=function(){setTimeout(function(){o.onCursorChange()})},this.$pos=n;var u=e.getUndoManager().$undoStack||e.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=u.length,this.setup(),e.selection.on("changeCursor",this.$onCursorChange)}return e.prototype.setup=function(){var e=this,t=this.doc,n=this.session;this.selectionBefore=n.selection.toJSON(),n.selection.inMultiSelectMode&&n.selection.toSingleRange(),this.pos=t.createAnchor(this.$pos.row,this.$pos.column);var i=this.pos;i.$insertRight=!0,i.detach(),i.markerId=n.addMarker(new r(i.row,i.column,i.row,i.column+this.length),this.mainClass,null,!1),this.others=[],this.$others.forEach(function(n){var r=t.createAnchor(n.row,n.column);r.$insertRight=!0,r.detach(),e.others.push(r)}),n.setUndoSelect(!1)},e.prototype.showOtherMarkers=function(){if(this.othersActive)return;var e=this.session,t=this;this.othersActive=!0,this.others.forEach(function(n){n.markerId=e.addMarker(new r(n.row,n.column,n.row,n.column+t.length),t.othersClass,null,!1)})},e.prototype.hideOtherMarkers=function(){if(!this.othersActive)return;this.othersActive=!1;for(var e=0;e=this.pos.column&&t.start.column<=this.pos.column+this.length+1,s=t.start.column-this.pos.column;this.updateAnchors(e),i&&(this.length+=n);if(i&&!this.session.$fromUndo)if(e.action==="insert")for(var o=this.others.length-1;o>=0;o--){var u=this.others[o],a={row:u.row,column:u.column+s};this.doc.insertMergedLines(a,e.lines)}else if(e.action==="remove")for(var o=this.others.length-1;o>=0;o--){var u=this.others[o],a={row:u.row,column:u.column+s};this.doc.remove(new r(a.row,a.column,a.row,a.column-n))}this.$updating=!1,this.updateMarkers()},e.prototype.updateAnchors=function(e){this.pos.onChange(e);for(var t=this.others.length;t--;)this.others[t].onChange(e);this.updateMarkers()},e.prototype.updateMarkers=function(){if(this.$updating)return;var e=this,t=this.session,n=function(n,i){t.removeMarker(n.markerId),n.markerId=t.addMarker(new r(n.row,n.column,n.row,n.column+e.length),i,null,!1)};n(this.pos,this.mainClass);for(var i=this.others.length;i--;)n(this.others[i],this.othersClass)},e.prototype.onCursorChange=function(e){if(this.$updating||!this.session)return;var t=this.session.selection.getCursor();t.row===this.pos.row&&t.column>=this.pos.column&&t.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",e)):(this.hideOtherMarkers(),this._emit("cursorLeave",e))},e.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},e.prototype.cancel=function(){if(this.$undoStackDepth===-1)return;var e=this.session.getUndoManager(),t=(e.$undoStack||e.$undostack).length-this.$undoStackDepth;for(var n=0;n1?e.multiSelect.joinSelections():e.multiSelect.splitIntoLines()},bindKey:{win:"Ctrl-Alt-L",mac:"Ctrl-Alt-L"},readOnly:!0},{name:"splitSelectionIntoLines",description:"Split into lines",exec:function(e){e.multiSelect.splitIntoLines()},readOnly:!0},{name:"alignCursors",description:"Align cursors",exec:function(e){e.alignCursors()},bindKey:{win:"Ctrl-Alt-A",mac:"Ctrl-Alt-A"},scrollIntoView:"cursor"},{name:"findAll",description:"Find all",exec:function(e){e.findAll()},bindKey:{win:"Ctrl-Alt-K",mac:"Ctrl-Alt-G"},scrollIntoView:"cursor",readOnly:!0}],t.multiSelectCommands=[{name:"singleSelection",description:"Single selection",bindKey:"esc",exec:function(e){e.exitMultiSelectMode()},scrollIntoView:"cursor",readOnly:!0,isAvailable:function(e){return e&&e.inMultiSelectMode}}];var r=e("../keyboard/hash_handler").HashHandler;t.keyboardHandler=new r(t.multiSelectCommands)}),define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(e,t,n){function h(e,t,n){return c.$options.wrap=!0,c.$options.needle=t,c.$options.backwards=n==-1,c.find(e)}function v(e,t){return e.row==t.row&&e.column==t.column}function m(e){if(e.$multiselectOnSessionChange)return;e.$onAddRange=e.$onAddRange.bind(e),e.$onRemoveRange=e.$onRemoveRange.bind(e),e.$onMultiSelect=e.$onMultiSelect.bind(e),e.$onSingleSelect=e.$onSingleSelect.bind(e),e.$multiselectOnSessionChange=t.onSessionChange.bind(e),e.$checkMultiselectChange=e.$checkMultiselectChange.bind(e),e.$multiselectOnSessionChange(e),e.on("changeSession",e.$multiselectOnSessionChange),e.on("mousedown",o),e.commands.addCommands(f.defaultCommands),g(e)}function g(e){function r(t){n&&(e.renderer.setMouseCursor(""),n=!1)}if(!e.textInput)return;var t=e.textInput.getElement(),n=!1;u.addListener(t,"keydown",function(t){var i=t.keyCode==18&&!(t.ctrlKey||t.shiftKey||t.metaKey);e.$blockSelectEnabled&&i?n||(e.renderer.setMouseCursor("crosshair"),n=!0):n&&r()},e),u.addListener(t,"keyup",r,e),u.addListener(t,"blur",r,e)}var r=e("./range_list").RangeList,i=e("./range").Range,s=e("./selection").Selection,o=e("./mouse/multi_select_handler").onMouseDown,u=e("./lib/event"),a=e("./lib/lang"),f=e("./commands/multi_select_commands");t.commands=f.defaultCommands.concat(f.multiSelectCommands);var l=e("./search").Search,c=new l,p=e("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(p.prototype),function(){this.ranges=null,this.rangeList=null,this.addRange=function(e,t){if(!e)return;if(!this.inMultiSelectMode&&this.rangeCount===0){var n=this.toOrientedRange();this.rangeList.add(n),this.rangeList.add(e);if(this.rangeList.ranges.length!=2)return this.rangeList.removeAll(),t||this.fromOrientedRange(e);this.rangeList.removeAll(),this.rangeList.add(n),this.$onAddRange(n)}e.cursor||(e.cursor=e.end);var r=this.rangeList.add(e);return this.$onAddRange(e),r.length&&this.$onRemoveRange(r),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),t||this.fromOrientedRange(e)},this.toSingleRange=function(e){e=e||this.ranges[0];var t=this.rangeList.removeAll();t.length&&this.$onRemoveRange(t),e&&this.fromOrientedRange(e)},this.substractPoint=function(e){var t=this.rangeList.substractPoint(e);if(t)return this.$onRemoveRange(t),t[0]},this.mergeOverlappingRanges=function(){var e=this.rangeList.merge();e.length&&this.$onRemoveRange(e)},this.$onAddRange=function(e){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(e),this._signal("addRange",{range:e})},this.$onRemoveRange=function(e){this.rangeCount=this.rangeList.ranges.length;if(this.rangeCount==1&&this.inMultiSelectMode){var t=this.rangeList.ranges.pop();e.push(t),this.rangeCount=0}for(var n=e.length;n--;){var r=this.ranges.indexOf(e[n]);this.ranges.splice(r,1)}this._signal("removeRange",{ranges:e}),this.rangeCount===0&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),t=t||this.ranges[0],t&&!t.isEqual(this.getRange())&&this.fromOrientedRange(t)},this.$initRangeList=function(){if(this.rangeList)return;this.rangeList=new r,this.ranges=[],this.rangeCount=0},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){var e=this.ranges.length?this.ranges:[this.getRange()],t=[];for(var n=0;n1){var e=this.rangeList.ranges,t=e[e.length-1],n=i.fromPoints(e[0].start,t.end);this.toSingleRange(),this.setSelectionRange(n,t.cursor==t.start)}else{var r=this.session.documentToScreenPosition(this.cursor),s=this.session.documentToScreenPosition(this.anchor),o=this.rectangularRangeBlock(r,s);o.forEach(this.addRange,this)}},this.rectangularRangeBlock=function(e,t,n){var r=[],s=e.column0)g--;if(g>0){var y=0;while(r[y].isEmpty())y++}for(var b=g;b>=y;b--)r[b].isEmpty()&&r.splice(b,1)}return r}}.call(s.prototype);var d=e("./editor").Editor;(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(e){e.cursor||(e.cursor=e.end);var t=this.getSelectionStyle();return e.marker=this.session.addMarker(e,"ace_selection",t),this.session.$selectionMarkers.push(e),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,e},this.removeSelectionMarker=function(e){if(!e.marker)return;this.session.removeMarker(e.marker);var t=this.session.$selectionMarkers.indexOf(e);t!=-1&&this.session.$selectionMarkers.splice(t,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length},this.removeSelectionMarkers=function(e){var t=this.session.$selectionMarkers;for(var n=e.length;n--;){var r=e[n];if(!r.marker)continue;this.session.removeMarker(r.marker);var i=t.indexOf(r);i!=-1&&t.splice(i,1)}this.session.selectionMarkerCount=t.length},this.$onAddRange=function(e){this.addSelectionMarker(e.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(e){this.removeSelectionMarkers(e.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(e){if(this.inMultiSelectMode)return;this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(f.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onSingleSelect=function(e){if(this.session.multiSelect.inVirtualMode)return;this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(f.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection")},this.$onMultiSelectExec=function(e){var t=e.command,n=e.editor;if(!n.multiSelect)return;if(!t.multiSelectAction){var r=t.exec(n,e.args||{});n.multiSelect.addRange(n.multiSelect.toOrientedRange()),n.multiSelect.mergeOverlappingRanges()}else t.multiSelectAction=="forEach"?r=n.forEachSelection(t,e.args):t.multiSelectAction=="forEachLine"?r=n.forEachSelection(t,e.args,!0):t.multiSelectAction=="single"?(n.exitMultiSelectMode(),r=t.exec(n,e.args||{})):r=t.multiSelectAction(n,e.args||{});return r},this.forEachSelection=function(e,t,n){if(this.inVirtualSelectionMode)return;var r=n&&n.keepOrder,i=n==1||n&&n.$byLines,o=this.session,u=this.selection,a=u.rangeList,f=(r?u:a).ranges,l;if(!f.length)return e.exec?e.exec(this,t||{}):e(this,t||{});var c=u._eventRegistry;u._eventRegistry={};var h=new s(o);this.inVirtualSelectionMode=!0;for(var p=f.length;p--;){if(i)while(p>0&&f[p].start.row==f[p-1].end.row)p--;h.fromOrientedRange(f[p]),h.index=p,this.selection=o.selection=h;var d=e.exec?e.exec(this,t||{}):e(this,t||{});!l&&d!==undefined&&(l=d),h.toOrientedRange(f[p])}h.detach(),this.selection=o.selection=u,this.inVirtualSelectionMode=!1,u._eventRegistry=c,u.mergeOverlappingRanges(),u.ranges[0]&&u.fromOrientedRange(u.ranges[0]);var v=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),v&&v.from==v.to&&this.renderer.animateScrolling(v.from),l},this.exitMultiSelectMode=function(){if(!this.inMultiSelectMode||this.inVirtualSelectionMode)return;this.multiSelect.toSingleRange()},this.getSelectedText=function(){var e="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){var t=this.multiSelect.rangeList.ranges,n=[];for(var r=0;r0);u<0&&(u=0),f>=c&&(f=c-1)}var p=this.session.removeFullLines(u,f);p=this.$reAlignText(p,l),this.session.insert({row:u,column:0},p.join("\n")+"\n"),l||(o.start.column=0,o.end.column=p[p.length-1].length),this.selection.setRange(o)}else{s.forEach(function(e){t.substractPoint(e.cursor)});var d=0,v=Infinity,m=n.map(function(t){var n=t.cursor,r=e.getLine(n.row),i=r.substr(n.column).search(/\S/g);return i==-1&&(i=0),n.column>d&&(d=n.column),io?e.insert(r,a.stringRepeat(" ",s-o)):e.remove(new i(r.row,r.column,r.row,r.column-s+o)),t.start.column=t.end.column=d,t.start.row=t.end.row=r.row,t.cursor=t.end}),t.fromOrientedRange(n[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}},this.$reAlignText=function(e,t){function u(e){return a.stringRepeat(" ",e)}function f(e){return e[2]?u(i)+e[2]+u(s-e[2].length+o)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}function l(e){return e[2]?u(i+s-e[2].length)+e[2]+u(o)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}function c(e){return e[2]?u(i)+e[2]+u(o)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}var n=!0,r=!0,i,s,o;return e.map(function(e){var t=e.match(/(\s*)(.*?)(\s*)([=:].*)/);return t?i==null?(i=t[1].length,s=t[2].length,o=t[3].length,t):(i+s+o!=t[1].length+t[2].length+t[3].length&&(r=!1),i!=t[1].length&&(n=!1),i>t[1].length&&(i=t[1].length),st[3].length&&(o=t[3].length),t):[e]}).map(t?f:n?r?l:f:c)}}).call(d.prototype),t.onSessionChange=function(e){var t=e.session;t&&!t.multiSelect&&(t.$selectionMarkers=[],t.selection.$initRangeList(),t.multiSelect=t.selection),this.multiSelect=t&&t.multiSelect;var n=e.oldSession;n&&(n.multiSelect.off("addRange",this.$onAddRange),n.multiSelect.off("removeRange",this.$onRemoveRange),n.multiSelect.off("multiSelect",this.$onMultiSelect),n.multiSelect.off("singleSelect",this.$onSingleSelect),n.multiSelect.lead.off("change",this.$checkMultiselectChange),n.multiSelect.anchor.off("change",this.$checkMultiselectChange)),t&&(t.multiSelect.on("addRange",this.$onAddRange),t.multiSelect.on("removeRange",this.$onRemoveRange),t.multiSelect.on("multiSelect",this.$onMultiSelect),t.multiSelect.on("singleSelect",this.$onSingleSelect),t.multiSelect.lead.on("change",this.$checkMultiselectChange),t.multiSelect.anchor.on("change",this.$checkMultiselectChange)),t&&this.inMultiSelectMode!=t.selection.inMultiSelectMode&&(t.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())},t.MultiSelect=m,e("./config").defineOptions(d.prototype,"editor",{enableMultiselect:{set:function(e){m(this),e?this.on("mousedown",o):this.off("mousedown",o)},value:!0},enableBlockSelect:{set:function(e){this.$blockSelectEnabled=e},value:!0}})}),define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../../range").Range,i=t.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);return this.foldingStartMarker.test(r)?"start":t=="markbeginend"&&this.foldingStopMarker&&this.foldingStopMarker.test(r)?"end":""},this.getFoldWidgetRange=function(e,t,n){return null},this.indentationBlock=function(e,t,n){var i=/\S/,s=e.getLine(t),o=s.search(i);if(o==-1)return;var u=n||s.length,a=e.getLength(),f=t,l=t;while(++tf){var p=e.getLine(l).length;return new r(f,u,l,p)}},this.openingBracketBlock=function(e,t,n,i,s){var o={row:n,column:i+1},u=e.$findClosingBracket(t,o,s);if(!u)return;var a=e.foldWidgets[u.row];return a==null&&(a=e.getFoldWidget(u.row)),a=="start"&&u.row>o.row&&(u.row--,u.column=e.getLine(u.row).length),r.fromPoints(o,u)},this.closingBracketBlock=function(e,t,n,i,s){var o={row:n,column:i},u=e.$findOpeningBracket(t,o);if(!u)return;return u.column++,o.column--,r.fromPoints(u,o)}}).call(i.prototype)}),define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range","ace/config"],function(e,t,n){"use strict";function u(e,t,n){var r=0,i=e.length-1;while(r<=i){var s=r+i>>1,o=n(t,e[s]);if(o>0)r=s+1;else{if(!(o<0))return s;i=s-1}}return-(r+1)}function a(e,t,n){var r=e.getAnnotations().sort(s.comparePoints);if(!r.length)return;var i=u(r,{row:t,column:-1},s.comparePoints);i<0&&(i=-i-1),i>=r.length?i=n>0?0:r.length-1:i===0&&n<0&&(i=r.length-1);var o=r[i];if(!o||!n)return;if(o.row===t){do o=r[i+=n];while(o&&o.row===t);if(!o)return r.slice()}var a=[];t=o.row;do a[n<0?"unshift":"push"](o),o=r[i+=n];while(o&&o.row==t);return a.length&&a}var r=e("../line_widgets").LineWidgets,i=e("../lib/dom"),s=e("../range").Range,o=e("../config").nls;t.showErrorMarker=function(e,t){var n=e.session;n.widgetManager||(n.widgetManager=new r(n),n.widgetManager.attach(e));var s=e.getCursorPosition(),u=s.row,f=n.widgetManager.getWidgetsAtRow(u).filter(function(e){return e.type=="errorMarker"})[0];f?f.destroy():u-=t;var l=a(n,u,t),c;if(l){var h=l[0];s.column=(h.pos&&typeof h.column!="number"?h.pos.sc:h.column)||0,s.row=h.row,c=e.renderer.$gutterLayer.$annotations[s.row]}else{if(f)return;c={text:[o("Looks good!")],className:"ace_ok"}}e.session.unfold(s.row),e.selection.moveToPosition(s);var p={row:s.row,fixedWidth:!0,coverGutter:!0,el:i.createElement("div"),type:"errorMarker"},d=p.el.appendChild(i.createElement("div")),v=p.el.appendChild(i.createElement("div"));v.className="error_widget_arrow "+c.className;var m=e.renderer.$cursorLayer.getPixelPosition(s).left;v.style.left=m+e.renderer.gutterWidth-5+"px",p.el.className="error_widget_wrapper",d.className="error_widget "+c.className,d.innerHTML=c.text.join("
    "),d.appendChild(i.createElement("div"));var g=function(e,t,n){if(t===0&&(n==="esc"||n==="return"))return p.destroy(),{command:"null"}};p.destroy=function(){if(e.$mouseHandler.isMousePressed)return;e.keyBinding.removeKeyboardHandler(g),n.widgetManager.removeLineWidget(p),e.off("changeSelection",p.destroy),e.off("changeSession",p.destroy),e.off("mouseup",p.destroy),e.off("change",p.destroy)},e.keyBinding.addKeyboardHandler(g),e.on("changeSelection",p.destroy),e.on("changeSession",p.destroy),e.on("mouseup",p.destroy),e.on("change",p.destroy),e.session.widgetManager.addLineWidget(p),p.el.onmousedown=e.focus.bind(e),e.renderer.scrollCursorIntoView(null,.5,{bottom:p.el.offsetHeight})},i.importCssString("\n .error_widget_wrapper {\n background: inherit;\n color: inherit;\n border:none\n }\n .error_widget {\n border-top: solid 2px;\n border-bottom: solid 2px;\n margin: 5px 0;\n padding: 10px 40px;\n white-space: pre-wrap;\n }\n .error_widget.ace_error, .error_widget_arrow.ace_error{\n border-color: #ff5a5a\n }\n .error_widget.ace_warning, .error_widget_arrow.ace_warning{\n border-color: #F1D817\n }\n .error_widget.ace_info, .error_widget_arrow.ace_info{\n border-color: #5a5a5a\n }\n .error_widget.ace_ok, .error_widget_arrow.ace_ok{\n border-color: #5aaa5a\n }\n .error_widget_arrow {\n position: absolute;\n border: solid 5px;\n border-top-color: transparent!important;\n border-right-color: transparent!important;\n border-left-color: transparent!important;\n top: -5px;\n }\n","error_marker.css",!1)}),define("ace/ace",["require","exports","module","ace/lib/dom","ace/range","ace/editor","ace/edit_session","ace/undomanager","ace/virtual_renderer","ace/worker/worker_client","ace/keyboard/hash_handler","ace/placeholder","ace/multi_select","ace/mode/folding/fold_mode","ace/theme/textmate","ace/ext/error_marker","ace/config","ace/loader_build"],function(e,t,n){"use strict";e("./loader_build")(t);var r=e("./lib/dom"),i=e("./range").Range,s=e("./editor").Editor,o=e("./edit_session").EditSession,u=e("./undomanager").UndoManager,a=e("./virtual_renderer").VirtualRenderer;e("./worker/worker_client"),e("./keyboard/hash_handler"),e("./placeholder"),e("./multi_select"),e("./mode/folding/fold_mode"),e("./theme/textmate"),e("./ext/error_marker"),t.config=e("./config"),t.edit=function(e,n){if(typeof e=="string"){var i=e;e=document.getElementById(i);if(!e)throw new Error("ace.edit can't find div #"+i)}if(e&&e.env&&e.env.editor instanceof s)return e.env.editor;var o="";if(e&&/input|textarea/i.test(e.tagName)){var u=e;o=u.value,e=r.createElement("pre"),u.parentNode.replaceChild(e,u)}else e&&(o=e.textContent,e.innerHTML="");var f=t.createEditSession(o),l=new s(new a(e),f,n),c={document:f,editor:l,onResize:l.resize.bind(l,null)};return u&&(c.textarea=u),l.on("destroy",function(){c.editor.container.env=null}),l.container.env=l.env=c,l},t.createEditSession=function(e,t){var n=new o(e,t);return n.setUndoManager(new u),n},t.Range=i,t.Editor=s,t.EditSession=o,t.UndoManager=u,t.VirtualRenderer=a,t.version=t.config.version}); (function() { - window.require(["ace/ace"], function(a) { - if (a) { - a.config.init(true); - a.define = window.define; - } - var global = (function () { - return this; - })(); - if (!global && typeof window != "undefined") global = window; // can happen in strict mode - if (!global && typeof self != "undefined") global = self; // can happen in webworker - - if (!global.ace) - global.ace = a; - for (var key in a) if (a.hasOwnProperty(key)) - global.ace[key] = a[key]; - global.ace["default"] = global.ace; - if (typeof module == "object" && typeof exports == "object" && module) { - module.exports = global.ace; - } - }); - })(); - \ No newline at end of file diff --git a/src/ui/static/js/editor/ext-beautify.js b/src/ui/static/js/editor/ext-beautify.js deleted file mode 100644 index b6231ef52..000000000 --- a/src/ui/static/js/editor/ext-beautify.js +++ /dev/null @@ -1,8 +0,0 @@ -define("ace/ext/beautify",["require","exports","module","ace/token_iterator"],function(e,t,n){"use strict";function i(e,t){return e.type.lastIndexOf(t+".xml")>-1}var r=e("../token_iterator").TokenIterator;t.singletonTags=["area","base","br","col","command","embed","hr","html","img","input","keygen","link","meta","param","source","track","wbr"],t.blockTags=["article","aside","blockquote","body","div","dl","fieldset","footer","form","head","header","html","nav","ol","p","script","section","style","table","tbody","tfoot","thead","ul"],t.formatOptions={lineBreaksAfterCommasInCurlyBlock:!0},t.beautify=function(e){var n=new r(e,0,0),s=n.getCurrentToken(),o=e.getTabString(),u=t.singletonTags,a=t.blockTags,f=t.formatOptions||{},l,c=!1,h=!1,p=!1,d="",v="",m="",g=0,y=0,b=0,w=0,E=0,S=0,x=0,T,N=0,C=0,k=[],L=!1,A,O=!1,M=!1,_=!1,D=!1,P={0:0},H=[],B=!1,j=function(){l&&l.value&&l.type!=="string.regexp"&&(l.value=l.value.replace(/^\s*/,""))},F=function(){var e=d.length-1;for(;;){if(e==0)break;if(d[e]!==" ")break;e-=1}d=d.slice(0,e+1)},I=function(){d=d.trimRight(),c=!1};while(s!==null){N=n.getCurrentTokenRow(),k=n.$rowTokens,l=n.stepForward();if(typeof s!="undefined"){v=s.value,E=0,_=m==="style"||e.$modeId==="ace/mode/css",i(s,"tag-open")?(M=!0,l&&(D=a.indexOf(l.value)!==-1),v==="0;C--)d+="\n";c=!0,!i(s,"comment")&&!s.type.match(/^(comment|string)$/)&&(v=v.trimLeft())}if(v){s.type==="keyword"&&v.match(/^(if|else|elseif|for|foreach|while|switch)$/)?(H[g]=v,j(),p=!0,v.match(/^(else|elseif)$/)&&d.match(/\}[\s]*$/)&&(I(),h=!0)):s.type==="paren.lparen"?(j(),v.substr(-1)==="{"&&(p=!0,O=!1,M||(C=1)),v.substr(0,1)==="{"&&(h=!0,d.substr(-1)!=="["&&d.trimRight().substr(-1)==="["?(I(),h=!1):d.trimRight().substr(-1)===")"?I():F())):s.type==="paren.rparen"?(E=1,v.substr(0,1)==="}"&&(H[g-1]==="case"&&E++,d.trimRight().substr(-1)==="{"?I():(h=!0,_&&(C+=2))),v.substr(0,1)==="]"&&d.substr(-1)!=="}"&&d.trimRight().substr(-1)==="}"&&(h=!1,w++,I()),v.substr(0,1)===")"&&d.substr(-1)!=="("&&d.trimRight().substr(-1)==="("&&(h=!1,w++,I()),F()):s.type!=="keyword.operator"&&s.type!=="keyword"||!v.match(/^(=|==|===|!=|!==|&&|\|\||and|or|xor|\+=|.=|>|>=|<|<=|=>)$/)?s.type==="punctuation.operator"&&v===";"?(I(),j(),p=!0,_&&C++):s.type==="punctuation.operator"&&v.match(/^(:|,)$/)?(I(),j(),v.match(/^(,)$/)&&x>0&&S===0&&f.lineBreaksAfterCommasInCurlyBlock?C++:(p=!0,c=!1)):s.type==="support.php_tag"&&v==="?>"&&!c?(I(),h=!0):i(s,"attribute-name")&&d.substr(-1).match(/^\s$/)?h=!0:i(s,"attribute-equals")?(F(),j()):i(s,"tag-close")?(F(),v==="/>"&&(h=!0)):s.type==="keyword"&&v.match(/^(case|default)$/)&&B&&(E=1):(I(),j(),h=!0,p=!0);if(c&&(!s.type.match(/^(comment)$/)||!!v.substr(0,1).match(/^[/#]$/))&&(!s.type.match(/^(string)$/)||!!v.substr(0,1).match(/^['"@]$/))){w=b;if(g>y){w++;for(A=g;A>y;A--)P[A]=w}else g")D&&l&&l.value===""&&g--),i(s,"tag-name")&&(m=v),T=N}}s=l}d=d.trim(),e.doc.setValue(d)},t.commands=[{name:"beautify",description:"Format selection (Beautify)",exec:function(e){t.beautify(e.session)},bindKey:"Ctrl-Shift-B"}]}); (function() { - window.require(["ace/ext/beautify"], function(m) { - if (typeof module == "object" && typeof exports == "object" && module) { - module.exports = m; - } - }); - })(); - \ No newline at end of file diff --git a/src/ui/static/js/editor/ext-code_lens.js b/src/ui/static/js/editor/ext-code_lens.js deleted file mode 100644 index a37dd1e9e..000000000 --- a/src/ui/static/js/editor/ext-code_lens.js +++ /dev/null @@ -1,8 +0,0 @@ -define("ace/ext/code_lens",["require","exports","module","ace/line_widgets","ace/lib/event","ace/lib/lang","ace/lib/dom","ace/editor","ace/config"],function(e,t,n){"use strict";function u(e){var t=e.$textLayer,n=t.$lenses;n&&n.forEach(function(e){e.remove()}),t.$lenses=null}function a(e,t){var n=e&t.CHANGE_LINES||e&t.CHANGE_FULL||e&t.CHANGE_SCROLL||e&t.CHANGE_TEXT;if(!n)return;var r=t.session,i=t.session.lineWidgets,s=t.$textLayer,a=s.$lenses;if(!i){a&&u(t);return}var f=t.$textLayer.$lines.cells,l=t.layerConfig,c=t.$padding;a||(a=s.$lenses=[]);var h=0;for(var p=0;p2*y-1)g.lastChild.remove();var w=t.$cursorLayer.getPixelPosition({row:d,column:0},!0).top-l.lineHeight*v.rowsAbove-l.offset;g.style.top=w+"px";var E=t.gutterWidth,S=r.getLine(d).search(/\S|$/);S==-1&&(S=0),E+=S*l.characterWidth,g.style.paddingLeft=c+E+"px"}while(h1)return;var f=n.documentToScreenRow(r),l=e.renderer.layerConfig.lineHeight,c=n.getScrollTop()+(f-i)*l;u==0&&o-l/4&&(c=-l),n.setScrollTop(c)}var n=e.session;if(!n)return;n.widgetManager||(n.widgetManager=new r(n),n.widgetManager.attach(e));var i=e.codeLensProviders.length,s=[];e.codeLensProviders.forEach(function(e){e.provideCodeLenses(n,function(e,t){if(e)return;t.forEach(function(e){s.push(e)}),i--,i==0&&o()})})};var n=s.delayedCall(e.$updateLenses);e.$updateLensesOnInput=function(){n.delay(250)},e.on("input",e.$updateLensesOnInput)}function c(e){e.off("input",e.$updateLensesOnInput),e.renderer.off("afterRender",a),e.$codeLensClickHandler&&e.container.removeEventListener("click",e.$codeLensClickHandler)}var r=e("../line_widgets").LineWidgets,i=e("../lib/event"),s=e("../lib/lang"),o=e("../lib/dom");t.setLenses=function(e,t){var n=Number.MAX_VALUE;return f(e),t&&t.forEach(function(t){var r=t.start.row,i=t.start.column,s=e.lineWidgets&&e.lineWidgets[r];if(!s||!s.lenses)s=e.widgetManager.$registerLineWidget({rowCount:1,rowsAbove:1,row:r,column:i,lenses:[]});s.lenses.push(t.command),r a {\n cursor: pointer;\n pointer-events: auto;\n}\n.ace_codeLens > a:hover {\n color: #0000ff;\n text-decoration: underline;\n}\n.ace_dark > .ace_codeLens > a:hover {\n color: #4e94ce;\n}\n","codelense.css",!1)}); (function() { - window.require(["ace/ext/code_lens"], function(m) { - if (typeof module == "object" && typeof exports == "object" && module) { - module.exports = m; - } - }); - })(); - \ No newline at end of file diff --git a/src/ui/static/js/editor/ext-elastic_tabstops_lite.js b/src/ui/static/js/editor/ext-elastic_tabstops_lite.js deleted file mode 100644 index 378fb5d4c..000000000 --- a/src/ui/static/js/editor/ext-elastic_tabstops_lite.js +++ /dev/null @@ -1,8 +0,0 @@ -define("ace/ext/elastic_tabstops_lite",["require","exports","module","ace/editor","ace/config"],function(e,t,n){"use strict";var r=function(){function e(e){this.$editor=e;var t=this,n=[],r=!1;this.onAfterExec=function(){r=!1,t.processRows(n),n=[]},this.onExec=function(){r=!0},this.onChange=function(e){r&&(n.indexOf(e.start.row)==-1&&n.push(e.start.row),e.end.row!=e.start.row&&n.push(e.end.row))}}return e.prototype.processRows=function(e){this.$inChange=!0;var t=[];for(var n=0,r=e.length;n-1)continue;var s=this.$findCellWidthsForBlock(i),o=this.$setBlockCellWidthsToMax(s.cellWidths),u=s.firstRow;for(var a=0,f=o.length;a=0){n=this.$cellWidthsForRow(r);if(n.length==0)break;t.unshift(n),r--}var i=r+1;r=e;var s=this.$editor.session.getLength();while(r0&&(this.$editor.session.getDocument().insertInLine({row:e,column:f+1},Array(l+1).join(" ")+" "),this.$editor.session.getDocument().removeInLine(e,f,f+1),r+=l),l<0&&p>=-l&&(this.$editor.session.getDocument().removeInLine(e,f+l,f),r+=l)}},e.prototype.$izip_longest=function(e){if(!e[0])return[];var t=e[0].length,n=e.length;for(var r=1;rt&&(t=i)}var s=[];for(var o=0;o=t.length?t.length:e.length,r=[];for(var i=0;i"a"}),[e]}},{regex:"/\\w*}",onMatch:function(e,t,n){var r=n.shift();return r&&(r.flag=e.slice(1,-1)),this.next=r&&r.tabstopId?"start":"",[r||e]},next:"start"},{regex:/\$(?:\d+|\w+)/,onMatch:function(e,t,n){return[{text:e.slice(1)}]}},{regex:/\${\w+/,onMatch:function(e,t,n){var r={text:e.slice(2)};return n.unshift(r),[r]},next:"formatStringVar"},{regex:/\n/,token:"newline",merge:!1},{regex:/}/,onMatch:function(e,t,n){var r=n.shift();return this.next=r&&r.tabstopId?"start":"",[r||e]},next:"start"}],formatStringVar:[{regex:/:\/\w+}/,onMatch:function(e,t,n){var r=n[0];return r.formatFunction=e.slice(2,-1),[n.shift()]},next:"formatString"},r,{regex:/:[\?\-+]?/,onMatch:function(e,t,n){e[1]=="+"&&(n[0].ifEnd=n[0]),e[1]=="?"&&(n[0].expectElse=!0)},next:"formatString"},{regex:"([^:}\\\\]|\\\\.)*:?",token:"",next:"formatString"}]}),e.$tokenizer},e.prototype.tokenizeTmSnippet=function(e,t){return this.getTokenizer().getLineTokens(e,t).tokens.map(function(e){return e.value||e})},e.prototype.getVariableValue=function(e,t,n){if(/^\d+$/.test(t))return(this.variables.__||{})[t]||"";if(/^[A-Z]\d+$/.test(t))return(this.variables[t[0]+"__"]||{})[t.substr(1)]||"";t=t.replace(/^TM_/,"");if(!this.variables.hasOwnProperty(t))return"";var r=this.variables[t];return typeof r=="function"&&(r=this.variables[t](e,t,n)),r==null?"":r},e.prototype.tmStrFormat=function(e,t,n){if(!t.fmt)return e;var r=t.flag||"",i=t.guard;i=new RegExp(i,r.replace(/[^gim]/g,""));var s=typeof t.fmt=="string"?this.tokenizeTmSnippet(t.fmt,"formatString"):t.fmt,o=this,u=e.replace(i,function(){var e=o.variables.__;o.variables.__=[].slice.call(arguments);var t=o.resolveVariables(s,n),r="E";for(var i=0;i=0&&s.splice(o,1)}}var n=this.snippetMap,r=this.snippetNameMap;e.content?i(e):Array.isArray(e)&&e.forEach(i)},e.prototype.parseSnippetFile=function(e){e=e.replace(/\r/g,"");var t=[],n={},r=/^#.*|^({[\s\S]*})\s*$|^(\S+) (.*)$|^((?:\n*\t.*)+)/gm,i;while(i=r.exec(e)){if(i[1])try{n=JSON.parse(i[1]),t.push(n)}catch(s){}if(i[4])n.content=i[4].replace(/^\t/gm,""),t.push(n),n={};else{var o=i[2],u=i[3];if(o=="regex"){var a=/\/((?:[^\/\\]|\\.)*)|$/g;n.guard=a.exec(u)[1],n.trigger=a.exec(u)[1],n.endTrigger=a.exec(u)[1],n.endGuard=a.exec(u)[1]}else o=="snippet"?(n.tabTrigger=u.match(/^\S*/)[0],n.name||(n.name=u)):o&&(n[o]=u)}}return t},e.prototype.getSnippetByName=function(e,t){var n=this.snippetNameMap,r;return this.getActiveScopes(t).some(function(t){var i=n[t];return i&&(r=i[e]),!!r},this),r},e}();i.implement(d.prototype,s);var v=function(e,t,n){function l(e){var t=[];for(var n=0;n1?(y=t[t.length-1].length,g+=t.length-1):y+=e.length,b+=e}else e&&(e.start?e.end={row:g,column:y}:e.start={row:g,column:y})}),{text:b,tabstops:a,tokens:u}},m=function(){function e(e){this.index=0,this.ranges=[],this.tabstops=[];if(e.tabstopManager)return e.tabstopManager;e.tabstopManager=this,this.$onChange=this.onChange.bind(this),this.$onChangeSelection=o.delayedCall(this.onChangeSelection.bind(this)).schedule,this.$onChangeSession=this.onChangeSession.bind(this),this.$onAfterExec=this.onAfterExec.bind(this),this.attach(e)}return e.prototype.attach=function(e){this.$openTabstops=null,this.selectedTabstop=null,this.editor=e,this.session=e.session,this.editor.on("change",this.$onChange),this.editor.on("changeSelection",this.$onChangeSelection),this.editor.on("changeSession",this.$onChangeSession),this.editor.commands.on("afterExec",this.$onAfterExec),this.editor.keyBinding.addKeyboardHandler(this.keyboardHandler)},e.prototype.detach=function(){this.tabstops.forEach(this.removeTabstopMarkers,this),this.ranges.length=0,this.tabstops.length=0,this.selectedTabstop=null,this.editor.off("change",this.$onChange),this.editor.off("changeSelection",this.$onChangeSelection),this.editor.off("changeSession",this.$onChangeSession),this.editor.commands.off("afterExec",this.$onAfterExec),this.editor.keyBinding.removeKeyboardHandler(this.keyboardHandler),this.editor.tabstopManager=null,this.session=null,this.editor=null},e.prototype.onChange=function(e){var t=e.action[0]=="r",n=this.selectedTabstop||{},r=n.parents||{},i=this.tabstops.slice();for(var s=0;s2&&(this.tabstops.length&&o.push(o.splice(2,1)[0]),this.tabstops.splice.apply(this.tabstops,o))},e.prototype.addTabstopMarkers=function(e){var t=this.session;e.forEach(function(e){e.markerId||(e.markerId=t.addMarker(e,"ace_snippet-marker","text"))})},e.prototype.removeTabstopMarkers=function(e){var t=this.session;e.forEach(function(e){t.removeMarker(e.markerId),e.markerId=null})},e.prototype.updateTabstopMarkers=function(){if(!this.selectedTabstop)return;var e=this.selectedTabstop.snippetId;this.selectedTabstop.index===0&&e--,this.tabstops.forEach(function(t){t.snippetId===e?this.addTabstopMarkers(t):this.removeTabstopMarkers(t)},this)},e.prototype.removeRange=function(e){var t=e.tabstop.indexOf(e);t!=-1&&e.tabstop.splice(t,1),t=this.ranges.indexOf(e),t!=-1&&this.ranges.splice(t,1),t=e.tabstop.rangeList.ranges.indexOf(e),t!=-1&&e.tabstop.splice(t,1),this.session.removeMarker(e.markerId),e.tabstop.length||(t=this.tabstops.indexOf(e.tabstop),t!=-1&&this.tabstops.splice(t,1),this.tabstops.length||this.detach())},e}();m.prototype.keyboardHandler=new f,m.prototype.keyboardHandler.bindKeys({Tab:function(e){if(t.snippetManager&&t.snippetManager.expandWithTab(e))return;e.tabstopManager.tabNext(1),e.renderer.scrollCursorIntoView()},"Shift-Tab":function(e){e.tabstopManager.tabNext(-1),e.renderer.scrollCursorIntoView()},Esc:function(e){e.tabstopManager.detach()}});var g=function(e,t){e.row==0&&(e.column+=t.column),e.row+=t.row},y=function(e,t){e.row==t.row&&(e.column-=t.column),e.row-=t.row};r.importCssString("\n.ace_snippet-marker {\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n background: rgba(194, 193, 208, 0.09);\n border: 1px dotted rgba(211, 208, 235, 0.62);\n position: absolute;\n}","snippets.css",!1),t.snippetManager=new d;var b=e("./editor").Editor;(function(){this.insertSnippet=function(e,n){return t.snippetManager.insertSnippet(this,e,n)},this.expandSnippet=function(e){return t.snippetManager.expandWithTab(this,e)}}).call(b.prototype)}),define("ace/ext/emmet",["require","exports","module","ace/keyboard/hash_handler","ace/editor","ace/snippets","ace/range","ace/config","resources","resources","tabStops","resources","utils","actions"],function(e,t,n){"use strict";var r=e("../keyboard/hash_handler").HashHandler,i=e("../editor").Editor,s=e("../snippets").snippetManager,o=e("../range").Range,u=e("../config"),a,f,l=function(){function e(){}return e.prototype.setupContext=function(e){this.ace=e,this.indentation=e.session.getTabString(),a||(a=window.emmet);var t=a.resources||a.require("resources");t.setVariable("indentation",this.indentation),this.$syntax=null,this.$syntax=this.getSyntax()},e.prototype.getSelectionRange=function(){var e=this.ace.getSelectionRange(),t=this.ace.session.doc;return{start:t.positionToIndex(e.start),end:t.positionToIndex(e.end)}},e.prototype.createSelection=function(e,t){var n=this.ace.session.doc;this.ace.selection.setRange({start:n.indexToPosition(e),end:n.indexToPosition(t)})},e.prototype.getCurrentLineRange=function(){var e=this.ace,t=e.getCursorPosition().row,n=e.session.getLine(t).length,r=e.session.doc.positionToIndex({row:t,column:0});return{start:r,end:r+n}},e.prototype.getCaretPos=function(){var e=this.ace.getCursorPosition();return this.ace.session.doc.positionToIndex(e)},e.prototype.setCaretPos=function(e){var t=this.ace.session.doc.indexToPosition(e);this.ace.selection.moveToPosition(t)},e.prototype.getCurrentLine=function(){var e=this.ace.getCursorPosition().row;return this.ace.session.getLine(e)},e.prototype.replaceContent=function(e,t,n,r){n==null&&(n=t==null?this.getContent().length:t),t==null&&(t=0);var i=this.ace,u=i.session.doc,a=o.fromPoints(u.indexToPosition(t),u.indexToPosition(n));i.session.remove(a),a.end=a.start,e=this.$updateTabstops(e),s.insertSnippet(i,e)},e.prototype.getContent=function(){return this.ace.getValue()},e.prototype.getSyntax=function(){if(this.$syntax)return this.$syntax;var e=this.ace.session.$modeId.split("/").pop();if(e=="html"||e=="php"){var t=this.ace.getCursorPosition(),n=this.ace.session.getState(t.row);typeof n!="string"&&(n=n[0]),n&&(n=n.split("-"),n.length>1?e=n[0]:e=="php"&&(e="html"))}return e},e.prototype.getProfileName=function(){var e=a.resources||a.require("resources");switch(this.getSyntax()){case"css":return"css";case"xml":case"xsl":return"xml";case"html":var t=e.getVariable("profile");return t||(t=this.ace.session.getLines(0,2).join("").search(/]+XHTML/i)!=-1?"xhtml":"html"),t;default:var n=this.ace.session.$mode;return n.emmetConfig&&n.emmetConfig.profile||"xhtml"}},e.prototype.prompt=function(e){return prompt(e)},e.prototype.getSelection=function(){return this.ace.session.getTextRange()},e.prototype.getFilePath=function(){return""},e.prototype.$updateTabstops=function(e){var t=1e3,n=0,r=null,i=a.tabStops||a.require("tabStops"),s=a.resources||a.require("resources"),o=s.getVocabulary("user"),u={tabstop:function(e){var s=parseInt(e.group,10),o=s===0;o?s=++n:s+=t;var a=e.placeholder;a&&(a=i.processText(a,u));var f="${"+s+(a?":"+a:"")+"}";return o&&(r=[e.start,f]),f},escape:function(e){return e=="$"?"\\$":e=="\\"?"\\\\":e}};e=i.processText(e,u);if(o.variables.insert_final_tabstop&&!/\$\{0\}$/.test(e))e+="${0}";else if(r){var f=a.utils?a.utils.common:a.require("utils");e=f.replaceSubstring(e,"${0}",r[0],r[1])}return e},e}(),c={expand_abbreviation:{mac:"ctrl+alt+e",win:"alt+e"},match_pair_outward:{mac:"ctrl+d",win:"ctrl+,"},match_pair_inward:{mac:"ctrl+j",win:"ctrl+shift+0"},matching_pair:{mac:"ctrl+alt+j",win:"alt+j"},next_edit_point:"alt+right",prev_edit_point:"alt+left",toggle_comment:{mac:"command+/",win:"ctrl+/"},split_join_tag:{mac:"shift+command+'",win:"shift+ctrl+`"},remove_tag:{mac:"command+'",win:"shift+ctrl+;"},evaluate_math_expression:{mac:"shift+command+y",win:"shift+ctrl+y"},increment_number_by_1:"ctrl+up",decrement_number_by_1:"ctrl+down",increment_number_by_01:"alt+up",decrement_number_by_01:"alt+down",increment_number_by_10:{mac:"alt+command+up",win:"shift+alt+up"},decrement_number_by_10:{mac:"alt+command+down",win:"shift+alt+down"},select_next_item:{mac:"shift+command+.",win:"shift+ctrl+."},select_previous_item:{mac:"shift+command+,",win:"shift+ctrl+,"},reflect_css_value:{mac:"shift+command+r",win:"shift+ctrl+r"},encode_decode_data_url:{mac:"shift+ctrl+d",win:"ctrl+'"},expand_abbreviation_with_tab:"Tab",wrap_with_abbreviation:{mac:"shift+ctrl+a",win:"shift+ctrl+a"}},h=new l;t.commands=new r,t.runEmmetCommand=function v(e){if(this.action=="expand_abbreviation_with_tab"){if(!e.selection.isEmpty())return!1;var n=e.selection.lead,r=e.session.getTokenAt(n.row,n.column);if(r&&/\btag\b/.test(r.type))return!1}try{h.setupContext(e);var i=a.actions||a.require("actions");if(this.action=="wrap_with_abbreviation")return setTimeout(function(){i.run("wrap_with_abbreviation",h)},0);var s=i.run(this.action,h)}catch(o){if(!a){var f=t.load(v.bind(this,e));return this.action=="expand_abbreviation_with_tab"?!1:f}e._signal("changeStatus",typeof o=="string"?o:o.message),u.warn(o),s=!1}return s};for(var p in c)t.commands.addCommand({name:"emmet:"+p,action:p,bindKey:c[p],exec:t.runEmmetCommand,multiSelectAction:"forEach"});t.updateCommands=function(e,n){n?e.keyBinding.addKeyboardHandler(t.commands):e.keyBinding.removeKeyboardHandler(t.commands)},t.isSupportedMode=function(e){if(!e)return!1;if(e.emmetConfig)return!0;var t=e.$id||e;return/css|less|scss|sass|stylus|html|php|twig|ejs|handlebars/.test(t)},t.isAvailable=function(e,n){if(/(evaluate_math_expression|expand_abbreviation)$/.test(n))return!0;var r=e.session.$mode,i=t.isSupportedMode(r);if(i&&r.$modes)try{h.setupContext(e),/js|php/.test(h.getSyntax())&&(i=!1)}catch(s){}return i};var d=function(e,n){var r=n;if(!r)return;var i=t.isSupportedMode(r.session.$mode);e.enableEmmet===!1&&(i=!1),i&&t.load(),t.updateCommands(r,i)};t.load=function(e){return typeof f!="string"?(u.warn("script for emmet-core is not loaded"),!1):(u.loadModule(f,function(){f=null,e&&e()}),!0)},t.AceEmmetEditor=l,u.defineOptions(i.prototype,"editor",{enableEmmet:{set:function(e){this[e?"on":"removeListener"]("changeMode",d),d({enableEmmet:!!e},this)},value:!0}}),t.setCore=function(e){typeof e=="string"?f=e:a=e}}); (function() { - window.require(["ace/ext/emmet"], function(m) { - if (typeof module == "object" && typeof exports == "object" && module) { - module.exports = m; - } - }); - })(); - \ No newline at end of file diff --git a/src/ui/static/js/editor/ext-error_marker.js b/src/ui/static/js/editor/ext-error_marker.js deleted file mode 100644 index 066ec8746..000000000 --- a/src/ui/static/js/editor/ext-error_marker.js +++ /dev/null @@ -1,8 +0,0 @@ -; (function() { - window.require(["ace/ext/error_marker"], function(m) { - if (typeof module == "object" && typeof exports == "object" && module) { - module.exports = m; - } - }); - })(); - \ No newline at end of file diff --git a/src/ui/static/js/editor/ext-hardwrap.js b/src/ui/static/js/editor/ext-hardwrap.js deleted file mode 100644 index 8694aaac9..000000000 --- a/src/ui/static/js/editor/ext-hardwrap.js +++ /dev/null @@ -1,8 +0,0 @@ -define("ace/ext/hardwrap",["require","exports","module","ace/range","ace/editor","ace/config"],function(e,t,n){"use strict";function i(e,t){function m(e,t,n){if(e.lengthn)return{start:o.index,end:o.index+o[2].length};if(s&&s[2])return u=t+s[2].length,{start:u,end:u+s[3].length}}var n=t.column||e.getOption("printMarginColumn"),i=t.allowMerge!=0,s=Math.min(t.startRow,t.endRow),o=Math.max(t.startRow,t.endRow),u=e.session;while(s<=o){var a=u.getLine(s);if(a.length>n){var f=m(a,n,5);if(f){var l=/^\s*/.exec(a)[0];u.replace(new r(s,f.start,s,f.end),"\n"+l)}o++}else if(i&&/\S/.test(a)&&s!=o){var c=u.getLine(s+1);if(c&&/\S/.test(c)){var h=a.replace(/\s+$/,""),p=c.replace(/^\s+/,""),d=h+" "+p,f=m(d,n,5);if(f&&f.start>h.length||d.length'+t.command+" : "+''+t.key+""},"");s.id="kbshortcutmenu",s.innerHTML="

    Keyboard Shortcuts

    "+o+"",n(t,s)}}var r=e("../editor").Editor;n.exports.init=function(e){r.prototype.showKeyboardShortcuts=function(){i(this)},e.commands.addCommands([{name:"showKeyboardShortcuts",bindKey:{win:"Ctrl-Alt-h",mac:"Command-Alt-h"},exec:function(e,t){e.showKeyboardShortcuts()}}])}}); (function() { - window.require(["ace/ext/keybinding_menu"], function(m) { - if (typeof module == "object" && typeof exports == "object" && module) { - module.exports = m; - } - }); - })(); - \ No newline at end of file diff --git a/src/ui/static/js/editor/ext-language_tools.js b/src/ui/static/js/editor/ext-language_tools.js deleted file mode 100644 index 35524a745..000000000 --- a/src/ui/static/js/editor/ext-language_tools.js +++ /dev/null @@ -1,8 +0,0 @@ -define("ace/snippets",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event_emitter","ace/lib/lang","ace/range","ace/range_list","ace/keyboard/hash_handler","ace/tokenizer","ace/clipboard","ace/editor"],function(e,t,n){"use strict";function p(e){var t=(new Date).toLocaleString("en-us",e);return t.length==1?"0"+t:t}var r=e("./lib/dom"),i=e("./lib/oop"),s=e("./lib/event_emitter").EventEmitter,o=e("./lib/lang"),u=e("./range").Range,a=e("./range_list").RangeList,f=e("./keyboard/hash_handler").HashHandler,l=e("./tokenizer").Tokenizer,c=e("./clipboard"),h={CURRENT_WORD:function(e){return e.session.getTextRange(e.session.getWordRange())},SELECTION:function(e,t,n){var r=e.session.getTextRange();return n?r.replace(/\n\r?([ \t]*\S)/g,"\n"+n+"$1"):r},CURRENT_LINE:function(e){return e.session.getLine(e.getCursorPosition().row)},PREV_LINE:function(e){return e.session.getLine(e.getCursorPosition().row-1)},LINE_INDEX:function(e){return e.getCursorPosition().row},LINE_NUMBER:function(e){return e.getCursorPosition().row+1},SOFT_TABS:function(e){return e.session.getUseSoftTabs()?"YES":"NO"},TAB_SIZE:function(e){return e.session.getTabSize()},CLIPBOARD:function(e){return c.getText&&c.getText()},FILENAME:function(e){return/[^/\\]*$/.exec(this.FILEPATH(e))[0]},FILENAME_BASE:function(e){return/[^/\\]*$/.exec(this.FILEPATH(e))[0].replace(/\.[^.]*$/,"")},DIRECTORY:function(e){return this.FILEPATH(e).replace(/[^/\\]*$/,"")},FILEPATH:function(e){return"/not implemented.txt"},WORKSPACE_NAME:function(){return"Unknown"},FULLNAME:function(){return"Unknown"},BLOCK_COMMENT_START:function(e){var t=e.session.$mode||{};return t.blockComment&&t.blockComment.start||""},BLOCK_COMMENT_END:function(e){var t=e.session.$mode||{};return t.blockComment&&t.blockComment.end||""},LINE_COMMENT:function(e){var t=e.session.$mode||{};return t.lineCommentStart||""},CURRENT_YEAR:p.bind(null,{year:"numeric"}),CURRENT_YEAR_SHORT:p.bind(null,{year:"2-digit"}),CURRENT_MONTH:p.bind(null,{month:"numeric"}),CURRENT_MONTH_NAME:p.bind(null,{month:"long"}),CURRENT_MONTH_NAME_SHORT:p.bind(null,{month:"short"}),CURRENT_DATE:p.bind(null,{day:"2-digit"}),CURRENT_DAY_NAME:p.bind(null,{weekday:"long"}),CURRENT_DAY_NAME_SHORT:p.bind(null,{weekday:"short"}),CURRENT_HOUR:p.bind(null,{hour:"2-digit",hour12:!1}),CURRENT_MINUTE:p.bind(null,{minute:"2-digit"}),CURRENT_SECOND:p.bind(null,{second:"2-digit"})};h.SELECTED_TEXT=h.SELECTION;var d=function(){function e(){this.snippetMap={},this.snippetNameMap={},this.variables=h}return e.prototype.getTokenizer=function(){return e.$tokenizer||this.createTokenizer()},e.prototype.createTokenizer=function(){function t(e){return e=e.substr(1),/^\d+$/.test(e)?[{tabstopId:parseInt(e,10)}]:[{text:e}]}function n(e){return"(?:[^\\\\"+e+"]|\\\\.)"}var r={regex:"/("+n("/")+"+)/",onMatch:function(e,t,n){var r=n[0];return r.fmtString=!0,r.guard=e.slice(1,-1),r.flag="",""},next:"formatString"};return e.$tokenizer=new l({start:[{regex:/\\./,onMatch:function(e,t,n){var r=e[1];return r=="}"&&n.length?e=r:"`$\\".indexOf(r)!=-1&&(e=r),[e]}},{regex:/}/,onMatch:function(e,t,n){return[n.length?n.shift():e]}},{regex:/\$(?:\d+|\w+)/,onMatch:t},{regex:/\$\{[\dA-Z_a-z]+/,onMatch:function(e,n,r){var i=t(e.substr(1));return r.unshift(i[0]),i},next:"snippetVar"},{regex:/\n/,token:"newline",merge:!1}],snippetVar:[{regex:"\\|"+n("\\|")+"*\\|",onMatch:function(e,t,n){var r=e.slice(1,-1).replace(/\\[,|\\]|,/g,function(e){return e.length==2?e[1]:"\0"}).split("\0").map(function(e){return{value:e}});return n[0].choices=r,[r[0]]},next:"start"},r,{regex:"([^:}\\\\]|\\\\.)*:?",token:"",next:"start"}],formatString:[{regex:/:/,onMatch:function(e,t,n){return n.length&&n[0].expectElse?(n[0].expectElse=!1,n[0].ifEnd={elseEnd:n[0]},[n[0].ifEnd]):":"}},{regex:/\\./,onMatch:function(e,t,n){var r=e[1];return r=="}"&&n.length?e=r:"`$\\".indexOf(r)!=-1?e=r:r=="n"?e="\n":r=="t"?e=" ":"ulULE".indexOf(r)!=-1&&(e={changeCase:r,local:r>"a"}),[e]}},{regex:"/\\w*}",onMatch:function(e,t,n){var r=n.shift();return r&&(r.flag=e.slice(1,-1)),this.next=r&&r.tabstopId?"start":"",[r||e]},next:"start"},{regex:/\$(?:\d+|\w+)/,onMatch:function(e,t,n){return[{text:e.slice(1)}]}},{regex:/\${\w+/,onMatch:function(e,t,n){var r={text:e.slice(2)};return n.unshift(r),[r]},next:"formatStringVar"},{regex:/\n/,token:"newline",merge:!1},{regex:/}/,onMatch:function(e,t,n){var r=n.shift();return this.next=r&&r.tabstopId?"start":"",[r||e]},next:"start"}],formatStringVar:[{regex:/:\/\w+}/,onMatch:function(e,t,n){var r=n[0];return r.formatFunction=e.slice(2,-1),[n.shift()]},next:"formatString"},r,{regex:/:[\?\-+]?/,onMatch:function(e,t,n){e[1]=="+"&&(n[0].ifEnd=n[0]),e[1]=="?"&&(n[0].expectElse=!0)},next:"formatString"},{regex:"([^:}\\\\]|\\\\.)*:?",token:"",next:"formatString"}]}),e.$tokenizer},e.prototype.tokenizeTmSnippet=function(e,t){return this.getTokenizer().getLineTokens(e,t).tokens.map(function(e){return e.value||e})},e.prototype.getVariableValue=function(e,t,n){if(/^\d+$/.test(t))return(this.variables.__||{})[t]||"";if(/^[A-Z]\d+$/.test(t))return(this.variables[t[0]+"__"]||{})[t.substr(1)]||"";t=t.replace(/^TM_/,"");if(!this.variables.hasOwnProperty(t))return"";var r=this.variables[t];return typeof r=="function"&&(r=this.variables[t](e,t,n)),r==null?"":r},e.prototype.tmStrFormat=function(e,t,n){if(!t.fmt)return e;var r=t.flag||"",i=t.guard;i=new RegExp(i,r.replace(/[^gim]/g,""));var s=typeof t.fmt=="string"?this.tokenizeTmSnippet(t.fmt,"formatString"):t.fmt,o=this,u=e.replace(i,function(){var e=o.variables.__;o.variables.__=[].slice.call(arguments);var t=o.resolveVariables(s,n),r="E";for(var i=0;i=0&&s.splice(o,1)}}var n=this.snippetMap,r=this.snippetNameMap;e.content?i(e):Array.isArray(e)&&e.forEach(i)},e.prototype.parseSnippetFile=function(e){e=e.replace(/\r/g,"");var t=[],n={},r=/^#.*|^({[\s\S]*})\s*$|^(\S+) (.*)$|^((?:\n*\t.*)+)/gm,i;while(i=r.exec(e)){if(i[1])try{n=JSON.parse(i[1]),t.push(n)}catch(s){}if(i[4])n.content=i[4].replace(/^\t/gm,""),t.push(n),n={};else{var o=i[2],u=i[3];if(o=="regex"){var a=/\/((?:[^\/\\]|\\.)*)|$/g;n.guard=a.exec(u)[1],n.trigger=a.exec(u)[1],n.endTrigger=a.exec(u)[1],n.endGuard=a.exec(u)[1]}else o=="snippet"?(n.tabTrigger=u.match(/^\S*/)[0],n.name||(n.name=u)):o&&(n[o]=u)}}return t},e.prototype.getSnippetByName=function(e,t){var n=this.snippetNameMap,r;return this.getActiveScopes(t).some(function(t){var i=n[t];return i&&(r=i[e]),!!r},this),r},e}();i.implement(d.prototype,s);var v=function(e,t,n){function l(e){var t=[];for(var n=0;n1?(y=t[t.length-1].length,g+=t.length-1):y+=e.length,b+=e}else e&&(e.start?e.end={row:g,column:y}:e.start={row:g,column:y})}),{text:b,tabstops:a,tokens:u}},m=function(){function e(e){this.index=0,this.ranges=[],this.tabstops=[];if(e.tabstopManager)return e.tabstopManager;e.tabstopManager=this,this.$onChange=this.onChange.bind(this),this.$onChangeSelection=o.delayedCall(this.onChangeSelection.bind(this)).schedule,this.$onChangeSession=this.onChangeSession.bind(this),this.$onAfterExec=this.onAfterExec.bind(this),this.attach(e)}return e.prototype.attach=function(e){this.$openTabstops=null,this.selectedTabstop=null,this.editor=e,this.session=e.session,this.editor.on("change",this.$onChange),this.editor.on("changeSelection",this.$onChangeSelection),this.editor.on("changeSession",this.$onChangeSession),this.editor.commands.on("afterExec",this.$onAfterExec),this.editor.keyBinding.addKeyboardHandler(this.keyboardHandler)},e.prototype.detach=function(){this.tabstops.forEach(this.removeTabstopMarkers,this),this.ranges.length=0,this.tabstops.length=0,this.selectedTabstop=null,this.editor.off("change",this.$onChange),this.editor.off("changeSelection",this.$onChangeSelection),this.editor.off("changeSession",this.$onChangeSession),this.editor.commands.off("afterExec",this.$onAfterExec),this.editor.keyBinding.removeKeyboardHandler(this.keyboardHandler),this.editor.tabstopManager=null,this.session=null,this.editor=null},e.prototype.onChange=function(e){var t=e.action[0]=="r",n=this.selectedTabstop||{},r=n.parents||{},i=this.tabstops.slice();for(var s=0;s2&&(this.tabstops.length&&o.push(o.splice(2,1)[0]),this.tabstops.splice.apply(this.tabstops,o))},e.prototype.addTabstopMarkers=function(e){var t=this.session;e.forEach(function(e){e.markerId||(e.markerId=t.addMarker(e,"ace_snippet-marker","text"))})},e.prototype.removeTabstopMarkers=function(e){var t=this.session;e.forEach(function(e){t.removeMarker(e.markerId),e.markerId=null})},e.prototype.updateTabstopMarkers=function(){if(!this.selectedTabstop)return;var e=this.selectedTabstop.snippetId;this.selectedTabstop.index===0&&e--,this.tabstops.forEach(function(t){t.snippetId===e?this.addTabstopMarkers(t):this.removeTabstopMarkers(t)},this)},e.prototype.removeRange=function(e){var t=e.tabstop.indexOf(e);t!=-1&&e.tabstop.splice(t,1),t=this.ranges.indexOf(e),t!=-1&&this.ranges.splice(t,1),t=e.tabstop.rangeList.ranges.indexOf(e),t!=-1&&e.tabstop.splice(t,1),this.session.removeMarker(e.markerId),e.tabstop.length||(t=this.tabstops.indexOf(e.tabstop),t!=-1&&this.tabstops.splice(t,1),this.tabstops.length||this.detach())},e}();m.prototype.keyboardHandler=new f,m.prototype.keyboardHandler.bindKeys({Tab:function(e){if(t.snippetManager&&t.snippetManager.expandWithTab(e))return;e.tabstopManager.tabNext(1),e.renderer.scrollCursorIntoView()},"Shift-Tab":function(e){e.tabstopManager.tabNext(-1),e.renderer.scrollCursorIntoView()},Esc:function(e){e.tabstopManager.detach()}});var g=function(e,t){e.row==0&&(e.column+=t.column),e.row+=t.row},y=function(e,t){e.row==t.row&&(e.column-=t.column),e.row-=t.row};r.importCssString("\n.ace_snippet-marker {\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n background: rgba(194, 193, 208, 0.09);\n border: 1px dotted rgba(211, 208, 235, 0.62);\n position: absolute;\n}","snippets.css",!1),t.snippetManager=new d;var b=e("./editor").Editor;(function(){this.insertSnippet=function(e,n){return t.snippetManager.insertSnippet(this,e,n)},this.expandSnippet=function(e){return t.snippetManager.expandWithTab(this,e)}}).call(b.prototype)}),define("ace/autocomplete/popup",["require","exports","module","ace/virtual_renderer","ace/editor","ace/range","ace/lib/event","ace/lib/lang","ace/lib/dom","ace/config","ace/lib/useragent"],function(e,t,n){"use strict";var r=e("../virtual_renderer").VirtualRenderer,i=e("../editor").Editor,s=e("../range").Range,o=e("../lib/event"),u=e("../lib/lang"),a=e("../lib/dom"),f=e("../config").nls,l=e("./../lib/useragent"),c=function(e){return"suggest-aria-id:".concat(e)},h=l.isSafari?"menu":"listbox",p=l.isSafari?"menuitem":"option",d=l.isSafari?"aria-current":"aria-selected",v=function(e){var t=new r(e);t.$maxLines=4;var n=new i(t);return n.setHighlightActiveLine(!1),n.setShowPrintMargin(!1),n.renderer.setShowGutter(!1),n.renderer.setHighlightGutterLine(!1),n.$mouseHandler.$focusTimeout=0,n.$highlightTagPending=!0,n},m=function(){function e(e){var t=a.createElement("div"),n=v(t);e&&e.appendChild(t),t.style.display="none",n.renderer.content.style.cursor="default",n.renderer.setStyle("ace_autocomplete"),n.renderer.$textLayer.element.setAttribute("role",h),n.renderer.$textLayer.element.setAttribute("aria-roledescription",f("Autocomplete suggestions")),n.renderer.$textLayer.element.setAttribute("aria-label",f("Autocomplete suggestions")),n.renderer.textarea.setAttribute("aria-hidden","true"),n.setOption("displayIndentGuides",!1),n.setOption("dragDelay",150);var r=function(){};n.focus=r,n.$isFocused=!0,n.renderer.$cursorLayer.restartTimer=r,n.renderer.$cursorLayer.element.style.opacity="0",n.renderer.$maxLines=8,n.renderer.$keepTextAreaAtCursor=!1,n.setHighlightActiveLine(!1),n.session.highlight(""),n.session.$searchHighlight.clazz="ace_highlight-marker",n.on("mousedown",function(e){var t=e.getDocumentPosition();n.selection.moveToPosition(t),m.start.row=m.end.row=t.row,e.stop()});var i,l=new s(-1,0,-1,Infinity),m=new s(-1,0,-1,Infinity);m.id=n.session.addMarker(m,"ace_active-line","fullLine"),n.setSelectOnHover=function(e){e?l.id&&(n.session.removeMarker(l.id),l.id=null):l.id=n.session.addMarker(l,"ace_line-hover","fullLine")},n.setSelectOnHover(!1),n.on("mousemove",function(e){if(!i){i=e;return}if(i.x==e.x&&i.y==e.y)return;i=e,i.scrollTop=n.renderer.scrollTop,n.isMouseOver=!0;var t=i.getDocumentPosition().row;l.start.row!=t&&(l.id||n.setRow(t),y(t))}),n.renderer.on("beforeRender",function(){if(i&&l.start.row!=-1){i.$pos=null;var e=i.getDocumentPosition().row;l.id||n.setRow(e),y(e,!0)}}),n.renderer.on("afterRender",function(){var e=n.getRow(),t=n.renderer.$textLayer,r=t.element.childNodes[e-t.config.firstRow],i=document.activeElement;r!==n.selectedNode&&n.selectedNode&&(a.removeCssClass(n.selectedNode,"ace_selected"),i.removeAttribute("aria-activedescendant"),n.selectedNode.removeAttribute(d),n.selectedNode.removeAttribute("id")),n.selectedNode=r;if(r){a.addCssClass(r,"ace_selected");var s=c(e);r.id=s,t.element.setAttribute("aria-activedescendant",s),i.setAttribute("aria-activedescendant",s),r.setAttribute("role",p),r.setAttribute("aria-roledescription",f("item")),r.setAttribute("aria-label",n.getData(e).caption||n.getData(e).value),r.setAttribute("aria-setsize",n.data.length),r.setAttribute("aria-posinset",e+1),r.setAttribute("aria-describedby","doc-tooltip"),r.setAttribute(d,"true")}});var g=function(){y(-1)},y=function(e,t){e!==l.start.row&&(l.start.row=l.end.row=e,t||n.session._emit("changeBackMarker"),n._emit("changeHoverMarker"))};n.getHoveredRow=function(){return l.start.row},o.addListener(n.container,"mouseout",function(){n.isMouseOver=!1,g()}),n.on("hide",g),n.on("changeSelection",g),n.session.doc.getLength=function(){return n.data.length},n.session.doc.getLine=function(e){var t=n.data[e];return typeof t=="string"?t:t&&t.value||""};var b=n.session.bgTokenizer;return b.$tokenizeRow=function(e){function s(e,n){e&&r.push({type:(t.className||"")+(n||""),value:e})}var t=n.data[e],r=[];if(!t)return r;typeof t=="string"&&(t={value:t});var i=t.caption||t.value||t.name,o=i.toLowerCase(),u=(n.filterText||"").toLowerCase(),a=0,f=0;for(var l=0;l<=u.length;l++)if(l!=f&&(t.matchMask&1<=l?r="bottom":r="top"),r==="top"?(c.bottom=e.top-this.$borderSize,c.top=c.bottom-l):r==="bottom"&&(c.top=e.top+t+this.$borderSize,c.bottom=c.top+l);var d=c.top>=0&&c.bottom<=u;if(!s&&!d)return!1;d?f.$maxPixelHeight=null:r==="top"?f.$maxPixelHeight=p:f.$maxPixelHeight=h,r==="top"?(o.style.top="",o.style.bottom=u-c.bottom+"px",n.isTopdown=!1):(o.style.top=c.top+"px",o.style.bottom="",n.isTopdown=!0),o.style.display="";var v=e.left;return v+o.offsetWidth>a&&(v=a-o.offsetWidth),o.style.left=v+"px",o.style.right="",n.isOpen||(n.isOpen=!0,this._signal("show"),i=null),n.anchorPos=e,n.anchor=r,!0},n.show=function(e,t,n){this.tryShow(e,t,n?"bottom":undefined,!0)},n.goTo=function(e){var t=this.getRow(),n=this.session.getLength()-1;switch(e){case"up":t=t<=0?n:t-1;break;case"down":t=t>=n?-1:t+1;break;case"start":t=0;break;case"end":t=n}this.setRow(t)},n.getTextLeftOffset=function(){return this.$borderSize+this.renderer.$padding+this.$imageSize},n.$imageSize=0,n.$borderSize=1,n}return e}();a.importCssString('\n.ace_editor.ace_autocomplete .ace_marker-layer .ace_active-line {\n background-color: #CAD6FA;\n z-index: 1;\n}\n.ace_dark.ace_editor.ace_autocomplete .ace_marker-layer .ace_active-line {\n background-color: #3a674e;\n}\n.ace_editor.ace_autocomplete .ace_line-hover {\n border: 1px solid #abbffe;\n margin-top: -1px;\n background: rgba(233,233,253,0.4);\n position: absolute;\n z-index: 2;\n}\n.ace_dark.ace_editor.ace_autocomplete .ace_line-hover {\n border: 1px solid rgba(109, 150, 13, 0.8);\n background: rgba(58, 103, 78, 0.62);\n}\n.ace_completion-meta {\n opacity: 0.5;\n margin-left: 0.9em;\n}\n.ace_completion-message {\n margin-left: 0.9em;\n color: blue;\n}\n.ace_editor.ace_autocomplete .ace_completion-highlight{\n color: #2d69c7;\n}\n.ace_dark.ace_editor.ace_autocomplete .ace_completion-highlight{\n color: #93ca12;\n}\n.ace_editor.ace_autocomplete {\n width: 300px;\n z-index: 200000;\n border: 1px lightgray solid;\n position: fixed;\n box-shadow: 2px 3px 5px rgba(0,0,0,.2);\n line-height: 1.4;\n background: #fefefe;\n color: #111;\n}\n.ace_dark.ace_editor.ace_autocomplete {\n border: 1px #484747 solid;\n box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.51);\n line-height: 1.4;\n background: #25282c;\n color: #c1c1c1;\n}\n.ace_autocomplete .ace_text-layer {\n width: calc(100% - 8px);\n}\n.ace_autocomplete .ace_line {\n display: flex;\n align-items: center;\n}\n.ace_autocomplete .ace_line > * {\n min-width: 0;\n flex: 0 0 auto;\n}\n.ace_autocomplete .ace_line .ace_ {\n flex: 0 1 auto;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.ace_autocomplete .ace_completion-spacer {\n flex: 1;\n}\n.ace_autocomplete.ace_loading:after {\n content: "";\n position: absolute;\n top: 0px;\n height: 2px;\n width: 8%;\n background: blue;\n z-index: 100;\n animation: ace_progress 3s infinite linear;\n animation-delay: 300ms;\n transform: translateX(-100%) scaleX(1);\n}\n@keyframes ace_progress {\n 0% { transform: translateX(-100%) scaleX(1) }\n 50% { transform: translateX(625%) scaleX(2) } \n 100% { transform: translateX(1500%) scaleX(3) } \n}\n@media (prefers-reduced-motion) {\n .ace_autocomplete.ace_loading:after {\n transform: translateX(625%) scaleX(2);\n animation: none;\n }\n}\n',"autocompletion.css",!1),t.AcePopup=m,t.$singleLineEditor=v,t.getAriaId=c}),define("ace/autocomplete/inline_screenreader",["require","exports","module"],function(e,t,n){"use strict";var r=function(){function e(e){this.editor=e,this.screenReaderDiv=document.createElement("div"),this.screenReaderDiv.classList.add("ace_screenreader-only"),this.editor.container.appendChild(this.screenReaderDiv)}return e.prototype.setScreenReaderContent=function(e){!this.popup&&this.editor.completer&&this.editor.completer.popup&&(this.popup=this.editor.completer.popup,this.popup.renderer.on("afterRender",function(){var e=this.popup.getRow(),t=this.popup.renderer.$textLayer,n=t.element.childNodes[e-t.config.firstRow];if(n){var r="doc-tooltip ";for(var i=0;i=0;s--){if(!n.test(e[s]))break;i.push(e[s])}return i.reverse().join("")},t.retrieveFollowingIdentifier=function(e,t,n){n=n||r;var i=[];for(var s=t;s0)for(var t=this.popup.getFirstVisibleRow();t<=this.popup.getLastVisibleRow();t++){var n=this.popup.getData(t);n&&(!e||n.hideInlinePreview)&&this.$seen(n)}},e.prototype.$onPopupShow=function(e){this.$onPopupChange(e),this.stickySelection=!1,this.stickySelectionDelay>=0&&this.stickySelectionTimer.schedule(this.stickySelectionDelay)},e.prototype.observeLayoutChanges=function(){if(this.$elements||!this.editor)return;window.addEventListener("resize",this.onLayoutChange,{passive:!0}),window.addEventListener("wheel",this.mousewheelListener);var e=this.editor.container.parentNode,t=[];while(e)t.push(e),e.addEventListener("scroll",this.onLayoutChange,{passive:!0}),e=e.parentNode;this.$elements=t},e.prototype.unObserveLayoutChanges=function(){var e=this;window.removeEventListener("resize",this.onLayoutChange,{passive:!0}),window.removeEventListener("wheel",this.mousewheelListener),this.$elements&&this.$elements.forEach(function(t){t.removeEventListener("scroll",e.onLayoutChange,{passive:!0})}),this.$elements=null},e.prototype.onLayoutChange=function(){if(!this.popup.isOpen)return this.unObserveLayoutChanges();this.$updatePopupPosition(),this.updateDocTooltip()},e.prototype.$updatePopupPosition=function(){var e=this.editor,t=e.renderer,n=t.layerConfig.lineHeight,r=t.$cursorLayer.getPixelPosition(this.base,!0);r.left-=this.popup.getTextLeftOffset();var i=e.container.getBoundingClientRect();r.top+=i.top-t.layerConfig.offset,r.left+=i.left-e.renderer.scrollLeft,r.left+=t.gutterWidth;var s={top:r.top,left:r.left};t.$ghostText&&t.$ghostTextWidget&&this.base.row===t.$ghostText.position.row&&(s.top+=t.$ghostTextWidget.el.offsetHeight);var o=e.container.getBoundingClientRect().bottom-n,u=othis.filterText&&e.lastIndexOf(this.filterText,0)===0)var t=this.filtered;else var t=this.all;this.filterText=e,t=this.filterCompletions(t,this.filterText),t=t.sort(function(e,t){return t.exactMatch-e.exactMatch||t.$score-e.$score||(e.caption||e.value).localeCompare(t.caption||t.value)});var n=null;t=t.filter(function(e){var t=e.snippet||e.caption||e.value;return t===n?!1:(n=t,!0)}),this.filtered=t},e.prototype.filterCompletions=function(e,t){var n=[],r=t.toUpperCase(),i=t.toLowerCase();e:for(var s=0,o;o=e[s];s++){var u=!this.ignoreCaption&&o.caption||o.value||o.snippet;if(!u)continue;var a=-1,f=0,l=0,c,h;if(this.exactMatch){if(t!==u.substr(0,t.length))continue e}else{var p=u.toLowerCase().indexOf(i);if(p>-1)l=p;else for(var d=0;d=0?m<0||v0&&(a===-1&&(l+=10),l+=h,f|=1<",o.escapeHTML(e.caption),"
    ","
    ",o.escapeHTML(l(e.snippet))].join(""))},id:"snippetCompleter"},h=[c,a,f];t.setCompleters=function(e){h.length=0,e&&h.push.apply(h,e)},t.addCompleter=function(e){h.push(e)},t.textCompleter=a,t.keyWordCompleter=f,t.snippetCompleter=c;var p={name:"expandSnippet",exec:function(e){return r.expandWithTab(e)},bindKey:"Tab"},d=function(e,t){v(t.session.$mode)},v=function(e){typeof e=="string"&&(e=s.$modes[e]);if(!e)return;r.files||(r.files={}),m(e.$id,e.snippetFileId),e.modes&&e.modes.forEach(v)},m=function(e,t){if(!t||!e||r.files[e])return;r.files[e]={},s.loadModule(t,function(t){if(!t)return;r.files[e]=t,!t.snippets&&t.snippetText&&(t.snippets=r.parseSnippetFile(t.snippetText)),r.register(t.snippets||[],t.scope),t.includeScopes&&(r.snippetMap[t.scope].includeScopes=t.includeScopes,t.includeScopes.forEach(function(e){v("ace/mode/"+e)}))})},g=function(e){var t=e.editor,n=t.completer&&t.completer.activated;if(e.command.name==="backspace")n&&!u.getCompletionPrefix(t)&&t.completer.detach();else if(e.command.name==="insertstring"&&!n){y=e;var r=e.editor.$liveAutocompletionDelay;r?b.delay(r):w(e)}},y,b=o.delayedCall(function(){w(y)},0),w=function(e){var t=e.editor,n=u.getCompletionPrefix(t),r=u.triggerAutocomplete(t);if(n&&n.length>=t.$liveAutocompletionThreshold||r){var s=i.for(t);s.autoShown=!0,s.showPopup(t)}},E=e("../editor").Editor;e("../config").defineOptions(E.prototype,"editor",{enableBasicAutocompletion:{set:function(e){e?(this.completers||(this.completers=Array.isArray(e)?e:h),this.commands.addCommand(i.startCommand)):this.commands.removeCommand(i.startCommand)},value:!1},enableLiveAutocompletion:{set:function(e){e?(this.completers||(this.completers=Array.isArray(e)?e:h),this.commands.on("afterExec",g)):this.commands.off("afterExec",g)},value:!1},liveAutocompletionDelay:{initialValue:0},liveAutocompletionThreshold:{initialValue:0},enableSnippets:{set:function(e){e?(this.commands.addCommand(p),this.on("changeMode",d),d(null,this)):(this.commands.removeCommand(p),this.off("changeMode",d))},value:!1}})}); (function() { - window.require(["ace/ext/language_tools"], function(m) { - if (typeof module == "object" && typeof exports == "object" && module) { - module.exports = m; - } - }); - })(); - \ No newline at end of file diff --git a/src/ui/static/js/editor/ext-linking.js b/src/ui/static/js/editor/ext-linking.js deleted file mode 100644 index 593593dee..000000000 --- a/src/ui/static/js/editor/ext-linking.js +++ /dev/null @@ -1,8 +0,0 @@ -define("ace/ext/linking",["require","exports","module","ace/editor","ace/config"],function(e,t,n){function i(e){var n=e.editor,r=e.getAccelKey();if(r){var n=e.editor,i=e.getDocumentPosition(),s=n.session,o=s.getTokenAt(i.row,i.column);t.previousLinkingHover&&t.previousLinkingHover!=o&&n._emit("linkHoverOut"),n._emit("linkHover",{position:i,token:o}),t.previousLinkingHover=o}else t.previousLinkingHover&&(n._emit("linkHoverOut"),t.previousLinkingHover=!1)}function s(e){var t=e.getAccelKey(),n=e.getButton();if(n==0&&t){var r=e.editor,i=e.getDocumentPosition(),s=r.session,o=s.getTokenAt(i.row,i.column);r._emit("linkClick",{position:i,token:o})}}var r=e("../editor").Editor;e("../config").defineOptions(r.prototype,"editor",{enableLinking:{set:function(e){e?(this.on("click",s),this.on("mousemove",i)):(this.off("click",s),this.off("mousemove",i))},value:!1}}),t.previousLinkingHover=!1}); (function() { - window.require(["ace/ext/linking"], function(m) { - if (typeof module == "object" && typeof exports == "object" && module) { - module.exports = m; - } - }); - })(); - \ No newline at end of file diff --git a/src/ui/static/js/editor/ext-modelist.js b/src/ui/static/js/editor/ext-modelist.js deleted file mode 100644 index 4956218cb..000000000 --- a/src/ui/static/js/editor/ext-modelist.js +++ /dev/null @@ -1,8 +0,0 @@ -define("ace/ext/modelist",["require","exports","module"],function(e,t,n){"use strict";function i(e){var t=a.text,n=e.split(/[\/\\]/).pop();for(var i=0;i=l?r="bottom":r="top"),r==="top"?(c.bottom=e.top-this.$borderSize,c.top=c.bottom-l):r==="bottom"&&(c.top=e.top+t+this.$borderSize,c.bottom=c.top+l);var d=c.top>=0&&c.bottom<=u;if(!s&&!d)return!1;d?f.$maxPixelHeight=null:r==="top"?f.$maxPixelHeight=p:f.$maxPixelHeight=h,r==="top"?(o.style.top="",o.style.bottom=u-c.bottom+"px",n.isTopdown=!1):(o.style.top=c.top+"px",o.style.bottom="",n.isTopdown=!0),o.style.display="";var v=e.left;return v+o.offsetWidth>a&&(v=a-o.offsetWidth),o.style.left=v+"px",o.style.right="",n.isOpen||(n.isOpen=!0,this._signal("show"),i=null),n.anchorPos=e,n.anchor=r,!0},n.show=function(e,t,n){this.tryShow(e,t,n?"bottom":undefined,!0)},n.goTo=function(e){var t=this.getRow(),n=this.session.getLength()-1;switch(e){case"up":t=t<=0?n:t-1;break;case"down":t=t>=n?-1:t+1;break;case"start":t=0;break;case"end":t=n}this.setRow(t)},n.getTextLeftOffset=function(){return this.$borderSize+this.renderer.$padding+this.$imageSize},n.$imageSize=0,n.$borderSize=1,n}return e}();a.importCssString('\n.ace_editor.ace_autocomplete .ace_marker-layer .ace_active-line {\n background-color: #CAD6FA;\n z-index: 1;\n}\n.ace_dark.ace_editor.ace_autocomplete .ace_marker-layer .ace_active-line {\n background-color: #3a674e;\n}\n.ace_editor.ace_autocomplete .ace_line-hover {\n border: 1px solid #abbffe;\n margin-top: -1px;\n background: rgba(233,233,253,0.4);\n position: absolute;\n z-index: 2;\n}\n.ace_dark.ace_editor.ace_autocomplete .ace_line-hover {\n border: 1px solid rgba(109, 150, 13, 0.8);\n background: rgba(58, 103, 78, 0.62);\n}\n.ace_completion-meta {\n opacity: 0.5;\n margin-left: 0.9em;\n}\n.ace_completion-message {\n margin-left: 0.9em;\n color: blue;\n}\n.ace_editor.ace_autocomplete .ace_completion-highlight{\n color: #2d69c7;\n}\n.ace_dark.ace_editor.ace_autocomplete .ace_completion-highlight{\n color: #93ca12;\n}\n.ace_editor.ace_autocomplete {\n width: 300px;\n z-index: 200000;\n border: 1px lightgray solid;\n position: fixed;\n box-shadow: 2px 3px 5px rgba(0,0,0,.2);\n line-height: 1.4;\n background: #fefefe;\n color: #111;\n}\n.ace_dark.ace_editor.ace_autocomplete {\n border: 1px #484747 solid;\n box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.51);\n line-height: 1.4;\n background: #25282c;\n color: #c1c1c1;\n}\n.ace_autocomplete .ace_text-layer {\n width: calc(100% - 8px);\n}\n.ace_autocomplete .ace_line {\n display: flex;\n align-items: center;\n}\n.ace_autocomplete .ace_line > * {\n min-width: 0;\n flex: 0 0 auto;\n}\n.ace_autocomplete .ace_line .ace_ {\n flex: 0 1 auto;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.ace_autocomplete .ace_completion-spacer {\n flex: 1;\n}\n.ace_autocomplete.ace_loading:after {\n content: "";\n position: absolute;\n top: 0px;\n height: 2px;\n width: 8%;\n background: blue;\n z-index: 100;\n animation: ace_progress 3s infinite linear;\n animation-delay: 300ms;\n transform: translateX(-100%) scaleX(1);\n}\n@keyframes ace_progress {\n 0% { transform: translateX(-100%) scaleX(1) }\n 50% { transform: translateX(625%) scaleX(2) } \n 100% { transform: translateX(1500%) scaleX(3) } \n}\n@media (prefers-reduced-motion) {\n .ace_autocomplete.ace_loading:after {\n transform: translateX(625%) scaleX(2);\n animation: none;\n }\n}\n',"autocompletion.css",!1),t.AcePopup=m,t.$singleLineEditor=v,t.getAriaId=c}),define("ace/snippets",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event_emitter","ace/lib/lang","ace/range","ace/range_list","ace/keyboard/hash_handler","ace/tokenizer","ace/clipboard","ace/editor"],function(e,t,n){"use strict";function p(e){var t=(new Date).toLocaleString("en-us",e);return t.length==1?"0"+t:t}var r=e("./lib/dom"),i=e("./lib/oop"),s=e("./lib/event_emitter").EventEmitter,o=e("./lib/lang"),u=e("./range").Range,a=e("./range_list").RangeList,f=e("./keyboard/hash_handler").HashHandler,l=e("./tokenizer").Tokenizer,c=e("./clipboard"),h={CURRENT_WORD:function(e){return e.session.getTextRange(e.session.getWordRange())},SELECTION:function(e,t,n){var r=e.session.getTextRange();return n?r.replace(/\n\r?([ \t]*\S)/g,"\n"+n+"$1"):r},CURRENT_LINE:function(e){return e.session.getLine(e.getCursorPosition().row)},PREV_LINE:function(e){return e.session.getLine(e.getCursorPosition().row-1)},LINE_INDEX:function(e){return e.getCursorPosition().row},LINE_NUMBER:function(e){return e.getCursorPosition().row+1},SOFT_TABS:function(e){return e.session.getUseSoftTabs()?"YES":"NO"},TAB_SIZE:function(e){return e.session.getTabSize()},CLIPBOARD:function(e){return c.getText&&c.getText()},FILENAME:function(e){return/[^/\\]*$/.exec(this.FILEPATH(e))[0]},FILENAME_BASE:function(e){return/[^/\\]*$/.exec(this.FILEPATH(e))[0].replace(/\.[^.]*$/,"")},DIRECTORY:function(e){return this.FILEPATH(e).replace(/[^/\\]*$/,"")},FILEPATH:function(e){return"/not implemented.txt"},WORKSPACE_NAME:function(){return"Unknown"},FULLNAME:function(){return"Unknown"},BLOCK_COMMENT_START:function(e){var t=e.session.$mode||{};return t.blockComment&&t.blockComment.start||""},BLOCK_COMMENT_END:function(e){var t=e.session.$mode||{};return t.blockComment&&t.blockComment.end||""},LINE_COMMENT:function(e){var t=e.session.$mode||{};return t.lineCommentStart||""},CURRENT_YEAR:p.bind(null,{year:"numeric"}),CURRENT_YEAR_SHORT:p.bind(null,{year:"2-digit"}),CURRENT_MONTH:p.bind(null,{month:"numeric"}),CURRENT_MONTH_NAME:p.bind(null,{month:"long"}),CURRENT_MONTH_NAME_SHORT:p.bind(null,{month:"short"}),CURRENT_DATE:p.bind(null,{day:"2-digit"}),CURRENT_DAY_NAME:p.bind(null,{weekday:"long"}),CURRENT_DAY_NAME_SHORT:p.bind(null,{weekday:"short"}),CURRENT_HOUR:p.bind(null,{hour:"2-digit",hour12:!1}),CURRENT_MINUTE:p.bind(null,{minute:"2-digit"}),CURRENT_SECOND:p.bind(null,{second:"2-digit"})};h.SELECTED_TEXT=h.SELECTION;var d=function(){function e(){this.snippetMap={},this.snippetNameMap={},this.variables=h}return e.prototype.getTokenizer=function(){return e.$tokenizer||this.createTokenizer()},e.prototype.createTokenizer=function(){function t(e){return e=e.substr(1),/^\d+$/.test(e)?[{tabstopId:parseInt(e,10)}]:[{text:e}]}function n(e){return"(?:[^\\\\"+e+"]|\\\\.)"}var r={regex:"/("+n("/")+"+)/",onMatch:function(e,t,n){var r=n[0];return r.fmtString=!0,r.guard=e.slice(1,-1),r.flag="",""},next:"formatString"};return e.$tokenizer=new l({start:[{regex:/\\./,onMatch:function(e,t,n){var r=e[1];return r=="}"&&n.length?e=r:"`$\\".indexOf(r)!=-1&&(e=r),[e]}},{regex:/}/,onMatch:function(e,t,n){return[n.length?n.shift():e]}},{regex:/\$(?:\d+|\w+)/,onMatch:t},{regex:/\$\{[\dA-Z_a-z]+/,onMatch:function(e,n,r){var i=t(e.substr(1));return r.unshift(i[0]),i},next:"snippetVar"},{regex:/\n/,token:"newline",merge:!1}],snippetVar:[{regex:"\\|"+n("\\|")+"*\\|",onMatch:function(e,t,n){var r=e.slice(1,-1).replace(/\\[,|\\]|,/g,function(e){return e.length==2?e[1]:"\0"}).split("\0").map(function(e){return{value:e}});return n[0].choices=r,[r[0]]},next:"start"},r,{regex:"([^:}\\\\]|\\\\.)*:?",token:"",next:"start"}],formatString:[{regex:/:/,onMatch:function(e,t,n){return n.length&&n[0].expectElse?(n[0].expectElse=!1,n[0].ifEnd={elseEnd:n[0]},[n[0].ifEnd]):":"}},{regex:/\\./,onMatch:function(e,t,n){var r=e[1];return r=="}"&&n.length?e=r:"`$\\".indexOf(r)!=-1?e=r:r=="n"?e="\n":r=="t"?e=" ":"ulULE".indexOf(r)!=-1&&(e={changeCase:r,local:r>"a"}),[e]}},{regex:"/\\w*}",onMatch:function(e,t,n){var r=n.shift();return r&&(r.flag=e.slice(1,-1)),this.next=r&&r.tabstopId?"start":"",[r||e]},next:"start"},{regex:/\$(?:\d+|\w+)/,onMatch:function(e,t,n){return[{text:e.slice(1)}]}},{regex:/\${\w+/,onMatch:function(e,t,n){var r={text:e.slice(2)};return n.unshift(r),[r]},next:"formatStringVar"},{regex:/\n/,token:"newline",merge:!1},{regex:/}/,onMatch:function(e,t,n){var r=n.shift();return this.next=r&&r.tabstopId?"start":"",[r||e]},next:"start"}],formatStringVar:[{regex:/:\/\w+}/,onMatch:function(e,t,n){var r=n[0];return r.formatFunction=e.slice(2,-1),[n.shift()]},next:"formatString"},r,{regex:/:[\?\-+]?/,onMatch:function(e,t,n){e[1]=="+"&&(n[0].ifEnd=n[0]),e[1]=="?"&&(n[0].expectElse=!0)},next:"formatString"},{regex:"([^:}\\\\]|\\\\.)*:?",token:"",next:"formatString"}]}),e.$tokenizer},e.prototype.tokenizeTmSnippet=function(e,t){return this.getTokenizer().getLineTokens(e,t).tokens.map(function(e){return e.value||e})},e.prototype.getVariableValue=function(e,t,n){if(/^\d+$/.test(t))return(this.variables.__||{})[t]||"";if(/^[A-Z]\d+$/.test(t))return(this.variables[t[0]+"__"]||{})[t.substr(1)]||"";t=t.replace(/^TM_/,"");if(!this.variables.hasOwnProperty(t))return"";var r=this.variables[t];return typeof r=="function"&&(r=this.variables[t](e,t,n)),r==null?"":r},e.prototype.tmStrFormat=function(e,t,n){if(!t.fmt)return e;var r=t.flag||"",i=t.guard;i=new RegExp(i,r.replace(/[^gim]/g,""));var s=typeof t.fmt=="string"?this.tokenizeTmSnippet(t.fmt,"formatString"):t.fmt,o=this,u=e.replace(i,function(){var e=o.variables.__;o.variables.__=[].slice.call(arguments);var t=o.resolveVariables(s,n),r="E";for(var i=0;i=0&&s.splice(o,1)}}var n=this.snippetMap,r=this.snippetNameMap;e.content?i(e):Array.isArray(e)&&e.forEach(i)},e.prototype.parseSnippetFile=function(e){e=e.replace(/\r/g,"");var t=[],n={},r=/^#.*|^({[\s\S]*})\s*$|^(\S+) (.*)$|^((?:\n*\t.*)+)/gm,i;while(i=r.exec(e)){if(i[1])try{n=JSON.parse(i[1]),t.push(n)}catch(s){}if(i[4])n.content=i[4].replace(/^\t/gm,""),t.push(n),n={};else{var o=i[2],u=i[3];if(o=="regex"){var a=/\/((?:[^\/\\]|\\.)*)|$/g;n.guard=a.exec(u)[1],n.trigger=a.exec(u)[1],n.endTrigger=a.exec(u)[1],n.endGuard=a.exec(u)[1]}else o=="snippet"?(n.tabTrigger=u.match(/^\S*/)[0],n.name||(n.name=u)):o&&(n[o]=u)}}return t},e.prototype.getSnippetByName=function(e,t){var n=this.snippetNameMap,r;return this.getActiveScopes(t).some(function(t){var i=n[t];return i&&(r=i[e]),!!r},this),r},e}();i.implement(d.prototype,s);var v=function(e,t,n){function l(e){var t=[];for(var n=0;n1?(y=t[t.length-1].length,g+=t.length-1):y+=e.length,b+=e}else e&&(e.start?e.end={row:g,column:y}:e.start={row:g,column:y})}),{text:b,tabstops:a,tokens:u}},m=function(){function e(e){this.index=0,this.ranges=[],this.tabstops=[];if(e.tabstopManager)return e.tabstopManager;e.tabstopManager=this,this.$onChange=this.onChange.bind(this),this.$onChangeSelection=o.delayedCall(this.onChangeSelection.bind(this)).schedule,this.$onChangeSession=this.onChangeSession.bind(this),this.$onAfterExec=this.onAfterExec.bind(this),this.attach(e)}return e.prototype.attach=function(e){this.$openTabstops=null,this.selectedTabstop=null,this.editor=e,this.session=e.session,this.editor.on("change",this.$onChange),this.editor.on("changeSelection",this.$onChangeSelection),this.editor.on("changeSession",this.$onChangeSession),this.editor.commands.on("afterExec",this.$onAfterExec),this.editor.keyBinding.addKeyboardHandler(this.keyboardHandler)},e.prototype.detach=function(){this.tabstops.forEach(this.removeTabstopMarkers,this),this.ranges.length=0,this.tabstops.length=0,this.selectedTabstop=null,this.editor.off("change",this.$onChange),this.editor.off("changeSelection",this.$onChangeSelection),this.editor.off("changeSession",this.$onChangeSession),this.editor.commands.off("afterExec",this.$onAfterExec),this.editor.keyBinding.removeKeyboardHandler(this.keyboardHandler),this.editor.tabstopManager=null,this.session=null,this.editor=null},e.prototype.onChange=function(e){var t=e.action[0]=="r",n=this.selectedTabstop||{},r=n.parents||{},i=this.tabstops.slice();for(var s=0;s2&&(this.tabstops.length&&o.push(o.splice(2,1)[0]),this.tabstops.splice.apply(this.tabstops,o))},e.prototype.addTabstopMarkers=function(e){var t=this.session;e.forEach(function(e){e.markerId||(e.markerId=t.addMarker(e,"ace_snippet-marker","text"))})},e.prototype.removeTabstopMarkers=function(e){var t=this.session;e.forEach(function(e){t.removeMarker(e.markerId),e.markerId=null})},e.prototype.updateTabstopMarkers=function(){if(!this.selectedTabstop)return;var e=this.selectedTabstop.snippetId;this.selectedTabstop.index===0&&e--,this.tabstops.forEach(function(t){t.snippetId===e?this.addTabstopMarkers(t):this.removeTabstopMarkers(t)},this)},e.prototype.removeRange=function(e){var t=e.tabstop.indexOf(e);t!=-1&&e.tabstop.splice(t,1),t=this.ranges.indexOf(e),t!=-1&&this.ranges.splice(t,1),t=e.tabstop.rangeList.ranges.indexOf(e),t!=-1&&e.tabstop.splice(t,1),this.session.removeMarker(e.markerId),e.tabstop.length||(t=this.tabstops.indexOf(e.tabstop),t!=-1&&this.tabstops.splice(t,1),this.tabstops.length||this.detach())},e}();m.prototype.keyboardHandler=new f,m.prototype.keyboardHandler.bindKeys({Tab:function(e){if(t.snippetManager&&t.snippetManager.expandWithTab(e))return;e.tabstopManager.tabNext(1),e.renderer.scrollCursorIntoView()},"Shift-Tab":function(e){e.tabstopManager.tabNext(-1),e.renderer.scrollCursorIntoView()},Esc:function(e){e.tabstopManager.detach()}});var g=function(e,t){e.row==0&&(e.column+=t.column),e.row+=t.row},y=function(e,t){e.row==t.row&&(e.column-=t.column),e.row-=t.row};r.importCssString("\n.ace_snippet-marker {\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n background: rgba(194, 193, 208, 0.09);\n border: 1px dotted rgba(211, 208, 235, 0.62);\n position: absolute;\n}","snippets.css",!1),t.snippetManager=new d;var b=e("./editor").Editor;(function(){this.insertSnippet=function(e,n){return t.snippetManager.insertSnippet(this,e,n)},this.expandSnippet=function(e){return t.snippetManager.expandWithTab(this,e)}}).call(b.prototype)}),define("ace/autocomplete/inline_screenreader",["require","exports","module"],function(e,t,n){"use strict";var r=function(){function e(e){this.editor=e,this.screenReaderDiv=document.createElement("div"),this.screenReaderDiv.classList.add("ace_screenreader-only"),this.editor.container.appendChild(this.screenReaderDiv)}return e.prototype.setScreenReaderContent=function(e){!this.popup&&this.editor.completer&&this.editor.completer.popup&&(this.popup=this.editor.completer.popup,this.popup.renderer.on("afterRender",function(){var e=this.popup.getRow(),t=this.popup.renderer.$textLayer,n=t.element.childNodes[e-t.config.firstRow];if(n){var r="doc-tooltip ";for(var i=0;i=0;s--){if(!n.test(e[s]))break;i.push(e[s])}return i.reverse().join("")},t.retrieveFollowingIdentifier=function(e,t,n){n=n||r;var i=[];for(var s=t;s0)for(var t=this.popup.getFirstVisibleRow();t<=this.popup.getLastVisibleRow();t++){var n=this.popup.getData(t);n&&(!e||n.hideInlinePreview)&&this.$seen(n)}},e.prototype.$onPopupShow=function(e){this.$onPopupChange(e),this.stickySelection=!1,this.stickySelectionDelay>=0&&this.stickySelectionTimer.schedule(this.stickySelectionDelay)},e.prototype.observeLayoutChanges=function(){if(this.$elements||!this.editor)return;window.addEventListener("resize",this.onLayoutChange,{passive:!0}),window.addEventListener("wheel",this.mousewheelListener);var e=this.editor.container.parentNode,t=[];while(e)t.push(e),e.addEventListener("scroll",this.onLayoutChange,{passive:!0}),e=e.parentNode;this.$elements=t},e.prototype.unObserveLayoutChanges=function(){var e=this;window.removeEventListener("resize",this.onLayoutChange,{passive:!0}),window.removeEventListener("wheel",this.mousewheelListener),this.$elements&&this.$elements.forEach(function(t){t.removeEventListener("scroll",e.onLayoutChange,{passive:!0})}),this.$elements=null},e.prototype.onLayoutChange=function(){if(!this.popup.isOpen)return this.unObserveLayoutChanges();this.$updatePopupPosition(),this.updateDocTooltip()},e.prototype.$updatePopupPosition=function(){var e=this.editor,t=e.renderer,n=t.layerConfig.lineHeight,r=t.$cursorLayer.getPixelPosition(this.base,!0);r.left-=this.popup.getTextLeftOffset();var i=e.container.getBoundingClientRect();r.top+=i.top-t.layerConfig.offset,r.left+=i.left-e.renderer.scrollLeft,r.left+=t.gutterWidth;var s={top:r.top,left:r.left};t.$ghostText&&t.$ghostTextWidget&&this.base.row===t.$ghostText.position.row&&(s.top+=t.$ghostTextWidget.el.offsetHeight);var o=e.container.getBoundingClientRect().bottom-n,u=othis.filterText&&e.lastIndexOf(this.filterText,0)===0)var t=this.filtered;else var t=this.all;this.filterText=e,t=this.filterCompletions(t,this.filterText),t=t.sort(function(e,t){return t.exactMatch-e.exactMatch||t.$score-e.$score||(e.caption||e.value).localeCompare(t.caption||t.value)});var n=null;t=t.filter(function(e){var t=e.snippet||e.caption||e.value;return t===n?!1:(n=t,!0)}),this.filtered=t},e.prototype.filterCompletions=function(e,t){var n=[],r=t.toUpperCase(),i=t.toLowerCase();e:for(var s=0,o;o=e[s];s++){var u=!this.ignoreCaption&&o.caption||o.value||o.snippet;if(!u)continue;var a=-1,f=0,l=0,c,h;if(this.exactMatch){if(t!==u.substr(0,t.length))continue e}else{var p=u.toLowerCase().indexOf(i);if(p>-1)l=p;else for(var d=0;d=0?m<0||v0&&(a===-1&&(l+=10),l+=h,f|=1<0?e=x():e=o.getValue();var t=m?m.getData(m.getRow()):e;t&&!t.error&&(E(),n.onAccept&&n.onAccept({value:e,item:t},o))}function E(){v.close(),r&&r(),p=null}function S(){if(n.getCompletions){var e;n.getPrefix&&(e=n.getPrefix(o));var t=n.getCompletions(o);m.setData(t,e),m.resize(!0)}}function x(){var e=m.getData(m.getRow());if(e&&!e.error)return e.value||e.caption||e}if(typeof t=="object")return d(e,"",t,n);if(p){var i=p;e=i.editor,i.close();if(i.name&&i.name==n.name)return}if(n.$type)return d[n.$type](e,r);var o=a();o.session.setUndoManager(new f);var h=s.buildDom(["div",{"class":"ace_prompt_container"+(n.hasDescription?" input-box-with-description":"")}]),v=c(e,h,E);h.appendChild(o.container),e&&(e.cmdLine=o,o.setOption("fontSize",e.getOption("fontSize"))),t&&o.setValue(t,1),n.selection&&o.selection.setRange({start:o.session.doc.indexToPosition(n.selection[0]),end:o.session.doc.indexToPosition(n.selection[1])});if(n.getCompletions){var m=new u;m.renderer.setStyle("ace_autocomplete_inline"),m.container.style.display="block",m.container.style.maxWidth="600px",m.container.style.width="100%",m.container.style.marginTop="3px",m.renderer.setScrollMargin(2,2,0,0),m.autoSelect=!1,m.renderer.$maxLines=15,m.setRow(-1),m.on("click",function(e){var t=m.getData(m.getRow());t.error||(o.setValue(t.value||t.name||t),b(),e.stop())}),h.appendChild(m.container),S()}if(n.$rules){var g=new l(n.$rules);o.session.bgTokenizer.setTokenizer(g)}n.placeholder&&o.setOption("placeholder",n.placeholder);if(n.hasDescription){var y=s.buildDom(["div",{"class":"ace_prompt_text_container"}]);s.buildDom(n.prompt||"Press 'Enter' to confirm or 'Escape' to cancel",y),h.appendChild(y)}v.setIgnoreFocusOut(n.ignoreFocusOut);var w={Enter:b,"Esc|Shift-Esc":function(){n.onCancel&&n.onCancel(o.getValue(),o),E()}};m&&Object.assign(w,{Up:function(e){m.goTo("up"),x()},Down:function(e){m.goTo("down"),x()},"Ctrl-Up|Ctrl-Home":function(e){m.goTo("start"),x()},"Ctrl-Down|Ctrl-End":function(e){m.goTo("end"),x()},Tab:function(e){m.goTo("down"),x()},PageUp:function(e){m.gotoPageUp(),x()},PageDown:function(e){m.gotoPageDown(),x()}}),o.commands.bindKeys(w),o.on("input",function(){n.onInput&&n.onInput(),S()}),o.resize(!0),m&&m.resize(!0),o.focus(),p={close:E,name:n.name,editor:e}}var r=e("../config").nls,i=e("../range").Range,s=e("../lib/dom"),o=e("../autocomplete").FilteredList,u=e("../autocomplete/popup").AcePopup,a=e("../autocomplete/popup").$singleLineEditor,f=e("../undomanager").UndoManager,l=e("../tokenizer").Tokenizer,c=e("./menu_tools/overlay_page").overlayPage,h=e("./modelist"),p;d.gotoLine=function(e,t){function n(e){return Array.isArray(e)||(e=[e]),e.map(function(e){var t=e.isBackwards?e.start:e.end,n=e.isBackwards?e.end:e.start,r=n.row,i=r+1+":"+n.column;return n.row==t.row?n.column!=t.column&&(i+=">:"+t.column):i+=">"+(t.row+1)+":"+t.column,i}).reverse().join(", ")}d(e,":"+n(e.selection.toJSON()),{name:"gotoLine",selection:[1,Number.MAX_VALUE],onAccept:function(t){var n=t.value,r=d.gotoLine._history;r||(d.gotoLine._history=r=[]),r.indexOf(n)!=-1&&r.splice(r.indexOf(n),1),r.unshift(n),r.length>20&&(r.length=20);var s=e.getCursorPosition(),o=[];n.replace(/^:/,"").split(/,/).map(function(t){function u(){var t=n[r++];if(!t)return;if(t[0]=="c"){var i=parseInt(t.slice(1))||0;return e.session.doc.indexToPosition(i)}var o=s.row,u=0;return/\d/.test(t)&&(o=parseInt(t)-1,t=n[r++]),t==":"&&(t=n[r++],/\d/.test(t)&&(u=parseInt(t)||0)),{row:o,column:u}}var n=t.split(/([<>:+-]|c?\d+)|[^c\d<>:+-]+/).filter(Boolean),r=0;s=u();var a=i.fromPoints(s,s);n[r]==">"?(r++,a.end=u()):n[r]=="<"&&(r++,a.start=u()),o.unshift(a)}),e.selection.fromJSON(o);var u=e.renderer.scrollTop;e.renderer.scrollSelectionIntoView(e.selection.anchor,e.selection.cursor,.5),e.renderer.animateScrolling(u)},history:function(){return d.gotoLine._history?d.gotoLine._history:[]},getCompletions:function(t){var n=t.getValue(),r=n.replace(/^:/,"").split(":"),i=Math.min(parseInt(r[0])||1,e.session.getLength())-1,s=e.session.getLine(i),o=n+" "+s;return[o].concat(this.history())},$rules:{start:[{regex:/\d+/,token:"string"},{regex:/[:,><+\-c]/,token:"keyword"}]}})},d.commands=function(e,t){function n(e){return(e||"").replace(/^./,function(e){return e.toUpperCase(e)}).replace(/[a-z][A-Z]/g,function(e){return e[0]+" "+e[1].toLowerCase(e)})}function i(t){var r=[],i={};return e.keyBinding.$handlers.forEach(function(e){var s=e.platform,o=e.byName;for(var u in o){var a=o[u].bindKey;typeof a!="string"&&(a=a&&a[s]||"");var f=o[u],l=f.description||n(f.name);Array.isArray(f)||(f=[f]),f.forEach(function(e){typeof e!="string"&&(e=e.name);var n=t.find(function(t){return t===e});n||(i[e]?i[e].key+="|"+a:(i[e]={key:a,command:e,description:l},r.push(i[e])))})}}),r}var s=["insertstring","inserttext","setIndentation","paste"],u=i(s);u=u.map(function(e){return{value:e.description,meta:e.key,command:e.command}}),d(e,"",{name:"commands",selection:[0,Number.MAX_VALUE],maxHistoryCount:5,onAccept:function(t){if(t.item){var n=t.item.command;this.addToHistory(t.item),e.execCommand(n)}},addToHistory:function(e){var t=this.history();t.unshift(e),delete e.message;for(var n=1;n0&&t.length>this.maxHistoryCount&&t.splice(t.length-1,1),d.commands.history=t},history:function(){return d.commands.history||[]},getPrefix:function(e){var t=e.getCursorPosition(),n=e.getValue();return n.substring(0,t.column)},getCompletions:function(e){function t(e,t){var n=JSON.parse(JSON.stringify(e)),r=new o(n);return r.filterCompletions(n,t)}function n(e,t){if(!t||!t.length)return e;var n=[];t.forEach(function(e){n.push(e.command)});var r=[];return e.forEach(function(e){n.indexOf(e.command)===-1&&r.push(e)}),r}var i=this.getPrefix(e),s=t(this.history(),i),a=n(u,s);a=t(a,i),s.length&&a.length&&(s[0].message=r("Recently used"),a[0].message=r("Other commands"));var f=s.concat(a);return f.length>0?f:[{value:r("No matching commands"),error:1}]}})},d.modes=function(e,t){var n=h.modes;n=n.map(function(e){return{value:e.caption,mode:e.name}}),d(e,"",{name:"modes",selection:[0,Number.MAX_VALUE],onAccept:function(t){if(t.item){var n="ace/mode/"+t.item.mode;e.session.setMode(n)}},getPrefix:function(e){var t=e.getCursorPosition(),n=e.getValue();return n.substring(0,t.column)},getCompletions:function(e){function t(e,t){var n=JSON.parse(JSON.stringify(e)),r=new o(n);return r.filterCompletions(n,t)}var r=this.getPrefix(e),i=t(n,r);return i.length>0?i:[{caption:"No mode matching",value:"No mode matching",error:1}]}})},s.importCssString(".ace_prompt_container {\n max-width: 603px;\n width: 100%;\n margin: 20px auto;\n padding: 3px;\n background: white;\n border-radius: 2px;\n box-shadow: 0px 2px 3px 0px #555;\n}","promtp.css",!1),t.prompt=d}); (function() { - window.require(["ace/ext/prompt"], function(m) { - if (typeof module == "object" && typeof exports == "object" && module) { - module.exports = m; - } - }); - })(); - \ No newline at end of file diff --git a/src/ui/static/js/editor/ext-rtl.js b/src/ui/static/js/editor/ext-rtl.js deleted file mode 100644 index ae034299b..000000000 --- a/src/ui/static/js/editor/ext-rtl.js +++ /dev/null @@ -1,8 +0,0 @@ -define("ace/ext/rtl",["require","exports","module","ace/editor","ace/config"],function(e,t,n){"use strict";function s(e,t){var n=t.getSelection().lead;t.session.$bidiHandler.isRtlLine(n.row)&&n.column===0&&(t.session.$bidiHandler.isMoveLeftOperation&&n.row>0?t.getSelection().moveCursorTo(n.row-1,t.session.getLine(n.row-1).length):t.getSelection().isEmpty()?n.column+=1:n.setPosition(n.row,n.column+1))}function o(e){e.editor.session.$bidiHandler.isMoveLeftOperation=/gotoleft|selectleft|backspace|removewordleft/.test(e.command.name)}function u(e,t){var n=t.session;n.$bidiHandler.currentRow=null;if(n.$bidiHandler.isRtlLine(e.start.row)&&e.action==="insert"&&e.lines.length>1)for(var r=e.start.row;rl)break;if(!c[0]){t.lastIndex=a+=i.skipEmptyMatch(o,a,n);if(a>=o.length)break}}}this.searchCounter.textContent=f("$0 of $1",[s,r>l?l+"+":r])},e.prototype.findNext=function(){this.find(!0,!1)},e.prototype.findPrev=function(){this.find(!0,!0)},e.prototype.findAll=function(){var e=this.editor.findAll(this.searchInput.value,{regExp:this.regExpOption.checked,caseSensitive:this.caseSensitiveOption.checked,wholeWord:this.wholeWordOption.checked}),t=!e&&this.searchInput.value;r.setCssClass(this.searchBox,"ace_nomatch",t),this.editor._emit("findSearchBox",{match:!t}),this.highlight(),this.hide()},e.prototype.replace=function(){this.editor.getReadOnly()||this.editor.replace(this.replaceInput.value)},e.prototype.replaceAndFindNext=function(){this.editor.getReadOnly()||(this.editor.replace(this.replaceInput.value),this.findNext())},e.prototype.replaceAll=function(){this.editor.getReadOnly()||this.editor.replaceAll(this.replaceInput.value)},e.prototype.hide=function(){this.active=!1,this.setSearchRange(null),this.editor.off("changeSession",this.setSession),this.element.style.display="none",this.editor.keyBinding.removeKeyboardHandler(this.$closeSearchBarKb),this.editor.focus()},e.prototype.show=function(e,t){this.active=!0,this.editor.on("changeSession",this.setSession),this.element.style.display="",this.replaceOption.checked=t,e&&(this.searchInput.value=e),this.searchInput.focus(),this.searchInput.select(),this.editor.keyBinding.addKeyboardHandler(this.$closeSearchBarKb),this.$syncOptions(!0)},e.prototype.isFocused=function(){var e=document.activeElement;return e==this.searchInput||e==this.replaceInput},e}(),h=new u;h.bindKeys({"Ctrl-f|Command-f":function(e){var t=e.isReplace=!e.isReplace;e.replaceBox.style.display=t?"":"none",e.replaceOption.checked=!1,e.$syncOptions(),e.searchInput.focus()},"Ctrl-H|Command-Option-F":function(e){if(e.editor.getReadOnly())return;e.replaceOption.checked=!0,e.$syncOptions(),e.replaceInput.focus()},"Ctrl-G|Command-G":function(e){e.findNext()},"Ctrl-Shift-G|Command-Shift-G":function(e){e.findPrev()},esc:function(e){setTimeout(function(){e.hide()})},Return:function(e){e.activeInput==e.replaceInput&&e.replace(),e.findNext()},"Shift-Return":function(e){e.activeInput==e.replaceInput&&e.replace(),e.findPrev()},"Alt-Return":function(e){e.activeInput==e.replaceInput&&e.replaceAll(),e.findAll()},Tab:function(e){(e.activeInput==e.replaceInput?e.searchInput:e.replaceInput).focus()}}),h.addCommands([{name:"toggleRegexpMode",bindKey:{win:"Alt-R|Alt-/",mac:"Ctrl-Alt-R|Ctrl-Alt-/"},exec:function(e){e.regExpOption.checked=!e.regExpOption.checked,e.$syncOptions()}},{name:"toggleCaseSensitive",bindKey:{win:"Alt-C|Alt-I",mac:"Ctrl-Alt-R|Ctrl-Alt-I"},exec:function(e){e.caseSensitiveOption.checked=!e.caseSensitiveOption.checked,e.$syncOptions()}},{name:"toggleWholeWords",bindKey:{win:"Alt-B|Alt-W",mac:"Ctrl-Alt-B|Ctrl-Alt-W"},exec:function(e){e.wholeWordOption.checked=!e.wholeWordOption.checked,e.$syncOptions()}},{name:"toggleReplace",exec:function(e){e.replaceOption.checked=!e.replaceOption.checked,e.$syncOptions()}},{name:"searchInSelection",exec:function(e){e.searchOption.checked=!e.searchRange,e.setSearchRange(e.searchOption.checked&&e.editor.getSelectionRange()),e.$syncOptions()}}]);var p=new u([{bindKey:"Esc",name:"closeSearchBar",exec:function(e){e.searchBox.hide()}}]);c.prototype.$searchBarKb=h,c.prototype.$closeSearchBarKb=p,t.SearchBox=c,t.Search=function(e,t){var n=e.searchBox||new c(e);n.show(e.session.getTextRange(),t)}}); (function() { - window.require(["ace/ext/searchbox"], function(m) { - if (typeof module == "object" && typeof exports == "object" && module) { - module.exports = m; - } - }); - })(); - \ No newline at end of file diff --git a/src/ui/static/js/editor/ext-settings_menu.js b/src/ui/static/js/editor/ext-settings_menu.js deleted file mode 100644 index 008b7521e..000000000 --- a/src/ui/static/js/editor/ext-settings_menu.js +++ /dev/null @@ -1,8 +0,0 @@ -define("ace/ext/menu_tools/settings_menu.css",["require","exports","module"],function(e,t,n){n.exports="#ace_settingsmenu, #kbshortcutmenu {\n background-color: #F7F7F7;\n color: black;\n box-shadow: -5px 4px 5px rgba(126, 126, 126, 0.55);\n padding: 1em 0.5em 2em 1em;\n overflow: auto;\n position: absolute;\n margin: 0;\n bottom: 0;\n right: 0;\n top: 0;\n z-index: 9991;\n cursor: default;\n}\n\n.ace_dark #ace_settingsmenu, .ace_dark #kbshortcutmenu {\n box-shadow: -20px 10px 25px rgba(126, 126, 126, 0.25);\n background-color: rgba(255, 255, 255, 0.6);\n color: black;\n}\n\n.ace_optionsMenuEntry:hover {\n background-color: rgba(100, 100, 100, 0.1);\n transition: all 0.3s\n}\n\n.ace_closeButton {\n background: rgba(245, 146, 146, 0.5);\n border: 1px solid #F48A8A;\n border-radius: 50%;\n padding: 7px;\n position: absolute;\n right: -8px;\n top: -8px;\n z-index: 100000;\n}\n.ace_closeButton{\n background: rgba(245, 146, 146, 0.9);\n}\n.ace_optionsMenuKey {\n color: darkslateblue;\n font-weight: bold;\n}\n.ace_optionsMenuCommand {\n color: darkcyan;\n font-weight: normal;\n}\n.ace_optionsMenuEntry input, .ace_optionsMenuEntry button {\n vertical-align: middle;\n}\n\n.ace_optionsMenuEntry button[ace_selected_button=true] {\n background: #e7e7e7;\n box-shadow: 1px 0px 2px 0px #adadad inset;\n border-color: #adadad;\n}\n.ace_optionsMenuEntry button {\n background: white;\n border: 1px solid lightgray;\n margin: 0px;\n}\n.ace_optionsMenuEntry button:hover{\n background: #f0f0f0;\n}"}),define("ace/ext/menu_tools/overlay_page",["require","exports","module","ace/lib/dom","ace/ext/menu_tools/settings_menu.css"],function(e,t,n){"use strict";var r=e("../../lib/dom"),i=e("./settings_menu.css");r.importCssString(i,"settings_menu.css",!1),n.exports.overlayPage=function(t,n,r){function o(e){e.keyCode===27&&u()}function u(){if(!i)return;document.removeEventListener("keydown",o),i.parentNode.removeChild(i),t&&t.focus(),i=null,r&&r()}function a(e){s=e,e&&(i.style.pointerEvents="none",n.style.pointerEvents="auto")}var i=document.createElement("div"),s=!1;return i.style.cssText="margin: 0; padding: 0; position: fixed; top:0; bottom:0; left:0; right:0;z-index: 9990; "+(t?"background-color: rgba(0, 0, 0, 0.3);":""),i.addEventListener("click",function(e){s||u()}),document.addEventListener("keydown",o),n.addEventListener("click",function(e){e.stopPropagation()}),i.appendChild(n),document.body.appendChild(i),t&&t.blur(),{close:u,setIgnoreFocusOut:a}}}),define("ace/ext/modelist",["require","exports","module"],function(e,t,n){"use strict";function i(e){var t=a.text,n=e.split(/[\/\\]/).pop();for(var i=0;i 0!";if(e==this.$splits)return;if(e>this.$splits){while(this.$splitse)t=this.$editors[this.$splits-1],this.$container.removeChild(t.container),this.$splits--;this.resize()},this.getSplits=function(){return this.$splits},this.getEditor=function(e){return this.$editors[e]},this.getCurrentEditor=function(){return this.$cEditor},this.focus=function(){this.$cEditor.focus()},this.blur=function(){this.$cEditor.blur()},this.setTheme=function(e){this.$editors.forEach(function(t){t.setTheme(e)})},this.setKeyboardHandler=function(e){this.$editors.forEach(function(t){t.setKeyboardHandler(e)})},this.forEach=function(e,t){this.$editors.forEach(e,t)},this.$fontSize="",this.setFontSize=function(e){this.$fontSize=e,this.forEach(function(t){t.setFontSize(e)})},this.$cloneSession=function(e){var t=new a(e.getDocument(),e.getMode()),n=e.getUndoManager();return t.setUndoManager(n),t.setTabSize(e.getTabSize()),t.setUseSoftTabs(e.getUseSoftTabs()),t.setOverwrite(e.getOverwrite()),t.setBreakpoints(e.getBreakpoints()),t.setUseWrapMode(e.getUseWrapMode()),t.setUseWorker(e.getUseWorker()),t.setWrapLimitRange(e.$wrapLimitRange.min,e.$wrapLimitRange.max),t.$foldData=e.$cloneFoldData(),t},this.setSession=function(e,t){var n;t==null?n=this.$cEditor:n=this.$editors[t];var r=this.$editors.some(function(t){return t.session===e});return r&&(e=this.$cloneSession(e)),n.setSession(e),e},this.getOrientation=function(){return this.$orientation},this.setOrientation=function(e){if(this.$orientation==e)return;this.$orientation=e,this.resize()},this.resize=function(){var e=this.$container.clientWidth,t=this.$container.clientHeight,n;if(this.$orientation==this.BESIDE){var r=e/this.$splits;for(var i=0;i")}return this.textContent&&e.push(this.textContent),this.type!="fragment"&&e.push(""),e.join("")},e}(),l={createTextNode:function(e,t){return a(e)},createElement:function(e){return new f(e)},createFragment:function(){return new f("fragment")}},c=function(){this.config={},this.dom=l};c.prototype=i.prototype;var h=function(e,t,n){var r=e.className.match(/lang-(\w+)/),i=t.mode||r&&"ace/mode/"+r[1];if(!i)return!1;var s=t.theme||"ace/theme/textmate",o="",a=[];if(e.firstElementChild){var f=0;for(var l=0;l");return}e.push("")}var s=null,o={mode:"Mode:",wrap:"Soft Wrap:",theme:"Theme:",fontSize:"Font Size:",showGutter:"Display Gutter:",keybindings:"Keyboard",showPrintMargin:"Show Print Margin:",useSoftTabs:"Use Soft Tabs:",showInvisibles:"Show Invisibles"},u={mode:{text:"Plain",javascript:"JavaScript",xml:"XML",html:"HTML",css:"CSS",scss:"SCSS",python:"Python",php:"PHP",java:"Java",ruby:"Ruby",c_cpp:"C/C++",coffee:"CoffeeScript",json:"json",perl:"Perl",clojure:"Clojure",ocaml:"OCaml",csharp:"C#",haxe:"haXe",svg:"SVG",textile:"Textile",groovy:"Groovy",liquid:"Liquid",Scala:"Scala"},theme:{clouds:"Clouds",clouds_midnight:"Clouds Midnight",cobalt:"Cobalt",crimson_editor:"Crimson Editor",dawn:"Dawn",gob:"Green on Black",eclipse:"Eclipse",idle_fingers:"Idle Fingers",kr_theme:"Kr Theme",merbivore:"Merbivore",merbivore_soft:"Merbivore Soft",mono_industrial:"Mono Industrial",monokai:"Monokai",pastel_on_dark:"Pastel On Dark",solarized_dark:"Solarized Dark",solarized_light:"Solarized Light",textmate:"Textmate",twilight:"Twilight",vibrant_ink:"Vibrant Ink"},showGutter:s,fontSize:{"10px":"10px","11px":"11px","12px":"12px","14px":"14px","16px":"16px"},wrap:{off:"Off",40:"40",80:"80",free:"Free"},keybindings:{ace:"ace",vim:"vim",emacs:"emacs"},showPrintMargin:s,useSoftTabs:s,showInvisibles:s},a=[];a.push("");for(var l in t.defaultOptions)a.push(""),a.push("");a.push("
    SettingValue
    ",o[l],""),f(a,l,u[l],i.getOption(l)),a.push("
    "),e.innerHTML=a.join("");var c=function(e){var t=e.currentTarget;i.setOption(t.title,t.value)},h=function(e){var t=e.currentTarget;i.setOption(t.title,t.checked)},p=e.getElementsByTagName("select");for(var d=0;d0&&!(s%l)&&!(f%l)&&(r[l]=(r[l]||0)+1),n[f]=(n[f]||0)+1}s=f}while(up.score&&(p={score:v,length:u})}if(p.score&&p.score>1.4)var m=p.length;if(i>d+1){if(m==1||di+1)return{ch:" ",length:m}},t.detectIndentation=function(e){var n=e.getLines(0,1e3),r=t.$detectIndentation(n)||{};return r.ch&&e.setUseSoftTabs(r.ch==" "),r.length&&e.setTabSize(r.length),r},t.trimTrailingSpace=function(e,t){var n=e.getDocument(),r=n.getAllLines(),i=t&&t.trimEmpty?-1:0,s=[],o=-1;t&&t.keepCursorPosition&&(e.selection.rangeCount?e.selection.rangeList.ranges.forEach(function(e,t,n){var r=n[t+1];if(r&&r.cursor.row==e.cursor.row)return;s.push(e.cursor)}):s.push(e.selection.getCursor()),o=0);var u=s[o]&&s[o].row;for(var a=0,f=r.length;ai&&(c=s[o].column),o++,u=s[o]?s[o].row:-1),c>i&&n.removeInLine(a,c,l.length)}},t.convertIndentation=function(e,t,n){var i=e.getTabString()[0],s=e.getTabSize();n||(n=s),t||(t=i);var o=t==" "?t:r.stringRepeat(t,n),u=e.doc,a=u.getAllLines(),f={},l={};for(var c=0,h=a.length;c30&&this.$data.shift()},append:function(e){var t=this.$data.length-1,n=this.$data[t]||"";e&&(n+=e),n&&(this.$data[t]=n)},get:function(e){return e=e||1,this.$data.slice(this.$data.length-e,this.$data.length).reverse().join("\n")},pop:function(){return this.$data.length>1&&this.$data.pop(),this.get()},rotate:function(){return this.$data.unshift(this.$data.pop()),this.get()}}}); (function() { - window.require(["ace/keyboard/emacs"], function(m) { - if (typeof module == "object" && typeof exports == "object" && module) { - module.exports = m; - } - }); - })(); - \ No newline at end of file diff --git a/src/ui/static/js/editor/keybinding-sublime.js b/src/ui/static/js/editor/keybinding-sublime.js deleted file mode 100644 index 3d1e5ff49..000000000 --- a/src/ui/static/js/editor/keybinding-sublime.js +++ /dev/null @@ -1,8 +0,0 @@ -define("ace/keyboard/sublime",["require","exports","module","ace/keyboard/hash_handler"],function(e,t,n){"use strict";function i(e,t,n){function f(e){return e?/\s/.test(e)?"s":e=="_"?"_":e.toUpperCase()==e&&e.toLowerCase()!=e?"W":e.toUpperCase()!=e&&e.toLowerCase()==e?"w":"o":"-"}var r=e.selection,i=r.lead.row,s=r.lead.column,o=e.session.getLine(i);if(!o[s+t]){var u=(n?"selectWord":"moveCursorShortWord")+(t==1?"Right":"Left");return e.selection[u]()}t==-1&&s--;while(o[s]){var a=f(o[s])+f(o[s+t]);s+=t;if(t==1){if(a=="WW"&&f(o[s+1])=="w")break}else{if(a=="wW"){if(f(o[s-1])=="W"){s-=1;break}continue}if(a=="Ww")break}if(/w[s_oW]|_[sWo]|o[s_wW]|s[W]|W[so]/.test(a))break}t==-1&&s++,n?e.selection.moveCursorTo(i,s):e.selection.moveTo(i,s)}var r=e("../keyboard/hash_handler").HashHandler;t.handler=new r,t.handler.addCommands([{name:"find_all_under",exec:function(e){e.selection.isEmpty()&&e.selection.selectWord(),e.findAll()},readOnly:!0},{name:"find_under",exec:function(e){e.selection.isEmpty()&&e.selection.selectWord(),e.findNext()},readOnly:!0},{name:"find_under_prev",exec:function(e){e.selection.isEmpty()&&e.selection.selectWord(),e.findPrevious()},readOnly:!0},{name:"find_under_expand",exec:function(e){e.selectMore(1,!1,!0)},scrollIntoView:"animate",readOnly:!0},{name:"find_under_expand_skip",exec:function(e){e.selectMore(1,!0,!0)},scrollIntoView:"animate",readOnly:!0},{name:"delete_to_hard_bol",exec:function(e){var t=e.selection.getCursor();e.session.remove({start:{row:t.row,column:0},end:t})},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"delete_to_hard_eol",exec:function(e){var t=e.selection.getCursor();e.session.remove({start:t,end:{row:t.row,column:Infinity}})},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"moveToWordStartLeft",exec:function(e){e.selection.moveCursorLongWordLeft(),e.clearSelection()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"moveToWordEndRight",exec:function(e){e.selection.moveCursorLongWordRight(),e.clearSelection()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"selectToWordStartLeft",exec:function(e){var t=e.selection;t.$moveSelection(t.moveCursorLongWordLeft)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"selectToWordEndRight",exec:function(e){var t=e.selection;t.$moveSelection(t.moveCursorLongWordRight)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"selectSubWordRight",exec:function(e){i(e,1,!0)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectSubWordLeft",exec:function(e){i(e,-1,!0)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"moveSubWordRight",exec:function(e){i(e,1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"moveSubWordLeft",exec:function(e){i(e,-1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0}]),[{bindKey:{mac:"cmd-k cmd-backspace|cmd-backspace",win:"ctrl-shift-backspace|ctrl-k ctrl-backspace"},name:"removetolinestarthard"},{bindKey:{mac:"cmd-k cmd-k|cmd-delete|ctrl-k",win:"ctrl-shift-delete|ctrl-k ctrl-k"},name:"removetolineendhard"},{bindKey:{mac:"cmd-shift-d",win:"ctrl-shift-d"},name:"duplicateSelection"},{bindKey:{mac:"cmd-l",win:"ctrl-l"},name:"expandtoline"},{bindKey:{mac:"cmd-shift-a",win:"ctrl-shift-a"},name:"expandSelection",args:{to:"tag"}},{bindKey:{mac:"cmd-shift-j",win:"ctrl-shift-j"},name:"expandSelection",args:{to:"indentation"}},{bindKey:{mac:"ctrl-shift-m",win:"ctrl-shift-m"},name:"expandSelection",args:{to:"brackets"}},{bindKey:{mac:"cmd-shift-space",win:"ctrl-shift-space"},name:"expandSelection",args:{to:"scope"}},{bindKey:{mac:"ctrl-cmd-g",win:"alt-f3"},name:"find_all_under"},{bindKey:{mac:"alt-cmd-g",win:"ctrl-f3"},name:"find_under"},{bindKey:{mac:"shift-alt-cmd-g",win:"ctrl-shift-f3"},name:"find_under_prev"},{bindKey:{mac:"cmd-g",win:"f3"},name:"findnext"},{bindKey:{mac:"shift-cmd-g",win:"shift-f3"},name:"findprevious"},{bindKey:{mac:"cmd-d",win:"ctrl-d"},name:"find_under_expand"},{bindKey:{mac:"cmd-k cmd-d",win:"ctrl-k ctrl-d"},name:"find_under_expand_skip"},{bindKey:{mac:"cmd-alt-[",win:"ctrl-shift-["},name:"toggleFoldWidget"},{bindKey:{mac:"cmd-alt-]",win:"ctrl-shift-]"},name:"unfold"},{bindKey:{mac:"cmd-k cmd-0|cmd-k cmd-j",win:"ctrl-k ctrl-0|ctrl-k ctrl-j"},name:"unfoldall"},{bindKey:{mac:"cmd-k cmd-1",win:"ctrl-k ctrl-1"},name:"foldOther",args:{level:1}},{bindKey:{win:"ctrl-left",mac:"alt-left"},name:"moveToWordStartLeft"},{bindKey:{win:"ctrl-right",mac:"alt-right"},name:"moveToWordEndRight"},{bindKey:{win:"ctrl-shift-left",mac:"alt-shift-left"},name:"selectToWordStartLeft"},{bindKey:{win:"ctrl-shift-right",mac:"alt-shift-right"},name:"selectToWordEndRight"},{bindKey:{mac:"ctrl-alt-shift-right|ctrl-shift-right",win:"alt-shift-right"},name:"selectSubWordRight"},{bindKey:{mac:"ctrl-alt-shift-left|ctrl-shift-left",win:"alt-shift-left"},name:"selectSubWordLeft"},{bindKey:{mac:"ctrl-alt-right|ctrl-right",win:"alt-right"},name:"moveSubWordRight"},{bindKey:{mac:"ctrl-alt-left|ctrl-left",win:"alt-left"},name:"moveSubWordLeft"},{bindKey:{mac:"ctrl-m",win:"ctrl-m"},name:"jumptomatching",args:{to:"brackets"}},{bindKey:{mac:"ctrl-f6",win:"ctrl-f6"},name:"goToNextError"},{bindKey:{mac:"ctrl-shift-f6",win:"ctrl-shift-f6"},name:"goToPreviousError"},{bindKey:{mac:"ctrl-o"},name:"splitline"},{bindKey:{mac:"ctrl-shift-w",win:"alt-shift-w"},name:"surrowndWithTag"},{bindKey:{mac:"cmd-alt-.",win:"alt-."},name:"close_tag"},{bindKey:{mac:"cmd-j",win:"ctrl-j"},name:"joinlines"},{bindKey:{mac:"ctrl--",win:"alt--"},name:"jumpBack"},{bindKey:{mac:"ctrl-shift--",win:"alt-shift--"},name:"jumpForward"},{bindKey:{mac:"cmd-k cmd-l",win:"ctrl-k ctrl-l"},name:"tolowercase"},{bindKey:{mac:"cmd-k cmd-u",win:"ctrl-k ctrl-u"},name:"touppercase"},{bindKey:{mac:"cmd-shift-v",win:"ctrl-shift-v"},name:"paste_and_indent"},{bindKey:{mac:"cmd-k cmd-v|cmd-alt-v",win:"ctrl-k ctrl-v"},name:"paste_from_history"},{bindKey:{mac:"cmd-shift-enter",win:"ctrl-shift-enter"},name:"addLineBefore"},{bindKey:{mac:"cmd-enter",win:"ctrl-enter"},name:"addLineAfter"},{bindKey:{mac:"ctrl-shift-k",win:"ctrl-shift-k"},name:"removeline"},{bindKey:{mac:"ctrl-alt-up",win:"ctrl-up"},name:"scrollup"},{bindKey:{mac:"ctrl-alt-down",win:"ctrl-down"},name:"scrolldown"},{bindKey:{mac:"cmd-a",win:"ctrl-a"},name:"selectall"},{bindKey:{linux:"alt-shift-down",mac:"ctrl-shift-down",win:"ctrl-alt-down"},name:"addCursorBelow"},{bindKey:{linux:"alt-shift-up",mac:"ctrl-shift-up",win:"ctrl-alt-up"},name:"addCursorAbove"},{bindKey:{mac:"cmd-k cmd-c|ctrl-l",win:"ctrl-k ctrl-c"},name:"centerselection"},{bindKey:{mac:"f5",win:"f9"},name:"sortlines"},{bindKey:{mac:"ctrl-f5",win:"ctrl-f9"},name:"sortlines",args:{caseSensitive:!0}},{bindKey:{mac:"cmd-shift-l",win:"ctrl-shift-l"},name:"splitSelectionIntoLines"},{bindKey:{mac:"ctrl-cmd-down",win:"ctrl-shift-down"},name:"movelinesdown"},{bindKey:{mac:"ctrl-cmd-up",win:"ctrl-shift-up"},name:"movelinesup"},{bindKey:{mac:"alt-down",win:"alt-down"},name:"modifyNumberDown"},{bindKey:{mac:"alt-up",win:"alt-up"},name:"modifyNumberUp"},{bindKey:{mac:"cmd-/",win:"ctrl-/"},name:"togglecomment"},{bindKey:{mac:"cmd-alt-/",win:"ctrl-shift-/"},name:"toggleBlockComment"},{bindKey:{linux:"ctrl-alt-q",mac:"ctrl-q",win:"ctrl-q"},name:"togglerecording"},{bindKey:{linux:"ctrl-alt-shift-q",mac:"ctrl-shift-q",win:"ctrl-shift-q"},name:"replaymacro"},{bindKey:{mac:"ctrl-t",win:"ctrl-t"},name:"transpose"}].forEach(function(e){var n=t.handler.commands[e.name];n&&(n.bindKey=e.bindKey),t.handler.bindKey(e.bindKey,n||e.name)})}); (function() { - window.require(["ace/keyboard/sublime"], function(m) { - if (typeof module == "object" && typeof exports == "object" && module) { - module.exports = m; - } - }); - })(); - \ No newline at end of file diff --git a/src/ui/static/js/editor/keybinding-vim.js b/src/ui/static/js/editor/keybinding-vim.js deleted file mode 100644 index d3327ecad..000000000 --- a/src/ui/static/js/editor/keybinding-vim.js +++ /dev/null @@ -1,8 +0,0 @@ -define("ace/ext/hardwrap",["require","exports","module","ace/range","ace/editor","ace/config"],function(e,t,n){"use strict";function i(e,t){function m(e,t,n){if(e.lengthn)return{start:o.index,end:o.index+o[2].length};if(s&&s[2])return u=t+s[2].length,{start:u,end:u+s[3].length}}var n=t.column||e.getOption("printMarginColumn"),i=t.allowMerge!=0,s=Math.min(t.startRow,t.endRow),o=Math.max(t.startRow,t.endRow),u=e.session;while(s<=o){var a=u.getLine(s);if(a.length>n){var f=m(a,n,5);if(f){var l=/^\s*/.exec(a)[0];u.replace(new r(s,f.start,s,f.end),"\n"+l)}o++}else if(i&&/\S/.test(a)&&s!=o){var c=u.getLine(s+1);if(c&&/\S/.test(c)){var h=a.replace(/\s+$/,""),p=c.replace(/^\s+/,""),d=h+" "+p,f=m(d,n,5);if(f&&f.start>h.length||d.length"+t(e.head):Array.isArray(e)?"["+e.map(function(e){return t(e)})+"]":JSON.stringify(e)}var e="";for(var n=0;n=n.ch-1){var r=e.getLine(t.line),i=r.charCodeAt(t.ch);55296<=i&&i<=55551&&(n.ch+=1)}return{start:t,end:n}}function C(e){e.setOption("disableInput",!0),e.setOption("showCursorWhenSelecting",!1),m.signal(e,"vim-mode-change",{mode:"normal"}),e.on("cursorActivity",cr),Y(e),m.on(e.getInputField(),"paste",L(e))}function k(e){e.setOption("disableInput",!1),e.off("cursorActivity",cr),m.off(e.getInputField(),"paste",L(e)),e.state.vim=null,Wn&&clearTimeout(Wn)}function L(e){var t=e.state.vim;return t.onPasteFn||(t.onPasteFn=function(){t.insertMode||(e.setCursor(Mt(e.getCursor(),0,1)),kt.enterInsertMode(e,{},t))}),t.onPasteFn}function j(e,t){return t>=e.firstLine()&&t<=e.lastLine()}function F(e){return/^[a-z]$/.test(e)}function I(e){return"()[]{}".indexOf(e)!=-1}function q(e){return A.test(e)}function R(e){return H.test(e)}function U(e){return/^\s*$/.test(e)}function z(e){return".?!".indexOf(e)!=-1}function W(e,t){for(var n=0;n|./gi,o;while(o=s.exec(t)){var u=o[0],a=i.insertMode;if(st){ot(u);continue}var f=nt.handleKey(e,u,"mapping");if(!f&&a&&i.insertMode){if(u[0]=="<"){var l=u.toLowerCase().slice(1,-1),c=l.split("-");l=c.pop()||"";if(l=="lt")u="<";else if(l=="space")u=" ";else if(l=="cr")u="\n";else{if(lt.hasOwnProperty(l)){u=lt[l],mr(e,u);continue}u=u[0],s.lastIndex=o.index+1}}e.replaceSelection(u)}}}finally{rt.pop(),it=rt.length?r:!1;if(!rt.length&&st){var h=st;st=null,qn(e,h)}}}function ct(e,t){var n=e.key;if(ft[n])return;n.length>1&&n[0]=="n"&&(n=n.replace("Numpad","")),n=at[n]||n;var r="";e.ctrlKey&&(r+="C-"),e.altKey&&(r+="A-"),e.metaKey&&(r+="M-"),m.isMac&&e.altKey&&!e.metaKey&&!e.ctrlKey&&(r=r.slice(2)),(r||n.length>1)&&e.shiftKey&&(r+="S-");if(t&&!t.expectLiteralNext&&n.length==1)if(N.keymap&&n in N.keymap){if(N.remapCtrl!=0||!r)n=N.keymap[n]}else if(n.charCodeAt(0)>255){var i=e.code&&e.code.slice(-1)||"";e.shiftKey||(i=i.toLowerCase()),i&&(n=i)}return r+=n,r.length>1&&(r="<"+r+">"),r}function ht(e,t){N.string!==e&&(N=pt(e)),N.remapCtrl=t}function pt(e){function n(e){return e.split(/\\?(.)/).filter(Boolean)}var t={};return e?(e.split(/((?:[^\\,]|\\.)+),/).map(function(e){if(!e)return;var r=e.split(/((?:[^\\;]|\\.)+);/);if(r.length==3){var i=n(r[1]),s=n(r[2]);if(i.length!==s.length)return;for(var o=0;oa&&(l=-1),a+=l,a>u&&(a-=2)}return new w(s,a)}function Ot(e){var t={};for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}function Mt(e,t,n){return typeof t=="object"&&(n=t.ch,t=t.line),new w(e.line+t,e.ch+n)}function _t(e,t,n,r){r.operator&&(n="operatorPending");var i,s=[],o=[],u=it?t.length-x:0;for(var a=u;a",r=t.slice(-10)=="";if(n||r){var i=t.length-(n?11:10),s=e.slice(0,i),o=t.slice(0,i);return s==o&&e.length>i?"full":o.indexOf(s)==0?"partial":!1}return e==t?"full":t.indexOf(e)==0?"partial":!1}function Pt(e){var t=/^.*(<[^>]+>)$/.exec(e),n=t?t[1]:e.slice(-1);if(n.length>1)switch(n){case"":n="\n";break;case"":n=" ";break;default:n=""}return n}function Ht(e,t,n){return function(){for(var r=0;r2&&(t=It.apply(undefined,Array.prototype.slice.call(arguments,1))),Ft(e,t)?e:t}function qt(e,t){return arguments.length>2&&(t=qt.apply(undefined,Array.prototype.slice.call(arguments,1))),Ft(e,t)?t:e}function Rt(e,t,n){var r=Ft(e,t),i=Ft(t,n);return r&&i}function Ut(e,t){return e.getLine(t).length}function zt(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}function Wt(e){return e.replace(/([.?*+$\[\]\/\\(){}|\-])/g,"\\$1")}function Xt(e,t,n){var r=Ut(e,t),i=(new Array(n-r+1)).join(" ");e.setCursor(new w(t,r)),e.replaceRange(i,e.getCursor())}function Vt(e,t){var n=[],r=e.listSelections(),i=Bt(e.clipPos(t)),s=!jt(t,i),o=e.getCursor("head"),u=Jt(r,o),a=jt(r[u].head,r[u].anchor),f=r.length-1,l=f-u>u?f:0,c=r[l].anchor,h=Math.min(c.line,i.line),p=Math.max(c.line,i.line),d=c.ch,v=i.ch,m=r[l].head.ch-d,g=v-d;m>0&&g<=0?(d++,s||v--):m<0&&g>=0?(d--,a||v++):m<0&&g==-1&&(d--,v++);for(var y=h;y<=p;y++){var b={anchor:new w(y,d),head:new w(y,v)};n.push(b)}return e.setSelections(n),t.ch=v,c.ch=d,c}function $t(e,t,n){var r=[];for(var i=0;ia&&(i.line=a),i.ch=Ut(e,i.line)}else i.ch=0,s.ch=Ut(e,s.line);return{ranges:[{anchor:s,head:i}],primary:0}}if(n=="block"){var f=Math.min(s.line,i.line),l=s.ch,c=Math.max(s.line,i.line),h=i.ch;l0&&s&&U(s);s=i.pop())n.line--,n.ch=0;s?(n.line--,n.ch=Ut(e,n.line)):n.ch=0}}function rn(e,t,n){t.ch=0,n.ch=0,n.line++}function sn(e){if(!e)return 0;var t=e.search(/\S/);return t==-1?e.length:t}function on(e,t,n){var r=t.inclusive,i=t.innerWord,s=t.bigWord,o=t.noSymbol,u=t.multiline,a=n||en(e),f=e.getLine(a.line),l=f,c=a.line,h=c,p=a.ch,d,v=o?O[0]:M[0];if(i&&/\s/.test(f.charAt(p)))v=function(e){return/\s/.test(e)};else{while(!v(f.charAt(p))){p++;if(p>=f.length){if(!u)return null;p--,d=pn(e,a,!0,s,!0);break}}s?v=M[0]:(v=O[0],v(f.charAt(p))||(v=O[1]))}var m=p,g=p;while(v(f.charAt(g))&&g>=0)g--;g++;if(d)m=d.to,h=d.line,l=e.getLine(h),!l&&m==0&&m++;else while(v(f.charAt(m))&&m0)g--;!g&&!b&&(g=E)}}return{start:new w(c,g),end:new w(h,m)}}function un(e,t,n){var r=t;if(!m.findMatchingTag||!m.findEnclosingTag)return{start:r,end:r};var i=m.findMatchingTag(e,t)||m.findEnclosingTag(e,t);return!i||!i.open||!i.close?{start:r,end:r}:n?{start:i.open.from,end:i.close.to}:{start:i.open.to,end:i.close.from}}function an(e,t,n){jt(t,n)||Z.jumpList.add(e,t,n)}function fn(e,t){Z.lastCharacterSearch.increment=e,Z.lastCharacterSearch.forward=t.forward,Z.lastCharacterSearch.selectedCharacter=t.selectedCharacter}function hn(e,t,n,r){var i=Bt(e.getCursor()),s=n?1:-1,o=n?e.lineCount():-1,u=i.ch,a=i.line,f=e.getLine(a),l={lineText:f,nextCh:f.charAt(u),lastCh:null,index:u,symb:r,reverseSymb:(n?{")":"(","}":"{"}:{"(":")","{":"}"})[r],forward:n,depth:0,curMoveThrough:!1},c=ln[r];if(!c)return i;var h=cn[c].init,p=cn[c].isComplete;h&&h(l);while(a!==o&&t){l.index+=s,l.nextCh=l.lineText.charAt(l.index);if(!l.nextCh){a+=s,l.lineText=e.getLine(a)||"";if(s>0)l.index=0;else{var d=l.lineText.length;l.index=d>0?d-1:0}l.nextCh=l.lineText.charAt(l.index)}p(l)&&(i.line=a,i.ch=l.index,t--)}return l.nextCh||l.curMoveThrough?new w(a,l.index):i}function pn(e,t,n,r,i){var s=t.line,o=t.ch,u=e.getLine(s),a=n?1:-1,f=r?M:O;if(i&&u==""){s+=a,u=e.getLine(s);if(!j(e,s))return null;o=n?0:u.length}for(;;){if(i&&u=="")return{from:0,to:0,line:s};var l=a>0?u.length:-1,c=l,h=l;while(o!=l){var p=!1;for(var d=0;d0?0:u.length}}function dn(e,t,n,r,i,s){var o=Bt(t),u=[];(r&&!i||!r&&i)&&n++;var a=!r||!i;for(var f=0;f0?1:-1;var n=e.ace.session.getFoldLine(t);n&&t+r>n.start.row&&t+r0?n.end.row:n.start.row)-t)}var s=t.line,o=e.firstLine(),u=e.lastLine(),a,f,l=s;if(r){while(o<=l&&l<=u&&n>0)p(l),h(l,r)&&n--,l+=r;return new w(l,0)}var d=e.state.vim;if(d.visualLine&&h(s,1,!0)){var v=d.sel.anchor;h(v.line,-1,!0)&&(!i||v.line!=s)&&(s+=1)}var m=c(s);for(l=s;l<=u&&n;l++)h(l,1,!0)&&(!i||c(l)!=m)&&n--;f=new w(l,0),l>u&&!m?m=!0:i=!1;for(l=s;l>o;l--)if(!i||c(l)==m||l==s)if(h(l,-1,!0))break;return a=new w(l,0),{start:a,end:f}}function En(e,t,n,r,i){function s(e){e.pos+e.dir<0||e.pos+e.dir>=e.line.length?e.line=null:e.pos+=e.dir}function o(e,t,n,r){var o=e.getLine(t),u={line:o,ln:t,pos:n,dir:r};if(u.line==="")return{ln:u.ln,pos:u.pos};var a=u.pos;s(u);while(u.line!==null){a=u.pos;if(z(u.line[u.pos])){if(!i)return{ln:u.ln,pos:u.pos+1};s(u);while(u.line!==null){if(!U(u.line[u.pos]))break;a=u.pos,s(u)}return{ln:u.ln,pos:a+1}}s(u)}return{ln:u.ln,pos:a+1}}function u(e,t,n,r){var o=e.getLine(t),u={line:o,ln:t,pos:n,dir:r};if(u.line==="")return{ln:u.ln,pos:u.pos};var a=u.pos;s(u);while(u.line!==null){if(!U(u.line[u.pos])&&!z(u.line[u.pos]))a=u.pos;else if(z(u.line[u.pos]))return i?U(u.line[u.pos+1])?{ln:u.ln,pos:u.pos+1}:{ln:u.ln,pos:a}:{ln:u.ln,pos:a};s(u)}return u.line=o,i&&U(u.line[u.pos])?{ln:u.ln,pos:u.pos}:{ln:u.ln,pos:a}}var a={ln:t.line,pos:t.ch};while(n>0)r<0?a=u(e,a.ln,a.pos,r):a=o(e,a.ln,a.pos,r),n--;return new w(a.ln,a.pos)}function Sn(e,t,n,r){function i(e,t){if(t.pos+t.dir<0||t.pos+t.dir>=t.line.length){t.ln+=t.dir;if(!j(e,t.ln)){t.line=null,t.ln=null,t.pos=null;return}t.line=e.getLine(t.ln),t.pos=t.dir>0?0:t.line.length-1}else t.pos+=t.dir}function s(e,t,n,r){var s=e.getLine(t),o=s==="",u={line:s,ln:t,pos:n,dir:r},a={ln:u.ln,pos:u.pos},f=u.line==="";i(e,u);while(u.line!==null){a.ln=u.ln,a.pos=u.pos;if(u.line===""&&!f)return{ln:u.ln,pos:u.pos};if(o&&u.line!==""&&!U(u.line[u.pos]))return{ln:u.ln,pos:u.pos};z(u.line[u.pos])&&!o&&(u.pos===u.line.length-1||U(u.line[u.pos+1]))&&(o=!0),i(e,u)}var s=e.getLine(a.ln);a.pos=0;for(var l=s.length-1;l>=0;--l)if(!U(s[l])){a.pos=l;break}return a}function o(e,t,n,r){var s=e.getLine(t),o={line:s,ln:t,pos:n,dir:r},u={ln:o.ln,pos:null},a=o.line==="";i(e,o);while(o.line!==null){if(o.line===""&&!a)return u.pos!==null?u:{ln:o.ln,pos:o.pos};if(!(!z(o.line[o.pos])||u.pos===null||o.ln===u.ln&&o.pos+1===u.pos))return u;o.line!==""&&!U(o.line[o.pos])&&(a=!1,u={ln:o.ln,pos:o.pos}),i(e,o)}var s=e.getLine(u.ln);u.pos=0;for(var f=0;f0)r<0?u=o(e,u.ln,u.pos,r):u=s(e,u.ln,u.pos,r),n--;return new w(u.ln,u.pos)}function xn(e,t,n,r){var i=t,s,o,u={"(":/[()]/,")":/[()]/,"[":/[[\]]/,"]":/[[\]]/,"{":/[{}]/,"}":/[{}]/,"<":/[<>]/,">":/[<>]/}[n],a={"(":"(",")":"(","[":"[","]":"[","{":"{","}":"{","<":"<",">":"<"}[n],f=e.getLine(i.line).charAt(i.ch),l=f===a?1:0;s=e.scanForBracket(new w(i.line,i.ch+l),-1,undefined,{bracketRegex:u}),o=e.scanForBracket(new w(i.line,i.ch+l),1,undefined,{bracketRegex:u});if(!s||!o)return null;s=s.pos,o=o.pos;if(s.line==o.line&&s.ch>o.ch||s.line>o.line){var c=s;s=o,o=c}return r?o.ch+=1:s.ch+=1,{start:s,end:o}}function Tn(e,t,n,r){var i=Bt(t),s=e.getLine(i.line),o=s.split(""),u,a,f,l,c=o.indexOf(n);if(i.ch-1&&!u;f--)o[f]==n&&(u=f+1);if(u&&!a)for(f=u,l=o.length;f=t&&e<=n:e==t}function Qn(e){var t=e.ace.renderer;return{top:t.getFirstFullyVisibleRow(),bottom:t.getLastFullyVisibleRow()}}function Gn(e,t,n){if(n=="'"||n=="`")return Z.jumpList.find(e,-1)||new w(0,0);if(n==".")return Yn(e);var r=t.marks[n];return r&&r.find()}function Yn(e){if(e.getLastEditEnd)return e.getLastEditEnd();var t=e.doc.history.done;for(var n=t.length;n--;)if(t[n].changes)return Bt(t[n].changes[0].to)}function nr(e,t,n,r,i,s,o,u,a){function p(){e.operation(function(){while(!f)d(),g();y()})}function d(){var t=e.getRange(s.from(),s.to()),n=t.replace(o,u),r=s.to().line;s.replace(n),c=s.to().line,i+=c-r,h=c":case"":case"":y(r)}return f&&y(r),!0}e.state.vim.exMode=!0;var f=!1,l,c,h;g();if(f){Fn(e,"No matches for "+o.source);return}if(!t){p(),a&&a();return}qn(e,{prefix:jn("span","replace with ",jn("strong",u)," (y/n/a/q/l)"),onKeyDown:b})}function rr(e,t){var n=e.state.vim,r=Z.macroModeState,i=Z.registerController.getRegister("."),s=r.isPlaying,o=r.lastInsertModeChanges;s||(e.off("change",lr),n.insertEnd&&n.insertEnd.clear(),n.insertEnd=null,m.off(e.getInputField(),"keydown",dr)),!s&&n.insertModeRepeat>1&&(vr(e,n,n.insertModeRepeat-1,!0),n.lastEditInputState.repeatOverride=n.insertModeRepeat),delete n.insertModeRepeat,n.insertMode=!1,t||e.setCursor(e.getCursor().line,e.getCursor().ch-1),e.setOption("keyMap","vim"),e.setOption("disableInput",!0),e.toggleOverwrite(!1),i.setText(o.changes.join("")),m.signal(e,"vim-mode-change",{mode:"normal"}),r.isRecording&&ar(r)}function ir(e){S.unshift(e)}function sr(e,t,n,r,i){var s={keys:e,type:t};s[t]=n,s[t+"Args"]=r;for(var o in i)s[o]=i[o];ir(s)}function or(e,t,n,r){var i=Z.registerController.getRegister(r);if(r==":"){i.keyBuffer[0]&&tr.processCommand(e,i.keyBuffer[0]),n.isPlaying=!1;return}var s=i.keyBuffer,o=0;n.isPlaying=!0,n.replaySearchQueries=i.searchQueries.slice(0);for(var u=0;u|<\w+>|./.exec(a),l=f[0],a=a.substring(f.index+l.length),nt.handleKey(e,l,"macro");if(t.insertMode){var c=i.insertModeChanges[o++].changes;Z.macroModeState.lastInsertModeChanges.changes=c,gr(e,c,1),rr(e)}}}n.isPlaying=!1}function ur(e,t){if(e.isPlaying)return;var n=e.latestRegister,r=Z.registerController.getRegister(n);r&&r.pushText(t)}function ar(e){if(e.isPlaying)return;var t=e.latestRegister,n=Z.registerController.getRegister(t);n&&n.pushInsertModeChanges&&n.pushInsertModeChanges(e.lastInsertModeChanges)}function fr(e,t){if(e.isPlaying)return;var n=e.latestRegister,r=Z.registerController.getRegister(n);r&&r.pushSearchQuery&&r.pushSearchQuery(t)}function lr(e,t){var n=Z.macroModeState,r=n.lastInsertModeChanges;if(!n.isPlaying){var i=e.state.vim;while(t){r.expectCursorActivityForChange=!0;if(r.ignoreCount>1)r.ignoreCount--;else if(t.origin=="+input"||t.origin=="paste"||t.origin===undefined){var s=e.listSelections().length;s>1&&(r.ignoreCount=s);var o=t.text.join("\n");r.maybeReset&&(r.changes=[],r.maybeReset=!1);if(o)if(e.state.overwrite&&!/\n/.test(o))r.changes.push([o]);else{if(o.length>1){var u=i&&i.insertEnd&&i.insertEnd.find(),a=e.getCursor();if(u&&u.line==a.line){var f=u.ch-a.ch;f>0&&f",qt(i,r))}else!t.insertMode&&!n&&(t.lastHPos=e.getCursor().ch)}function pr(e,t){this.keyName=e,this.key=t.key,this.ctrlKey=t.ctrlKey,this.altKey=t.altKey,this.metaKey=t.metaKey,this.shiftKey=t.shiftKey}function dr(e){var t=Z.macroModeState,n=t.lastInsertModeChanges,r=m.keyName?m.keyName(e):e.key;if(!r)return;if(r.indexOf("Delete")!=-1||r.indexOf("Backspace")!=-1)n.maybeReset&&(n.changes=[],n.maybeReset=!1),n.changes.push(new pr(r,e))}function vr(e,t,n,r){function u(){s?Et.processAction(e,t,t.lastEditActionCommand):Et.evalInput(e,t)}function a(n){if(i.lastInsertModeChanges.changes.length>0){n=t.lastEditActionCommand?n:1;var r=i.lastInsertModeChanges;gr(e,r.changes,n)}}var i=Z.macroModeState;i.isPlaying=!0;var s=!!t.lastEditActionCommand,o=t.inputState;t.inputState=t.lastEditInputState;if(s&&t.lastEditActionCommand.interlaceInsertRepeat)for(var f=0;f1&&t[0]=="n"&&(t=t.replace("numpad","")),t=yr[t]||t;var i="";n.ctrlKey&&(i+="C-"),n.altKey&&(i+="A-"),(i||t.length>1)&&n.shiftKey&&(i+="S-");if(r&&!r.expectLiteralNext&&t.length==1)if(N.keymap&&t in N.keymap){if(N.remapCtrl!==!1||!i)t=N.keymap[t]}else if(t.charCodeAt(0)>255){var s=n.code&&n.code.slice(-1)||"";n.shiftKey||(s=s.toLowerCase()),s&&(t=s)}return i+=t,i.length>1&&(i="<"+i+">"),i}function Er(e){var t=new e.constructor;return Object.keys(e).forEach(function(n){if(n=="insertEnd")return;var r=e[n];Array.isArray(r)?r=r.slice():r&&typeof r=="object"&&r.constructor!=Object&&(r=Er(r)),t[n]=r}),e.sel&&(t.sel={head:e.sel.head&&Bt(e.sel.head),anchor:e.sel.anchor&&Bt(e.sel.anchor)}),t}function Sr(e,t,n){var r=!1,i=nt.maybeInitVimState_(e),s=i.visualBlock||i.wasInVisualBlock,o=e.ace.inMultiSelectMode;i.wasInVisualBlock&&!o?i.wasInVisualBlock=!1:o&&i.visualBlock&&(i.wasInVisualBlock=!0);if(t==""&&!i.insertMode&&!i.visualMode&&o)e.ace.exitMultiSelectMode();else if(s||!o||e.ace.inVirtualSelectionMode)r=nt.handleKey(e,t,n);else{var u=Er(i),a=i.inputState.changeQueueList||[];e.operation(function(){e.curOp.isVimOp=!0;var s=0;e.ace.forEachSelection(function(){var i=e.ace.selection;e.state.vim.lastHPos=i.$desiredColumn==null?i.lead.column:i.$desiredColumn,e.state.vim.inputState.changeQueue=a[s];var o=e.getCursor("head"),f=e.getCursor("anchor"),l=Ft(o,f)?0:-1,c=Ft(o,f)?-1:0;o=Mt(o,0,l),f=Mt(f,0,c),e.state.vim.sel.head=o,e.state.vim.sel.anchor=f,r=wr(e,t,n),i.$desiredColumn=e.state.vim.lastHPos==-1?null:e.state.vim.lastHPos,e.ace.inVirtualSelectionMode&&(a[s]=e.state.vim.inputState.changeQueue),e.virtualSelectionMode()&&(e.state.vim=Er(u)),s++}),e.curOp.cursorActivity&&!r&&(e.curOp.cursorActivity=!1),i.status=e.state.vim.status,e.state.vim=i,i.inputState.changeQueueList=a,i.inputState.changeQueue=null},!0)}return r&&!i.visualMode&&!i.insert&&i.visualMode!=e.somethingSelected()&&hr(e,i,!0),r}function Tr(e,t){t.off("beforeEndOperation",Tr);var n=t.state.cm.vimCmd;n&&t.execCommand(n.exec?n:n.name,n.args),t.curOp=t.prevOp}var i=e("../range").Range,s=e("../lib/event_emitter").EventEmitter,o=e("../lib/dom"),u=e("../lib/oop"),a=e("../lib/keys"),f=e("../lib/event"),l=e("../search").Search,c=e("../lib/useragent"),h=e("../search_highlight").SearchHighlight,p=e("../commands/multi_select_commands"),d=e("../mode/text").Mode.prototype.tokenRe,v=e("../ext/hardwrap").hardWrap;e("../multi_select");var m=function(e){this.ace=e,this.state={},this.marks={},this.options={},this.$uid=0,this.onChange=this.onChange.bind(this),this.onSelectionChange=this.onSelectionChange.bind(this),this.onBeforeEndOperation=this.onBeforeEndOperation.bind(this),this.ace.on("change",this.onChange),this.ace.on("changeSelection",this.onSelectionChange),this.ace.on("beforeEndOperation",this.onBeforeEndOperation)};m.Pos=function(e,t){if(!(this instanceof w))return new w(e,t);this.line=e,this.ch=t},m.defineOption=function(e,t,n){},m.commands={redo:function(e){e.ace.redo()},undo:function(e){e.ace.undo()},newlineAndIndent:function(e){e.ace.insert("\n")},goLineLeft:function(e){e.ace.selection.moveCursorLineStart()},goLineRight:function(e){e.ace.selection.moveCursorLineEnd()}},m.keyMap={},m.addClass=m.rmClass=function(){},m.e_stop=m.e_preventDefault=f.stopEvent,m.keyName=function(e){var t=a[e.keyCode]||e.key||"";return t.length==1&&(t=t.toUpperCase()),t=f.getModifierString(e).replace(/(^|-)\w/g,function(e){return e.toUpperCase()})+t,t},m.keyMap["default"]=function(e){return function(t){var n=t.ace.commands.commandKeyBinding[e.toLowerCase()];return n&&t.ace.execCommand(n)!==!1}},m.lookupKey=function Nr(e,t,n){t||(t="default"),typeof t=="string"&&(t=m.keyMap[t]||m.keyMap["default"]);var r=typeof t=="function"?t(e):t[e];if(r===!1)return"nothing";if(r==="...")return"multi";if(r!=null&&n(r))return"handled";if(t.fallthrough){if(!Array.isArray(t.fallthrough))return Nr(e,t.fallthrough,n);for(var i=0;i0){a.row+=s,a.column+=a.row==r.row?o:0;continue}!t&&l<=0&&(a.row=n.row,a.column=n.column,l===0&&(a.bias=1))}};var e=function(e,t,n,r){this.cm=e,this.id=t,this.row=n,this.column=r,e.marks[this.id]=this};e.prototype.clear=function(){delete this.cm.marks[this.id]},e.prototype.find=function(){return y(this)},this.setBookmark=function(t,n){var r=new e(this,this.$uid++,t.line,t.ch);if(!n||!n.insertLeft)r.$insertRight=!0;return this.marks[r.id]=r,r},this.moveH=function(e,t){if(t=="char"){var n=this.ace.selection;n.clearSelection(),n.moveCursorBy(0,e)}},this.findPosV=function(e,t,n,r){if(n=="page"){var i=this.ace.renderer,s=i.layerConfig;t*=Math.floor(s.height/s.lineHeight),n="line"}if(n=="line"){var o=this.ace.session.documentToScreenPosition(e.line,e.ch);r!=null&&(o.column=r),o.row+=t,o.row=Math.min(Math.max(0,o.row),this.ace.session.getScreenLength()-1);var u=this.ace.session.screenToDocumentPosition(o.row,o.column);return y(u)}debugger},this.charCoords=function(e,t){if(t=="div"||!t){var n=this.ace.session.documentToScreenPosition(e.line,e.ch);return{left:n.column,top:n.row}}if(t=="local"){var r=this.ace.renderer,n=this.ace.session.documentToScreenPosition(e.line,e.ch),i=r.layerConfig.lineHeight,s=r.layerConfig.characterWidth,o=i*n.row;return{left:n.column*s,top:o,bottom:o+i}}},this.coordsChar=function(e,t){var n=this.ace.renderer;if(t=="local"){var r=Math.max(0,Math.floor(e.top/n.lineHeight)),i=Math.max(0,Math.floor(e.left/n.characterWidth)),s=n.session.screenToDocumentPosition(r,i);return y(s)}if(t=="div")throw"not implemented"},this.getSearchCursor=function(e,t,n){var r=!1,i=!1;e instanceof RegExp&&!e.global&&(r=!e.ignoreCase,e=e.source,i=!0),e=="\\n"&&(e="\n",i=!1);var s=new l;t.ch==undefined&&(t.ch=Number.MAX_VALUE);var o={row:t.line,column:t.ch},u=this,a=null;return{findNext:function(){return this.find(!1)},findPrevious:function(){return this.find(!0)},find:function(t){s.setOptions({needle:e,caseSensitive:r,wrap:!1,backwards:t,regExp:i,start:a||o});var n=s.find(u.ace.session);return a=n,a&&[!a.isEmpty()]},from:function(){return a&&y(a.start)},to:function(){return a&&y(a.end)},replace:function(e){a&&(a.end=u.ace.session.doc.replace(a,e))}}},this.scrollTo=function(e,t){var n=this.ace.renderer,r=n.layerConfig,i=r.maxHeight;i-=(n.$size.scrollerHeight-n.lineHeight)*n.$scrollPastEnd,t!=null&&this.ace.session.setScrollTop(Math.max(0,Math.min(t,i))),e!=null&&this.ace.session.setScrollLeft(Math.max(0,Math.min(e,r.width)))},this.scrollInfo=function(){return 0},this.scrollIntoView=function(e,t){if(e){var n=this.ace.renderer,r={top:0,bottom:t};n.scrollCursorIntoView(g(e),n.lineHeight*2/n.$size.scrollerHeight,r)}},this.getLine=function(e){return this.ace.session.getLine(e)},this.getRange=function(e,t){return this.ace.session.getTextRange(new i(e.line,e.ch,t.line,t.ch))},this.replaceRange=function(e,t,n){n||(n=t);var r=new i(t.line,t.ch,n.line,n.ch);return this.ace.session.$clipRangeToDocument(r),this.ace.session.replace(r,e)},this.replaceSelection=this.replaceSelections=function(e){var t=Array.isArray(e)&&e,n=this.ace.selection;if(this.ace.inVirtualSelectionMode){this.ace.session.replace(n.getRange(),t?e[0]||"":e);return}n.inVirtualSelectionMode=!0;var r=n.rangeList.ranges;r.length||(r=[this.ace.multiSelect.getRange()]);for(var i=r.length;i--;)this.ace.session.replace(r[i],t?e[i]||"":e);n.inVirtualSelectionMode=!1},this.getSelection=function(){return this.ace.getSelectedText()},this.getSelections=function(){return this.listSelections().map(function(e){return this.getRange(e.anchor,e.head)},this)},this.getInputField=function(){return this.ace.textInput.getElement()},this.getWrapperElement=function(){return this.ace.container};var t={indentWithTabs:"useSoftTabs",indentUnit:"tabSize",tabSize:"tabSize",firstLineNumber:"firstLineNumber",readOnly:"readOnly"};this.setOption=function(e,n){this.state[e]=n;switch(e){case"indentWithTabs":e=t[e],n=!n;break;case"keyMap":this.state.$keyMap=n;return;default:e=t[e]}e&&this.ace.setOption(e,n)},this.getOption=function(e){var n,r=t[e];r&&(n=this.ace.getOption(r));switch(e){case"indentWithTabs":return e=t[e],!n;case"keyMap":return this.state.$keyMap||"vim"}return r?n:this.state[e]},this.toggleOverwrite=function(e){return this.state.overwrite=e,this.ace.setOverwrite(e)},this.addOverlay=function(e){if(!this.$searchHighlight||!this.$searchHighlight.session){var t=new h(null,"ace_highlight-marker","text"),n=this.ace.session.addDynamicMarker(t);t.id=n.id,t.session=this.ace.session,t.destroy=function(e){t.session.off("change",t.updateOnChange),t.session.off("changeEditor",t.destroy),t.session.removeMarker(t.id),t.session=null},t.updateOnChange=function(e){var n=e.start.row;n==e.end.row?t.cache[n]=undefined:t.cache.splice(n,t.cache.length)},t.session.on("changeEditor",t.destroy),t.session.on("change",t.updateOnChange)}var r=new RegExp(e.query.source,"gmi");this.$searchHighlight=e.highlight=t,this.$searchHighlight.setRegexp(r),this.ace.renderer.updateBackMarkers()},this.removeOverlay=function(e){this.$searchHighlight&&this.$searchHighlight.session&&this.$searchHighlight.destroy()},this.getScrollInfo=function(){var e=this.ace.renderer,t=e.layerConfig;return{left:e.scrollLeft,top:e.scrollTop,height:t.maxHeight,width:t.width,clientHeight:t.height,clientWidth:t.width}},this.getValue=function(){return this.ace.getValue()},this.setValue=function(e){return this.ace.setValue(e,-1)},this.getTokenTypeAt=function(e){var t=this.ace.session.getTokenAt(e.line,e.ch);return t&&/comment|string/.test(t.type)?"string":""},this.findMatchingBracket=function(e){var t=this.ace.session.findMatchingBracket(g(e));return{to:t&&y(t)}},this.findMatchingTag=function(e){var t=this.ace.session.getMatchingTags(g(e));if(!t)return;return{open:{from:y(t.openTag.start),to:y(t.openTag.end)},close:{from:y(t.closeTag.start),to:y(t.closeTag.end)}}},this.indentLine=function(e,t){t===!0?this.ace.session.indentRows(e,e," "):t===!1&&this.ace.session.outdentRows(new i(e,0,e,0))},this.indexFromPos=function(e){return this.ace.session.doc.positionToIndex(g(e))},this.posFromIndex=function(e){return y(this.ace.session.doc.indexToPosition(e))},this.focus=function(e){return this.ace.textInput.focus()},this.blur=function(e){return this.ace.blur()},this.defaultTextHeight=function(e){return this.ace.renderer.layerConfig.lineHeight},this.scanForBracket=function(e,t,n,r){var i=r.bracketRegex.source,s=/paren|text|operator|tag/;if(t==1)var o=this.ace.session.$findClosingBracket(i.slice(1,2),g(e),s);else{var o=this.ace.session.$findOpeningBracket(i.slice(-2,-1),{row:e.line,column:e.ch+1},s);!o&&r.bracketRegex&&r.bracketRegex.test(this.getLine(e.line)[e.ch-1])&&(o={row:e.line,column:e.ch-1})}return o&&{pos:y(o)}},this.refresh=function(){return this.ace.resize(!0)},this.getMode=function(){return{name:this.getOption("mode")}},this.execCommand=function(e){if(m.commands.hasOwnProperty(e))return m.commands[e](this);if(e=="indentAuto")return this.ace.execCommand("autoindent");console.log(e+" is not implemented")},this.getLineNumber=function(e){var t=this.$lineHandleChanges;if(!t)return null;var n=e.row;for(var r=0;r0)return null;n-=i.end.row-i.start.row}}return n},this.getLineHandle=function(e){return this.$lineHandleChanges||(this.$lineHandleChanges=[]),{text:this.ace.session.getLine(e),row:e}},this.releaseLineHandles=function(){this.$lineHandleChanges=undefined},this.getLastEditEnd=function(){var e=this.ace.session.$undoManager;if(e&&e.$lastDelta)return y(e.$lastDelta.end)}}.call(m.prototype);var b=m.StringStream=function(e,t){this.pos=this.start=0,this.string=e,this.tabSize=t||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0};b.prototype={eol:function(){return this.pos>=this.string.length},sol:function(){return this.pos==this.lineStart},peek:function(){return this.string.charAt(this.pos)||undefined},next:function(){if(this.post},eatSpace:function(){var e=this.pos;while(/[\s\u00a0]/.test(this.string.charAt(this.pos)))++this.pos;return this.pos>e},skipToEnd:function(){this.pos=this.string.length},skipTo:function(e){var t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0},backUp:function(e){this.pos-=e},column:function(){throw"not implemented"},indentation:function(){throw"not implemented"},match:function(e,t,n){if(typeof e!="string"){var s=this.string.slice(this.pos).match(e);return s&&s.index>0?null:(s&&t!==!1&&(this.pos+=s[0].length),s)}var r=function(e){return n?e.toLowerCase():e},i=this.string.substr(this.pos,e.length);if(r(i)==r(e))return t!==!1&&(this.pos+=e.length),!0},current:function(){return this.string.slice(this.start,this.pos)},hideFirstChars:function(e,t){this.lineStart+=e;try{return t()}finally{this.lineStart-=e}}},m.defineExtension=function(e,t){m.prototype[e]=t},o.importCssString(".normal-mode .ace_cursor{\n border: none;\n background-color: rgba(255,0,0,0.5);\n}\n.normal-mode .ace_hidden-cursors .ace_cursor{\n background-color: transparent;\n border: 1px solid red;\n opacity: 0.7\n}\n.ace_dialog {\n position: absolute;\n left: 0; right: 0;\n background: inherit;\n z-index: 15;\n padding: .1em .8em;\n overflow: hidden;\n color: inherit;\n}\n.ace_dialog-top {\n border-bottom: 1px solid #444;\n top: 0;\n}\n.ace_dialog-bottom {\n border-top: 1px solid #444;\n bottom: 0;\n}\n.ace_dialog input {\n border: none;\n outline: none;\n background: transparent;\n width: 20em;\n color: inherit;\n font-family: monospace;\n}","vimMode",!1),function(){function e(e,t,n){var r=e.ace.container,i;return i=r.appendChild(document.createElement("div")),n?i.className="ace_dialog ace_dialog-bottom":i.className="ace_dialog ace_dialog-top",typeof t=="string"?i.innerHTML=t:i.appendChild(t),i}function t(e,t){e.state.currentNotificationClose&&e.state.currentNotificationClose(),e.state.currentNotificationClose=t}m.defineExtension("openDialog",function(n,r,i){function a(e){if(typeof e=="string")f.value=e;else{if(o)return;if(e&&e.type=="blur"&&document.activeElement===f)return;u.state.dialog==s&&(u.state.dialog=null,u.focus()),o=!0,s.remove(),i.onClose&&i.onClose(s);var t=u;t.state.vim&&(t.state.vim.status=null,t.ace._signal("changeStatus"),t.ace.renderer.$loop.schedule(t.ace.renderer.CHANGE_CURSOR))}}if(this.virtualSelectionMode())return;i||(i={}),t(this,null);var s=e(this,n,i.bottom),o=!1,u=this;this.state.dialog=s;var f=s.getElementsByTagName("input")[0],l;if(f)i.value&&(f.value=i.value,i.selectValueOnOpen!==!1&&f.select()),i.onInput&&m.on(f,"input",function(e){i.onInput(e,f.value,a)}),i.onKeyUp&&m.on(f,"keyup",function(e){i.onKeyUp(e,f.value,a)}),m.on(f,"keydown",function(e){if(i&&i.onKeyDown&&i.onKeyDown(e,f.value,a))return;e.keyCode==13&&r(f.value);if(e.keyCode==27||i.closeOnEnter!==!1&&e.keyCode==13)m.e_stop(e),a()}),i.closeOnBlur!==!1&&m.on(f,"blur",a),f.focus();else if(l=s.getElementsByTagName("button")[0])m.on(l,"click",function(){a(),u.focus()}),i.closeOnBlur!==!1&&m.on(l,"blur",a),l.focus();return a}),m.defineExtension("openNotification",function(n,r){function a(){if(s)return;s=!0,clearTimeout(o),i.remove()}if(this.virtualSelectionMode())return;t(this,a);var i=e(this,n,r&&r.bottom),s=!1,o,u=r&&typeof r.duration!="undefined"?r.duration:5e3;return m.on(i,"click",function(e){m.e_preventDefault(e),a()}),u&&(o=setTimeout(a,u)),a})}();var w=m.Pos,S=[{keys:"",type:"keyToKey",toKeys:"h"},{keys:"",type:"keyToKey",toKeys:"l"},{keys:"",type:"keyToKey",toKeys:"k"},{keys:"",type:"keyToKey",toKeys:"j"},{keys:"g",type:"keyToKey",toKeys:"gk"},{keys:"g",type:"keyToKey",toKeys:"gj"},{keys:"",type:"keyToKey",toKeys:"l"},{keys:"",type:"keyToKey",toKeys:"h"},{keys:"",type:"keyToKey",toKeys:"x"},{keys:"",type:"keyToKey",toKeys:"W"},{keys:"",type:"keyToKey",toKeys:"B"},{keys:"",type:"keyToKey",toKeys:"w"},{keys:"",type:"keyToKey",toKeys:"b"},{keys:"",type:"keyToKey",toKeys:"j"},{keys:"",type:"keyToKey",toKeys:"k"},{keys:"",type:"keyToKey",toKeys:""},{keys:"",type:"keyToKey",toKeys:""},{keys:"",type:"keyToKey",toKeys:"",context:"insert"},{keys:"",type:"keyToKey",toKeys:"",context:"insert"},{keys:"",type:"keyToKey",toKeys:""},{keys:"",type:"keyToKey",toKeys:"",context:"insert"},{keys:"s",type:"keyToKey",toKeys:"cl",context:"normal"},{keys:"s",type:"keyToKey",toKeys:"c",context:"visual"},{keys:"S",type:"keyToKey",toKeys:"cc",context:"normal"},{keys:"S",type:"keyToKey",toKeys:"VdO",context:"visual"},{keys:"",type:"keyToKey",toKeys:"0"},{keys:"",type:"keyToKey",toKeys:"$"},{keys:"",type:"keyToKey",toKeys:""},{keys:"",type:"keyToKey",toKeys:""},{keys:"",type:"keyToKey",toKeys:"j^",context:"normal"},{keys:"",type:"keyToKey",toKeys:"i",context:"normal"},{keys:"",type:"action",action:"toggleOverwrite",context:"insert"},{keys:"H",type:"motion",motion:"moveToTopLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"M",type:"motion",motion:"moveToMiddleLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"L",type:"motion",motion:"moveToBottomLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"h",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!1}},{keys:"l",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!0}},{keys:"j",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,linewise:!0}},{keys:"k",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,linewise:!0}},{keys:"gj",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!0}},{keys:"gk",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!1}},{keys:"w",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1}},{keys:"W",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1,bigWord:!0}},{keys:"e",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,inclusive:!0}},{keys:"E",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"b",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1}},{keys:"B",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1,bigWord:!0}},{keys:"ge",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,inclusive:!0}},{keys:"gE",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"{",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!1,toJumplist:!0}},{keys:"}",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!0,toJumplist:!0}},{keys:"(",type:"motion",motion:"moveBySentence",motionArgs:{forward:!1}},{keys:")",type:"motion",motion:"moveBySentence",motionArgs:{forward:!0}},{keys:"",type:"motion",motion:"moveByPage",motionArgs:{forward:!0}},{keys:"",type:"motion",motion:"moveByPage",motionArgs:{forward:!1}},{keys:"",type:"motion",motion:"moveByScroll",motionArgs:{forward:!0,explicitRepeat:!0}},{keys:"",type:"motion",motion:"moveByScroll",motionArgs:{forward:!1,explicitRepeat:!0}},{keys:"gg",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!1,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"G",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!0,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"g$",type:"motion",motion:"moveToEndOfDisplayLine"},{keys:"g^",type:"motion",motion:"moveToStartOfDisplayLine"},{keys:"g0",type:"motion",motion:"moveToStartOfDisplayLine"},{keys:"0",type:"motion",motion:"moveToStartOfLine"},{keys:"^",type:"motion",motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"+",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0}},{keys:"-",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,toFirstChar:!0}},{keys:"_",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0,repeatOffset:-1}},{keys:"$",type:"motion",motion:"moveToEol",motionArgs:{inclusive:!0}},{keys:"%",type:"motion",motion:"moveToMatchedSymbol",motionArgs:{inclusive:!0,toJumplist:!0}},{keys:"f",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"F",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!1}},{keys:"t",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"T",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!1}},{keys:";",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!0}},{keys:",",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!1}},{keys:"'",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0,linewise:!0}},{keys:"`",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0}},{keys:"]`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0}},{keys:"[`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1}},{keys:"]'",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0,linewise:!0}},{keys:"['",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1,linewise:!0}},{keys:"]p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0,matchIndent:!0}},{keys:"[p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0,matchIndent:!0}},{keys:"]",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!0,toJumplist:!0}},{keys:"[",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!1,toJumplist:!0}},{keys:"|",type:"motion",motion:"moveToColumn"},{keys:"o",type:"motion",motion:"moveToOtherHighlightedEnd",context:"visual"},{keys:"O",type:"motion",motion:"moveToOtherHighlightedEnd",motionArgs:{sameLine:!0},context:"visual"},{keys:"d",type:"operator",operator:"delete"},{keys:"y",type:"operator",operator:"yank"},{keys:"c",type:"operator",operator:"change"},{keys:"=",type:"operator",operator:"indentAuto"},{keys:">",type:"operator",operator:"indent",operatorArgs:{indentRight:!0}},{keys:"<",type:"operator",operator:"indent",operatorArgs:{indentRight:!1}},{keys:"g~",type:"operator",operator:"changeCase"},{keys:"gu",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},isEdit:!0},{keys:"gU",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},isEdit:!0},{keys:"n",type:"motion",motion:"findNext",motionArgs:{forward:!0,toJumplist:!0}},{keys:"N",type:"motion",motion:"findNext",motionArgs:{forward:!1,toJumplist:!0}},{keys:"gn",type:"motion",motion:"findAndSelectNextInclusive",motionArgs:{forward:!0}},{keys:"gN",type:"motion",motion:"findAndSelectNextInclusive",motionArgs:{forward:!1}},{keys:"gq",type:"operator",operator:"hardWrap"},{keys:"gw",type:"operator",operator:"hardWrap",operatorArgs:{keepCursor:!0}},{keys:"x",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!0},operatorMotionArgs:{visualLine:!1}},{keys:"X",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!1},operatorMotionArgs:{visualLine:!0}},{keys:"D",type:"operatorMotion",operator:"delete",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"D",type:"operator",operator:"delete",operatorArgs:{linewise:!0},context:"visual"},{keys:"Y",type:"operatorMotion",operator:"yank",motion:"expandToLine",motionArgs:{linewise:!0},context:"normal"},{keys:"Y",type:"operator",operator:"yank",operatorArgs:{linewise:!0},context:"visual"},{keys:"C",type:"operatorMotion",operator:"change",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"C",type:"operator",operator:"change",operatorArgs:{linewise:!0},context:"visual"},{keys:"~",type:"operatorMotion",operator:"changeCase",motion:"moveByCharacters",motionArgs:{forward:!0},operatorArgs:{shouldMoveCursor:!0},context:"normal"},{keys:"~",type:"operator",operator:"changeCase",context:"visual"},{keys:"",type:"operatorMotion",operator:"delete",motion:"moveToStartOfLine",context:"insert"},{keys:"",type:"operatorMotion",operator:"delete",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1},context:"insert"},{keys:"",type:"idle",context:"normal"},{keys:"",type:"action",action:"jumpListWalk",actionArgs:{forward:!0}},{keys:"",type:"action",action:"jumpListWalk",actionArgs:{forward:!1}},{keys:"",type:"action",action:"scroll",actionArgs:{forward:!0,linewise:!0}},{keys:"",type:"action",action:"scroll",actionArgs:{forward:!1,linewise:!0}},{keys:"a",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"charAfter"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"eol"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"endOfSelectedArea"},context:"visual"},{keys:"i",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"inplace"},context:"normal"},{keys:"gi",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"lastEdit"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"firstNonBlank"},context:"normal"},{keys:"gI",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"bol"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"startOfSelectedArea"},context:"visual"},{keys:"o",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!0},context:"normal"},{keys:"O",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!1},context:"normal"},{keys:"v",type:"action",action:"toggleVisualMode"},{keys:"V",type:"action",action:"toggleVisualMode",actionArgs:{linewise:!0}},{keys:"",type:"action",action:"toggleVisualMode",actionArgs:{blockwise:!0}},{keys:"",type:"action",action:"toggleVisualMode",actionArgs:{blockwise:!0}},{keys:"gv",type:"action",action:"reselectLastSelection"},{keys:"J",type:"action",action:"joinLines",isEdit:!0},{keys:"gJ",type:"action",action:"joinLines",actionArgs:{keepSpaces:!0},isEdit:!0},{keys:"p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0}},{keys:"P",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0}},{keys:"r",type:"action",action:"replace",isEdit:!0},{keys:"@",type:"action",action:"replayMacro"},{keys:"q",type:"action",action:"enterMacroRecordMode"},{keys:"R",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{replace:!0},context:"normal"},{keys:"R",type:"operator",operator:"change",operatorArgs:{linewise:!0,fullLine:!0},context:"visual",exitVisualBlock:!0},{keys:"u",type:"action",action:"undo",context:"normal"},{keys:"u",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},context:"visual",isEdit:!0},{keys:"U",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},context:"visual",isEdit:!0},{keys:"",type:"action",action:"redo"},{keys:"m",type:"action",action:"setMark"},{keys:'"',type:"action",action:"setRegister"},{keys:"",type:"action",action:"insertRegister",context:"insert",isEdit:!0},{keys:"",type:"action",action:"oneNormalCommand",context:"insert"},{keys:"zz",type:"action",action:"scrollToCursor",actionArgs:{position:"center"}},{keys:"z.",type:"action",action:"scrollToCursor",actionArgs:{position:"center"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"zt",type:"action",action:"scrollToCursor",actionArgs:{position:"top"}},{keys:"z",type:"action",action:"scrollToCursor",actionArgs:{position:"top"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"zb",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"}},{keys:"z-",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:".",type:"action",action:"repeatLastEdit"},{keys:"",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!0,backtrack:!1}},{keys:"",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!1,backtrack:!1}},{keys:"",type:"action",action:"indent",actionArgs:{indentRight:!0},context:"insert"},{keys:"",type:"action",action:"indent",actionArgs:{indentRight:!1},context:"insert"},{keys:"a",type:"motion",motion:"textObjectManipulation"},{keys:"i",type:"motion",motion:"textObjectManipulation",motionArgs:{textObjectInner:!0}},{keys:"/",type:"search",searchArgs:{forward:!0,querySrc:"prompt",toJumplist:!0}},{keys:"?",type:"search",searchArgs:{forward:!1,querySrc:"prompt",toJumplist:!0}},{keys:"*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"g*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:"g#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:":",type:"ex"}],x=S.length,T=[{name:"colorscheme",shortName:"colo"},{name:"map"},{name:"imap",shortName:"im"},{name:"nmap",shortName:"nm"},{name:"vmap",shortName:"vm"},{name:"omap",shortName:"om"},{name:"noremap",shortName:"no"},{name:"nnoremap",shortName:"nn"},{name:"vnoremap",shortName:"vn"},{name:"inoremap",shortName:"ino"},{name:"onoremap",shortName:"ono"},{name:"unmap"},{name:"mapclear",shortName:"mapc"},{name:"nmapclear",shortName:"nmapc"},{name:"vmapclear",shortName:"vmapc"},{name:"imapclear",shortName:"imapc"},{name:"omapclear",shortName:"omapc"},{name:"write",shortName:"w"},{name:"undo",shortName:"u"},{name:"redo",shortName:"red"},{name:"set",shortName:"se"},{name:"setlocal",shortName:"setl"},{name:"setglobal",shortName:"setg"},{name:"sort",shortName:"sor"},{name:"substitute",shortName:"s",possiblyAsync:!0},{name:"startinsert",shortName:"start"},{name:"nohlsearch",shortName:"noh"},{name:"yank",shortName:"y"},{name:"delmarks",shortName:"delm"},{name:"registers",shortName:"reg",excludeFromCommandHistory:!0},{name:"vglobal",shortName:"v"},{name:"delete",shortName:"d"},{name:"join",shortName:"j"},{name:"normal",shortName:"norm"},{name:"global",shortName:"g"}],N=pt(""),A=/[\d]/,O=[m.isWordChar,function(e){return e&&!m.isWordChar(e)&&!/\s/.test(e)}],M=[function(e){return/\S/.test(e)}],_=["<",">"],D=["-",'"',".",":","_","/","+"],P=/^\w$/,H;try{H=new RegExp("^[\\p{Lu}]$","u")}catch(B){H=/^[A-Z]$/}var X={};V("filetype",undefined,"string",["ft"],function(e,t){if(t===undefined)return;if(e===undefined){var n=t.getOption("mode");return n=="null"?"":n}var n=e==""?"null":e;t.setOption("mode",n)}),V("textwidth",80,"number",["tw"],function(e,t){if(t===undefined)return;if(e===undefined){var n=t.getOption("textwidth");return n}var r=Math.round(e);r>1&&t.setOption("textwidth",r)});var K=function(){function s(s,o,u){function l(n){var r=++t%e,o=i[r];o&&o.clear(),i[r]=s.setBookmark(n)}var a=t%e,f=i[a];if(f){var c=f.find();c&&!jt(c,o)&&l(o)}else l(o);l(u),n=t,r=t-e+1,r<0&&(r=0)}function o(s,o){t+=o,t>n?t=n:t0?1:-1,f,l=s.getCursor();do{t+=a,u=i[(e+t)%e];if(u&&(f=u.find())&&!jt(l,f))break}while(tr)}return u}function u(e,n){var r=t,i=o(e,n);return t=r,i&&i.find()}var e=100,t=-1,n=0,r=0,i=new Array(e);return{cachedCursor:undefined,add:s,find:u,move:o}},Q=function(e){return e?{changes:e.changes,expectCursorActivityForChange:e.expectCursorActivityForChange}:{changes:[],expectCursorActivityForChange:!1}};G.prototype={exitMacroRecordMode:function(){var e=Z.macroModeState;e.onRecordingDone&&e.onRecordingDone(),e.onRecordingDone=undefined,e.isRecording=!1},enterMacroRecordMode:function(e,t){var n=Z.registerController.getRegister(t);if(n){n.clear(),this.latestRegister=t;if(e.openDialog){var r=jn("span",{"class":"cm-vim-message"},"recording @"+t);this.onRecordingDone=e.openDialog(r,null,{bottom:!0})}this.isRecording=!0}}};var Z,tt,nt={enterVimMode:C,leaveVimMode:k,buildKeyMap:function(){},getRegisterController:function(){return Z.registerController},resetVimGlobalState_:et,getVimGlobalState_:function(){return Z},maybeInitVimState_:Y,suppressErrorLogging:!1,InsertModeKey:pr,map:function(e,t,n){tr.map(e,t,n)},unmap:function(e,t){return tr.unmap(e,t)},noremap:function(e,t,n){tr.map(e,t,n,!0)},mapclear:function(e){var t=S.length,n=x,r=S.slice(0,t-n);S=S.slice(t-n);if(e)for(var i=r.length-1;i>=0;i--){var s=r[i];if(e!==s.context)if(s.context)this._mapCommand(s);else{var o=["normal","insert","visual"];for(var u in o)if(o[u]!==e){var a={};for(var f in s)a[f]=s[f];a.context=o[u],this._mapCommand(a)}}}},langmap:ht,vimKeyFromEvent:ct,setOption:$,getOption:J,defineOption:V,defineEx:function(e,t,n){if(!t)t=e;else if(e.indexOf(t)!==0)throw new Error('(Vim.defineEx) "'+t+'" is not a prefix of "'+e+'", command not registered');er[e]=n,tr.commandMap_[t]={name:e,shortName:t,type:"api"}},handleKey:function(e,t,n){var r=this.findKey(e,t,n);if(typeof r=="function")return r()},multiSelectHandleKey:Sr,findKey:function(e,t,n){function i(){var r=Z.macroModeState;if(r.isRecording){if(t=="q")return r.exitMacroRecordMode(),vt(e),!0;n!="mapping"&&ur(r,t)}}function s(){if(t==""){if(r.visualMode)tn(e);else{if(!r.insertMode)return;rr(e)}return vt(e),!0}}function o(){if(s())return!0;r.inputState.keyBuffer.push(t);var n=r.inputState.keyBuffer.join(""),i=t.length==1,o=Et.matchCommand(n,S,r.inputState,"insert"),u=r.inputState.changeQueue;if(o.type=="none")return vt(e),!1;if(o.type=="partial"){o.expectLiteralNext&&(r.expectLiteralNext=!0),tt&&window.clearTimeout(tt),tt=i&&window.setTimeout(function(){r.insertMode&&r.inputState.keyBuffer.length&&vt(e)},J("insertModeEscKeysTimeout"));if(i){var a=e.listSelections();if(!u||u.removed.length!=a.length)u=r.inputState.changeQueue=new mt;u.inserted+=t;for(var f=0;f0||this.motionRepeat.length>0)e=1,this.prefixRepeat.length>0&&(e*=parseInt(this.prefixRepeat.join(""),10)),this.motionRepeat.length>0&&(e*=parseInt(this.motionRepeat.join(""),10));return e},gt.prototype={setText:function(e,t,n){this.keyBuffer=[e||""],this.linewise=!!t,this.blockwise=!!n},pushText:function(e,t){t&&(this.linewise||this.keyBuffer.push("\n"),this.linewise=!0),this.keyBuffer.push(e)},pushInsertModeChanges:function(e){this.insertModeChanges.push(Q(e))},pushSearchQuery:function(e){this.searchQueries.push(e)},clear:function(){this.keyBuffer=[],this.insertModeChanges=[],this.searchQueries=[],this.linewise=!1},toString:function(){return this.keyBuffer.join("")}},bt.prototype={pushText:function(e,t,n,r,i){if(e==="_")return;r&&n.charAt(n.length-1)!=="\n"&&(n+="\n");var s=this.isValidRegister(e)?this.getRegister(e):null;if(!s){switch(t){case"yank":this.registers[0]=new gt(n,r,i);break;case"delete":case"change":n.indexOf("\n")==-1?this.registers["-"]=new gt(n,r):(this.shiftNumericRegisters_(),this.registers[1]=new gt(n,r))}this.unnamedRegister.setText(n,r,i);return}var o=R(e);o?s.pushText(n,r):s.setText(n,r,i),e==="+"&&typeof navigator!="undefined"&&typeof navigator.clipboard!="undefined"&&typeof navigator.clipboard.readText=="function"&&navigator.clipboard.writeText(n),this.unnamedRegister.setText(s.toString(),r)},getRegister:function(e){return this.isValidRegister(e)?(e=e.toLowerCase(),this.registers[e]||(this.registers[e]=new gt),this.registers[e]):this.unnamedRegister},isValidRegister:function(e){return e&&(W(e,D)||P.test(e))},shiftNumericRegisters_:function(){for(var e=9;e>=2;e--)this.registers[e]=this.getRegister(""+(e-1))}},wt.prototype={nextMatch:function(e,t){var n=this.historyBuffer,r=t?-1:1;this.initialPrefix===null&&(this.initialPrefix=e);for(var i=this.iterator+r;t?i>=0:i=n.length)return this.iterator=n.length,this.initialPrefix;if(i<0)return e},pushInput:function(e){var t=this.historyBuffer.indexOf(e);t>-1&&this.historyBuffer.splice(t,1),e.length&&this.historyBuffer.push(e)},reset:function(){this.initialPrefix=null,this.iterator=this.historyBuffer.length}};var Et={matchCommand:function(e,t,n,r){var i=_t(e,t,r,n);if(!i.full&&!i.partial)return{type:"none"};if(!i.full&&i.partial)return{type:"partial",expectLiteralNext:i.partial.length==1&&i.partial[0].keys.slice(-11)==""};var s;for(var o=0;o"||s.keys.slice(-10)==""){var a=Pt(e);if(!a||a.length>1)return{type:"clear"};n.selectedCharacter=a}return{type:"full",command:s}},processCommand:function(e,t,n){t.inputState.repeatOverride=n.repeatOverride;switch(n.type){case"motion":this.processMotion(e,t,n);break;case"operator":this.processOperator(e,t,n);break;case"operatorMotion":this.processOperatorMotion(e,t,n);break;case"action":this.processAction(e,t,n);break;case"search":this.processSearch(e,t,n);break;case"ex":case"keyToEx":this.processEx(e,t,n);break;default:}},processMotion:function(e,t,n){t.inputState.motion=n.motion,t.inputState.motionArgs=Ot(n.motionArgs),this.evalInput(e,t)},processOperator:function(e,t,n){var r=t.inputState;if(r.operator){if(r.operator==n.operator){r.motion="expandToLine",r.motionArgs={linewise:!0},this.evalInput(e,t);return}vt(e)}r.operator=n.operator,r.operatorArgs=Ot(n.operatorArgs),n.keys.length>1&&(r.operatorShortcut=n.keys),n.exitVisualBlock&&(t.visualBlock=!1,Yt(e)),t.visualMode&&this.evalInput(e,t)},processOperatorMotion:function(e,t,n){var r=t.visualMode,i=Ot(n.operatorMotionArgs);i&&r&&i.visualLine&&(t.visualLine=!0),this.processOperator(e,t,n),r||this.processMotion(e,t,n)},processAction:function(e,t,n){var r=t.inputState,i=r.getRepeat(),s=!!i,o=Ot(n.actionArgs)||{};r.selectedCharacter&&(o.selectedCharacter=r.selectedCharacter),n.operator&&this.processOperator(e,t,n),n.motion&&this.processMotion(e,t,n),(n.motion||n.operator)&&this.evalInput(e,t),o.repeat=i||1,o.repeatIsExplicit=s,o.registerName=r.registerName,vt(e),t.lastMotion=null,n.isEdit&&this.recordLastEdit(t,r,n),kt[n.action](e,o,t)},processSearch:function(e,t,n){function a(r,i,s){Z.searchHistoryController.pushInput(r),Z.searchHistoryController.reset();try{Un(e,r,i,s)}catch(o){Fn(e,"Invalid regex: "+r),vt(e);return}Et.processMotion(e,t,{type:"motion",motion:"findNext",motionArgs:{forward:!0,toJumplist:n.searchArgs.toJumplist}})}function f(e){a(e,!0,!0);var t=Z.macroModeState;t.isRecording&&fr(t,e)}function l(t,n,i){var s=ct(t),o,a;s==""||s==""?(o=s==""?!0:!1,a=t.target?t.target.selectionEnd:0,n=Z.searchHistoryController.nextMatch(n,o)||"",i(n),a&&t.target&&(t.target.selectionEnd=t.target.selectionStart=Math.min(a,t.target.value.length))):s&&s!=""&&s!=""&&Z.searchHistoryController.reset();var f;try{f=Un(e,n,!0,!0)}catch(t){}f?e.scrollIntoView(Vn(e,!r,f),30):(Jn(e),e.scrollTo(u.left,u.top))}function c(t,n,r){var i=ct(t);i==""||i==""||i==""||i==""&&n==""?(Z.searchHistoryController.pushInput(n),Z.searchHistoryController.reset(),Un(e,o),Jn(e),e.scrollTo(u.left,u.top),m.e_stop(t),vt(e),r(),e.focus()):i==""||i==""?m.e_stop(t):i==""&&(m.e_stop(t),r(""))}if(!e.getSearchCursor)return;var r=n.searchArgs.forward,i=n.searchArgs.wholeWordOnly;Cn(e).setReversed(!r);var s=r?"/":"?",o=Cn(e).getQuery(),u=e.getScrollInfo();switch(n.searchArgs.querySrc){case"prompt":var h=Z.macroModeState;if(h.isPlaying){var p=h.replaySearchQueries.shift();a(p,!0,!1)}else qn(e,{onClose:f,prefix:s,desc:"(JavaScript regexp)",onKeyUp:l,onKeyDown:c});break;case"wordUnderCursor":var d=on(e,{noSymbol:!0}),v=!0;d||(d=on(e,{noSymbol:!1}),v=!1);if(!d){Fn(e,"No word under cursor"),vt(e);return}var p=e.getLine(d.start.line).substring(d.start.ch,d.end.ch);v&&i?p="\\b"+p+"\\b":p=Wt(p),Z.jumpList.cachedCursor=e.getCursor(),e.setCursor(d.start),a(p,!0,!1)}},processEx:function(e,t,n){function r(t){Z.exCommandHistoryController.pushInput(t),Z.exCommandHistoryController.reset(),tr.processCommand(e,t),e.state.vim&&vt(e)}function i(t,n,r){var i=ct(t),s,o;if(i==""||i==""||i==""||i==""&&n=="")Z.exCommandHistoryController.pushInput(n),Z.exCommandHistoryController.reset(),m.e_stop(t),vt(e),r(),e.focus();i==""||i==""?(m.e_stop(t),s=i==""?!0:!1,o=t.target?t.target.selectionEnd:0,n=Z.exCommandHistoryController.nextMatch(n,s)||"",r(n),o&&t.target&&(t.target.selectionEnd=t.target.selectionStart=Math.min(o,t.target.value.length))):i==""?(m.e_stop(t),r("")):i&&i!=""&&i!=""&&Z.exCommandHistoryController.reset()}n.type=="keyToEx"?tr.processCommand(e,n.exArgs.input):t.visualMode?qn(e,{onClose:r,prefix:":",value:"'<,'>",onKeyDown:i,selectValueOnOpen:!1}):qn(e,{onClose:r,prefix:":",onKeyDown:i})},evalInput:function(e,t){var n=t.inputState,r=n.motion,i=n.motionArgs||{},s=n.operator,o=n.operatorArgs||{},u=n.registerName,a=t.sel,f=Bt(t.visualMode?At(e,a.head):e.getCursor("head")),l=Bt(t.visualMode?At(e,a.anchor):e.getCursor("anchor")),c=Bt(f),h=Bt(l),p,d,v;s&&this.recordLastEdit(t,n),n.repeatOverride!==undefined?v=n.repeatOverride:v=n.getRepeat();if(v>0&&i.explicitRepeat)i.repeatIsExplicit=!0;else if(i.noRepeat||!i.explicitRepeat&&v===0)v=1,i.repeatIsExplicit=!1;n.selectedCharacter&&(i.selectedCharacter=o.selectedCharacter=n.selectedCharacter),i.repeat=v,vt(e);if(r){var m=St[r](e,f,i,t,n);t.lastMotion=St[r];if(!m)return;if(i.toJumplist){!s&&e.ace.curOp!=null&&(e.ace.curOp.command.scrollIntoView="center-animate");var g=Z.jumpList,y=g.cachedCursor;y?(an(e,y,m),delete g.cachedCursor):an(e,f,m)}m instanceof Array?(d=m[0],p=m[1]):p=m,p||(p=Bt(f));if(t.visualMode){if(!t.visualBlock||p.ch!==Infinity)p=At(e,p,c);d&&(d=At(e,d)),d=d||h,a.anchor=d,a.head=p,Yt(e),yn(e,t,"<",Ft(d,p)?d:p),yn(e,t,">",Ft(d,p)?p:d)}else s||(e.ace.curOp&&(e.ace.curOp.vimDialogScroll="center-animate"),p=At(e,p,c),e.setCursor(p.line,p.ch))}if(s){if(o.lastSel){d=h;var b=o.lastSel,S=Math.abs(b.head.line-b.anchor.line),x=Math.abs(b.head.ch-b.anchor.ch);b.visualLine?p=new w(h.line+S,h.ch):b.visualBlock?p=new w(h.line+S,h.ch+x):b.head.line==b.anchor.line?p=new w(h.line,h.ch+x):p=new w(h.line+S,h.ch),t.visualMode=!0,t.visualLine=b.visualLine,t.visualBlock=b.visualBlock,a=t.sel={anchor:d,head:p},Yt(e)}else t.visualMode&&(o.lastSel={anchor:Bt(a.anchor),head:Bt(a.head),visualBlock:t.visualBlock,visualLine:t.visualLine});var T,N,C,k,L;if(t.visualMode){T=It(a.head,a.anchor),N=qt(a.head,a.anchor),C=t.visualLine||o.linewise,k=t.visualBlock?"block":C?"line":"char";var A=E(e,T,N);L=Zt(e,{anchor:A.start,head:A.end},k);if(C){var O=L.ranges;if(k=="block")for(var M=0;Mf&&i.line==f)return vn(e,t,n,r,!0);var l=e.ace.session.getFoldLine(u);return l&&(n.forward?u>l.start.row&&(u=l.end.row+1):u=l.start.row),n.toFirstChar&&(s=sn(e.getLine(u)),r.lastHPos=s),r.lastHSPos=e.charCoords(new w(u,s),"div").left,new w(u,s)},moveByDisplayLines:function(e,t,n,r){var i=t;switch(r.lastMotion){case this.moveByDisplayLines:case this.moveByScroll:case this.moveByLines:case this.moveToColumn:case this.moveToEol:break;default:r.lastHSPos=e.charCoords(i,"div").left}var s=n.repeat,o=e.findPosV(i,n.forward?s:-s,"line",r.lastHSPos);if(o.hitSide)if(n.forward)var u=e.charCoords(o,"div"),a={top:u.top+8,left:r.lastHSPos},o=e.coordsChar(a,"div");else{var f=e.charCoords(new w(e.firstLine(),0),"div");f.left=r.lastHSPos,o=e.coordsChar(f,"div")}return r.lastHPos=o.ch,o},moveByPage:function(e,t,n){var r=t,i=n.repeat;return e.findPosV(r,n.forward?i:-i,"page")},moveByParagraph:function(e,t,n){var r=n.forward?1:-1;return wn(e,t,n.repeat,r)},moveBySentence:function(e,t,n){var r=n.forward?1:-1;return Sn(e,t,n.repeat,r)},moveByScroll:function(e,t,n,r){var i=e.getScrollInfo(),s=null,o=n.repeat;o||(o=i.clientHeight/(2*e.defaultTextHeight()));var u=e.charCoords(t,"local");n.repeat=o,s=St.moveByDisplayLines(e,t,n,r);if(!s)return null;var a=e.charCoords(s,"local");return e.scrollTo(null,i.top+a.top-u.top),s},moveByWords:function(e,t,n){return dn(e,t,n.repeat,!!n.forward,!!n.wordEnd,!!n.bigWord)},moveTillCharacter:function(e,t,n){var r=n.repeat,i=mn(e,r,n.forward,n.selectedCharacter,t),s=n.forward?-1:1;return fn(s,n),i?(i.ch+=s,i):null},moveToCharacter:function(e,t,n){var r=n.repeat;return fn(0,n),mn(e,r,n.forward,n.selectedCharacter,t)||t},moveToSymbol:function(e,t,n){var r=n.repeat;return hn(e,r,n.forward,n.selectedCharacter)||t},moveToColumn:function(e,t,n,r){var i=n.repeat;return r.lastHPos=i-1,r.lastHSPos=e.charCoords(t,"div").left,gn(e,i)},moveToEol:function(e,t,n,r){return vn(e,t,n,r,!1)},moveToFirstNonWhiteSpaceCharacter:function(e,t){var n=t;return new w(n.line,sn(e.getLine(n.line)))},moveToMatchedSymbol:function(e,t){var n=t,r=n.line,i=n.ch,s=e.getLine(r),o;for(;i]/.test(s[i])?/[(){}[\]<>]/:/[(){}[\]]/,f=e.findMatchingBracket(new w(r,i+1),{bracketRegex:a});return f.to}return n},moveToStartOfLine:function(e,t){return new w(t.line,0)},moveToLineOrEdgeOfDocument:function(e,t,n){var r=n.forward?e.lastLine():e.firstLine();return n.repeatIsExplicit&&(r=n.repeat-e.getOption("firstLineNumber")),new w(r,sn(e.getLine(r)))},moveToStartOfDisplayLine:function(e){return e.execCommand("goLineLeft"),e.getCursor()},moveToEndOfDisplayLine:function(e){e.execCommand("goLineRight");var t=e.getCursor();return t.sticky=="before"&&t.ch--,t},textObjectManipulation:function(e,t,n,r){var i={"(":")",")":"(","{":"}","}":"{","[":"]","]":"[","<":">",">":"<"},s={"'":!0,'"':!0,"`":!0},o=n.selectedCharacter;o=="b"?o="(":o=="B"&&(o="{");var u=!n.textObjectInner,a,f;if(i[o]){f=!0,a=xn(e,t,o,u);if(!a){var l=e.getSearchCursor(new RegExp("\\"+o,"g"),t);l.find()&&(a=xn(e,l.from(),o,u))}}else if(s[o])f=!0,a=Tn(e,t,o,u);else if(o==="W"||o==="w"){var c=n.repeat||1;while(c-->0){var h=on(e,{inclusive:u,innerWord:!u,bigWord:o==="W",noSymbol:o==="W",multiline:!0},a&&a.end);h&&(a||(a=h),a.end=h.end)}}else if(o==="p"){a=wn(e,t,n.repeat,0,u),n.linewise=!0;if(r.visualMode)r.visualLine||(r.visualLine=!0);else{var p=r.inputState.operatorArgs;p&&(p.linewise=!0),a.end.line--}}else if(o==="t")a=un(e,t,u);else if(o==="s"){var d=e.getLine(t.line);t.ch>0&&z(d[t.ch])&&(t.ch-=1);var v=En(e,t,n.repeat,1,u),m=En(e,t,n.repeat,-1,u);U(e.getLine(m.line)[m.ch])&&U(e.getLine(v.line)[v.ch-1])&&(m={line:m.line,ch:m.ch+1}),a={start:m,end:v}}return a?e.state.vim.visualMode?Gt(e,a.start,a.end,f):[a.start,a.end]:null},repeatLastCharacterSearch:function(e,t,n){var r=Z.lastCharacterSearch,i=n.repeat,s=n.forward===r.forward,o=(r.increment?1:0)*(s?-1:1);e.moveH(-o,"char"),n.inclusive=s?!0:!1;var u=mn(e,i,s,r.selectedCharacter);return u?(u.ch+=o,u):(e.moveH(o,"char"),t)}},Nt={change:function(e,t,n){var r,i,s=e.state.vim,o=n[0].anchor,u=n[0].head;if(!s.visualMode){i=e.getRange(o,u);var a=s.lastEditInputState||{};if(a.motion=="moveByWords"&&!U(i)){var f=/\s+$/.exec(i);f&&a.motionArgs&&a.motionArgs.forward&&(u=Mt(u,0,-f[0].length),i=i.slice(0,-f[0].length))}t.linewise&&(o=new w(o.line,sn(e.getLine(o.line))),u.line>o.line&&(u=new w(u.line-1,Number.MAX_VALUE))),e.replaceRange("",o,u),r=o}else if(t.fullLine)u.ch=Number.MAX_VALUE,u.line--,e.setSelection(o,u),i=e.getSelection(),e.replaceSelection(""),r=o;else{i=e.getSelection();var l=Tt("",n.length);e.replaceSelections(l),r=It(n[0].head,n[0].anchor)}Z.registerController.pushText(t.registerName,"change",i,t.linewise,n.length>1),kt.enterInsertMode(e,{head:r},e.state.vim)},"delete":function(e,t,n){var r,i,s=e.state.vim;if(!s.visualBlock){var o=n[0].anchor,u=n[0].head;t.linewise&&u.line!=e.firstLine()&&o.line==e.lastLine()&&o.line==u.line-1&&(o.line==e.firstLine()?o.ch=0:o=new w(o.line-1,Ut(e,o.line-1))),i=e.getRange(o,u),e.replaceRange("",o,u),r=o,t.linewise&&(r=St.moveToFirstNonWhiteSpaceCharacter(e,o))}else{i=e.getSelection();var a=Tt("",n.length);e.replaceSelections(a),r=It(n[0].head,n[0].anchor)}return Z.registerController.pushText(t.registerName,"delete",i,t.linewise,s.visualBlock),At(e,r)},indent:function(e,t,n){var r=e.state.vim;if(e.indentMore){var i=r.visualMode?t.repeat:1;for(var s=0;ss&&t.linewise&&u--,t.keepCursor?r:new w(u,0)},changeCase:function(e,t,n,r,i){var s=e.getSelections(),o=[],u=t.toLower;for(var a=0;af.top?(a.line+=(u-f.top)/i,a.line=Math.ceil(a.line),e.setCursor(a),f=e.charCoords(a,"local"),e.scrollTo(null,f.top)):e.scrollTo(null,u);else{var l=u+e.getScrollInfo().clientHeight;l=i.anchor.line?s=Mt(i.head,0,1):s=new w(i.anchor.line,0)}else if(r=="inplace"){if(n.visualMode)return}else r=="lastEdit"&&(s=Yn(e)||s);e.setOption("disableInput",!1),t&&t.replace?(e.toggleOverwrite(!0),e.setOption("keyMap","vim-replace"),m.signal(e,"vim-mode-change",{mode:"replace"})):(e.toggleOverwrite(!1),e.setOption("keyMap","vim-insert"),m.signal(e,"vim-mode-change",{mode:"insert"})),Z.macroModeState.isPlaying||(e.on("change",lr),n.insertEnd&&n.insertEnd.clear(),n.insertEnd=e.setBookmark(s,{insertLeft:!0}),m.on(e.getInputField(),"keydown",dr)),n.visualMode&&tn(e),$t(e,s,o)},toggleVisualMode:function(e,t,n){var r=t.repeat,i=e.getCursor(),s;if(!n.visualMode){n.visualMode=!0,n.visualLine=!!t.linewise,n.visualBlock=!!t.blockwise,s=At(e,new w(i.line,i.ch+r-1));var o=E(e,i,s);n.sel={anchor:o.start,head:o.end},m.signal(e,"vim-mode-change",{mode:"visual",subMode:n.visualLine?"linewise":n.visualBlock?"blockwise":""}),Yt(e),yn(e,n,"<",It(i,s)),yn(e,n,">",qt(i,s))}else n.visualLine^t.linewise||n.visualBlock^t.blockwise?(n.visualLine=!!t.linewise,n.visualBlock=!!t.blockwise,m.signal(e,"vim-mode-change",{mode:"visual",subMode:n.visualLine?"linewise":n.visualBlock?"blockwise":""}),Yt(e)):tn(e)},reselectLastSelection:function(e,t,n){var r=n.lastSelection;n.visualMode&&Qt(e,n);if(r){var i=r.anchorMark.find(),s=r.headMark.find();if(!i||!s)return;n.sel={anchor:i,head:s},n.visualMode=!0,n.visualLine=r.visualLine,n.visualBlock=r.visualBlock,Yt(e),yn(e,n,"<",It(i,s)),yn(e,n,">",qt(i,s)),m.signal(e,"vim-mode-change",{mode:"visual",subMode:n.visualLine?"linewise":n.visualBlock?"blockwise":""})}},joinLines:function(e,t,n){var r,i;if(n.visualMode){r=e.getCursor("anchor"),i=e.getCursor("head");if(Ft(i,r)){var s=i;i=r,r=s}i.ch=Ut(e,i.line)-1}else{var o=Math.max(t.repeat,2);r=e.getCursor(),i=At(e,new w(r.line+o-1,Infinity))}var u=0;for(var a=r.line;a1)var r=Array(t.repeat+1).join(r);var p=i.linewise,d=i.blockwise;if(d){r=r.split("\n"),p&&r.pop();for(var v=0;ve.lastLine()&&e.replaceRange("\n",new w(N,0));var C=Ut(e,N);Ca.length&&(s=a.length),o=new w(i.line,s)}var f=E(e,i,o);i=f.start,o=f.end;if(r=="\n")n.visualMode||e.replaceRange("",i,o),(m.commands.newlineAndIndentContinueComment||m.commands.newlineAndIndent)(e);else{var l=e.getRange(i,o);l=l.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,r),l=l.replace(/[^\n]/g,r);if(n.visualBlock){var c=(new Array(e.getOption("tabSize")+1)).join(" ");l=e.getSelection(),l=l.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,r),l=l.replace(/\t/g,c).replace(/[^\n]/g,r).split("\n"),e.replaceSelections(l)}else e.replaceRange(l,i,o);n.visualMode?(i=Ft(u[0].anchor,u[0].head)?u[0].anchor:u[0].head,e.setCursor(i),tn(e,!1)):e.setCursor(Mt(o,0,-1))}},incrementNumberToken:function(e,t){var n=e.getCursor(),r=e.getLine(n.line),i=/(-?)(?:(0x)([\da-f]+)|(0b|0|)(\d+))/gi,s,o,u,a;while((s=i.exec(r))!==null){o=s.index,u=o+s[0].length;if(n.ch=1)return!0}else e.nextCh===e.reverseSymb&&e.depth--;return!1}},section:{init:function(e){e.curMoveThrough=!0,e.symb=(e.forward?"]":"[")===e.symb?"{":"}"},isComplete:function(e){return e.index===0&&e.nextCh===e.symb}},comment:{isComplete:function(e){var t=e.lastCh==="*"&&e.nextCh==="/";return e.lastCh=e.nextCh,t}},method:{init:function(e){e.symb=e.symb==="m"?"{":"}",e.reverseSymb=e.symb==="{"?"}":"{"},isComplete:function(e){return e.nextCh===e.symb?!0:!1}},preprocess:{init:function(e){e.index=0},isComplete:function(e){if(e.nextCh==="#"){var t=e.lineText.match(/^#(\w+)/)[1];if(t==="endif"){if(e.forward&&e.depth===0)return!0;e.depth++}else if(t==="if"){if(!e.forward&&e.depth===0)return!0;e.depth--}if(t==="else"&&e.depth===0)return!0}return!1}}};V("pcre",!0,"boolean"),Nn.prototype={getQuery:function(){return Z.query},setQuery:function(e){Z.query=e},getOverlay:function(){return this.searchOverlay},setOverlay:function(e){this.searchOverlay=e},isReversed:function(){return Z.isReversed},setReversed:function(e){Z.isReversed=e},getScrollbarAnnotate:function(){return this.annotate},setScrollbarAnnotate:function(e){this.annotate=e}};var _n={"\\n":"\n","\\r":"\r","\\t":" "},Pn={"\\/":"/","\\\\":"\\","\\n":"\n","\\r":"\r","\\t":" ","\\&":"&"},Wn=0,Zn=function(){this.buildCommandMap_()};Zn.prototype={processCommand:function(e,t,n){var r=this;e.operation(function(){e.curOp.isVimOp=!0,r._processCommand(e,t,n)})},_processCommand:function(e,t,n){var r=e.state.vim,i=Z.registerController.getRegister(":"),s=i.toString(),o=new m.StringStream(t);i.setText(t);var u=n||{};u.input=t;try{this.parseInput_(e,o,u)}catch(a){throw Fn(e,a.toString()),a}r.visualMode&&tn(e);var f,l;if(!u.commandName)u.line!==undefined&&(l="move");else{f=this.matchCommand_(u.commandName);if(f){l=f.name,f.excludeFromCommandHistory&&i.setText(s),this.parseCommandArgs_(o,u,f);if(f.type=="exToKey"){ut(e,f.toKeys,f);return}if(f.type=="exToEx"){this.processCommand(e,f.toInput);return}}}if(!l){Fn(e,'Not an editor command ":'+t+'"');return}try{er[l](e,u),(!f||!f.possiblyAsync)&&u.callback&&u.callback()}catch(a){throw Fn(e,a.toString()),a}},parseInput_:function(e,t,n){t.eatWhile(":"),t.eat("%")?(n.line=e.firstLine(),n.lineEnd=e.lastLine()):(n.line=this.parseLineSpec_(e,t),n.line!==undefined&&t.eat(",")&&(n.lineEnd=this.parseLineSpec_(e,t)));if(n.line==undefined)if(e.state.vim.visualMode){var r=Gn(e,e.state.vim,"<");n.selectionLine=r&&r.line,r=Gn(e,e.state.vim,">"),n.selectionLineEnd=r&&r.line}else n.selectionLine=e.getCursor().line;else n.selectionLine=n.line,n.selectionLineEnd=n.lineEnd;var i=t.match(/^(\w+|!!|@@|[!#&*<=>@~])/);return i?n.commandName=i[1]:n.commandName=t.match(/.*/)[0],n},parseLineSpec_:function(e,t){var n=t.match(/^(\d+)/);if(n)return parseInt(n[1],10)-1;switch(t.next()){case".":return this.parseLineSpecOffset_(t,e.getCursor().line);case"$":return this.parseLineSpecOffset_(t,e.lastLine());case"'":var r=t.next(),i=Gn(e,e.state.vim,r);if(!i)throw new Error("Mark not set");return this.parseLineSpecOffset_(t,i.line);case"-":case"+":return t.backUp(1),this.parseLineSpecOffset_(t,e.getCursor().line);default:return t.backUp(1),undefined}},parseLineSpecOffset_:function(e,t){var n=e.match(/^([+-])?(\d+)/);if(n){var r=parseInt(n[2],10);n[1]=="-"?t-=r:t+=r}return t},parseCommandArgs_:function(e,t,n){if(e.eol())return;t.argString=e.match(/.*/)[0];var r=n.argDelimiter||/\s+/,i=zt(t.argString).split(r);i.length&&i[0]&&(t.args=i)},matchCommand_:function(e){for(var t=e.length;t>0;t--){var n=e.substring(0,t);if(this.commandMap_[n]){var r=this.commandMap_[n];if(r.name.indexOf(e)===0)return r}}return null},buildCommandMap_:function(){this.commandMap_={};for(var e=0;e1)return"Invalid arguments";s=a&&"decimal"||f&&"hex"||l&&"octal"}u[2]&&(o=new RegExp(u[2].substr(1,u[2].length-2),r?"i":""))}}function S(e,t){if(n){var i;i=e,e=t,t=i}r&&(e=e.toLowerCase(),t=t.toLowerCase());var o=s&&d.exec(e),u=s&&d.exec(t);return o?(o=parseInt((o[1]+o[2]).toLowerCase(),v),u=parseInt((u[1]+u[2]).toLowerCase(),v),o-u):e=f){Fn(e,"Invalid argument: "+t.argString.substring(i));return}for(var l=0;l<=f-a;l++){var c=String.fromCharCode(a+l);delete n.marks[c]}}else delete n.marks[s]}}},tr=new Zn;V("insertModeEscKeysTimeout",200,"number"),m.Vim=nt;var yr={"return":"CR",backspace:"BS","delete":"Del",esc:"Esc",left:"Left",right:"Right",up:"Up",down:"Down",space:"Space",insert:"Ins",home:"Home",end:"End",pageup:"PageUp",pagedown:"PageDown",enter:"CR"},wr=nt.handleKey.bind(nt);nt.handleKey=function(e,t,n){return e.operation(function(){return wr(e,t,n)},!0)},et(),t.CodeMirror=m;var xr=nt.maybeInitVimState_;t.handler={$id:"ace/keyboard/vim",drawCursor:function(e,t,n,r,s){var u=this.state.vim||{},a=n.characterWidth,f=n.lineHeight,l=t.top,c=t.left;if(!u.insertMode){var h=r.cursor?i.comparePoints(r.cursor,r.start)<=0:s.selection.isBackwards()||s.selection.isEmpty();!h&&c>a&&(c-=a)}!u.insertMode&&u.status&&(f/=2,l+=f),o.translate(e,c,l),o.setStyle(e.style,"width",a+"px"),o.setStyle(e.style,"height",f+"px")},$getDirectionForHighlight:function(e){var t=e.state.cm,n=xr(t);if(!n.insertMode)return e.session.selection.isBackwards()||e.session.selection.isEmpty()},handleKeyboard:function(e,t,n,r,i){var s=e.editor,o=s.state.cm,u=xr(o);if(r==-1)return;u.insertMode||(t==-1?(n.charCodeAt(0)>255&&e.inputKey&&(n=e.inputKey,n&&e.inputHash==4&&(n=n.toUpperCase())),e.inputChar=n):t==4||t==0?e.inputKey==n&&e.inputHash==t&&e.inputChar?(n=e.inputChar,t=-1):(e.inputChar=null,e.inputKey=n,e.inputHash=t):e.inputChar=e.inputKey=null);if(o.state.overwrite&&u.insertMode&&n=="backspace"&&t==0)return{command:"gotoleft"};if(n=="c"&&t==1&&!c.isMac&&s.getCopyText())return s.once("copy",function(){u.insertMode?s.selection.clearSelection():o.operation(function(){tn(o)})}),{command:"null",passEvent:!0};if(n=="esc"&&!u.insertMode&&!u.visualMode&&!o.ace.inMultiSelectMode){var a=Cn(o),f=a.getOverlay();f&&o.removeOverlay(f)}if(t==-1||t&1||t===0&&n.length>1){var l=u.insertMode,h=br(t,n,i||{},u);u.status==null&&(u.status="");var p=Sr(o,h,"user");u=xr(o),p&&u.status!=null?u.status+=h:u.status==null&&(u.status=""),o._signal("changeStatus");if(!p&&(t!=-1||l))return;return{command:"null",passEvent:!p}}},attach:function(e){function n(){var n=xr(t).insertMode;t.ace.renderer.setStyle("normal-mode",!n),e.textInput.setCommandMode(!n),e.renderer.$keepTextAreaAtCursor=n,e.renderer.$blockCursor=!n}e.state||(e.state={});var t=new m(e);e.state.cm=t,e.$vimModeHandler=this,C(t),xr(t).status=null,t.on("vim-command-done",function(){if(t.virtualSelectionMode())return;xr(t).status=null,t.ace._signal("changeStatus"),t.ace.session.markUndoGroup()}),t.on("changeStatus",function(){t.ace.renderer.updateCursor(),t.ace._signal("changeStatus")}),t.on("vim-mode-change",function(){if(t.virtualSelectionMode())return;n(),t._signal("changeStatus")}),n(),e.renderer.$cursorLayer.drawCursor=this.drawCursor.bind(t)},detach:function(e){var t=e.state.cm;k(t),t.destroy(),e.state.cm=null,e.$vimModeHandler=null,e.renderer.$cursorLayer.drawCursor=null,e.renderer.setStyle("normal-mode",!1),e.textInput.setCommandMode(!1),e.renderer.$keepTextAreaAtCursor=!0},getStatusText:function(e){var t=e.state.cm,n=xr(t);if(n.insertMode)return"INSERT";var r="";return n.visualMode&&(r+="VISUAL",n.visualLine&&(r+=" LINE"),n.visualBlock&&(r+=" BLOCK")),n.status&&(r+=(r?" ":"")+n.status),r}},nt.defineOption({name:"wrap",set:function(e,t){t&&t.ace.setOption("wrap",e)},type:"boolean"},!1),nt.defineEx("write","w",function(){console.log(":write is not implemented")}),S.push({keys:"zc",type:"action",action:"fold",actionArgs:{open:!1}},{keys:"zC",type:"action",action:"fold",actionArgs:{open:!1,all:!0}},{keys:"zo",type:"action",action:"fold",actionArgs:{open:!0}},{keys:"zO",type:"action",action:"fold",actionArgs:{open:!0,all:!0}},{keys:"za",type:"action",action:"fold",actionArgs:{toggle:!0}},{keys:"zA",type:"action",action:"fold",actionArgs:{toggle:!0,all:!0}},{keys:"zf",type:"action",action:"fold",actionArgs:{open:!0,all:!0}},{keys:"zd",type:"action",action:"fold",actionArgs:{open:!0,all:!0}},{keys:"",type:"action",action:"aceCommand",actionArgs:{name:"addCursorAbove"}},{keys:"",type:"action",action:"aceCommand",actionArgs:{name:"addCursorBelow"}},{keys:"",type:"action",action:"aceCommand",actionArgs:{name:"addCursorAboveSkipCurrent"}},{keys:"",type:"action",action:"aceCommand",actionArgs:{name:"addCursorBelowSkipCurrent"}},{keys:"",type:"action",action:"aceCommand",actionArgs:{name:"selectMoreBefore"}},{keys:"",type:"action",action:"aceCommand",actionArgs:{name:"selectMoreAfter"}},{keys:"",type:"action",action:"aceCommand",actionArgs:{name:"selectNextBefore"}},{keys:"",type:"action",action:"aceCommand",actionArgs:{name:"selectNextAfter"}}),S.push({keys:"gq",type:"operator",operator:"hardWrap"}),nt.defineOperator("hardWrap",function(e,t,n,r,i){var s=n[0].anchor.line,o=n[0].head.line;return t.linewise&&o--,v(e.ace,{startRow:s,endRow:o}),w(o,0)}),V("textwidth",undefined,"number",["tw"],function(e,t){if(t===undefined)return;if(e===undefined){var n=t.ace.getOption("printMarginColumn");return n}var r=Math.round(e);r>1&&t.ace.setOption("printMarginColumn",r)}),kt.aceCommand=function(e,t,n){e.vimCmd=t,e.ace.inVirtualSelectionMode?e.ace.on("beforeEndOperation",Tr):Tr(null,e.ace)},kt.fold=function(e,t,n){e.ace.execCommand(["toggleFoldWidget","toggleFoldWidget","foldOther","unfoldall"][(t.all?2:0)+(t.open?1:0)])},x=S.length,t.handler.defaultKeymap=S,t.handler.actions=kt,t.Vim=nt}); (function() { - window.require(["ace/keyboard/vim"], function(m) { - if (typeof module == "object" && typeof exports == "object" && module) { - module.exports = m; - } - }); - })(); - \ No newline at end of file diff --git a/src/ui/static/js/editor/keybinding-vscode.js b/src/ui/static/js/editor/keybinding-vscode.js deleted file mode 100644 index 32da4c800..000000000 --- a/src/ui/static/js/editor/keybinding-vscode.js +++ /dev/null @@ -1,8 +0,0 @@ -define("ace/keyboard/vscode",["require","exports","module","ace/keyboard/hash_handler","ace/config"],function(e,t,n){"use strict";var r=e("../keyboard/hash_handler").HashHandler,i=e("../config");t.handler=new r,t.handler.$id="ace/keyboard/vscode",t.handler.addCommands([{name:"toggleWordWrap",exec:function(e){var t=e.session.getUseWrapMode();e.session.setUseWrapMode(!t)},readOnly:!0},{name:"navigateToLastEditLocation",exec:function(e){var t=e.session.getUndoManager().$lastDelta,n=t.action=="remove"?t.start:t.end;e.moveCursorTo(n.row,n.column),e.clearSelection()}},{name:"replaceAll",exec:function(e){e.searchBox?e.searchBox.active===!0&&e.searchBox.replaceOption.checked===!0&&e.searchBox.replaceAll():i.loadModule("ace/ext/searchbox",function(t){t.Search(e,!0)})}},{name:"replaceOne",exec:function(e){e.searchBox?e.searchBox.active===!0&&e.searchBox.replaceOption.checked===!0&&e.searchBox.replace():i.loadModule("ace/ext/searchbox",function(t){t.Search(e,!0)})}},{name:"selectAllMatches",exec:function(e){e.searchBox?e.searchBox.active===!0&&e.searchBox.findAll():i.loadModule("ace/ext/searchbox",function(t){t.Search(e,!1)})}},{name:"toggleFindCaseSensitive",exec:function(e){i.loadModule("ace/ext/searchbox",function(t){t.Search(e,!1);var n=e.searchBox;n.caseSensitiveOption.checked=!n.caseSensitiveOption.checked,n.$syncOptions()})}},{name:"toggleFindInSelection",exec:function(e){i.loadModule("ace/ext/searchbox",function(t){t.Search(e,!1);var n=e.searchBox;n.searchOption.checked=!n.searchRange,n.setSearchRange(n.searchOption.checked&&n.editor.getSelectionRange()),n.$syncOptions()})}},{name:"toggleFindRegex",exec:function(e){i.loadModule("ace/ext/searchbox",function(t){t.Search(e,!1);var n=e.searchBox;n.regExpOption.checked=!n.regExpOption.checked,n.$syncOptions()})}},{name:"toggleFindWholeWord",exec:function(e){i.loadModule("ace/ext/searchbox",function(t){t.Search(e,!1);var n=e.searchBox;n.wholeWordOption.checked=!n.wholeWordOption.checked,n.$syncOptions()})}},{name:"removeSecondaryCursors",exec:function(e){var t=e.selection.ranges;t&&t.length>1?e.selection.toSingleRange(t[t.length-1]):e.selection.clearSelection()}}]),[{bindKey:{mac:"Ctrl-G",win:"Ctrl-G"},name:"gotoline"},{bindKey:{mac:"Command-Shift-L|Command-F2",win:"Ctrl-Shift-L|Ctrl-F2"},name:"findAll"},{bindKey:{mac:"Shift-F8|Shift-Option-F8",win:"Shift-F8|Shift-Alt-F8"},name:"goToPreviousError"},{bindKey:{mac:"F8|Option-F8",win:"F8|Alt-F8"},name:"goToNextError"},{bindKey:{mac:"Command-Shift-P|F1",win:"Ctrl-Shift-P|F1"},name:"openCommandPalette"},{bindKey:{mac:"Shift-Option-Up",win:"Alt-Shift-Up"},name:"copylinesup"},{bindKey:{mac:"Shift-Option-Down",win:"Alt-Shift-Down"},name:"copylinesdown"},{bindKey:{mac:"Command-Shift-K",win:"Ctrl-Shift-K"},name:"removeline"},{bindKey:{mac:"Command-Enter",win:"Ctrl-Enter"},name:"addLineAfter"},{bindKey:{mac:"Command-Shift-Enter",win:"Ctrl-Shift-Enter"},name:"addLineBefore"},{bindKey:{mac:"Command-Shift-\\",win:"Ctrl-Shift-\\"},name:"jumptomatching"},{bindKey:{mac:"Command-]",win:"Ctrl-]"},name:"blockindent"},{bindKey:{mac:"Command-[",win:"Ctrl-["},name:"blockoutdent"},{bindKey:{mac:"Ctrl-PageDown",win:"Alt-PageDown"},name:"pagedown"},{bindKey:{mac:"Ctrl-PageUp",win:"Alt-PageUp"},name:"pageup"},{bindKey:{mac:"Shift-Option-A",win:"Shift-Alt-A"},name:"toggleBlockComment"},{bindKey:{mac:"Option-Z",win:"Alt-Z"},name:"toggleWordWrap"},{bindKey:{mac:"Command-G",win:"F3|Ctrl-K Ctrl-D"},name:"findnext"},{bindKey:{mac:"Command-Shift-G",win:"Shift-F3"},name:"findprevious"},{bindKey:{mac:"Option-Enter",win:"Alt-Enter"},name:"selectAllMatches"},{bindKey:{mac:"Command-D",win:"Ctrl-D"},name:"selectMoreAfter"},{bindKey:{mac:"Command-K Command-D",win:"Ctrl-K Ctrl-D"},name:"selectOrFindNext"},{bindKey:{mac:"Shift-Option-I",win:"Shift-Alt-I"},name:"splitSelectionIntoLines"},{bindKey:{mac:"Command-K M",win:"Ctrl-K M"},name:"modeSelect"},{bindKey:{mac:"Command-Option-[",win:"Ctrl-Shift-["},name:"toggleFoldWidget"},{bindKey:{mac:"Command-Option-]",win:"Ctrl-Shift-]"},name:"toggleFoldWidget"},{bindKey:{mac:"Command-K Command-0",win:"Ctrl-K Ctrl-0"},name:"foldall"},{bindKey:{mac:"Command-K Command-J",win:"Ctrl-K Ctrl-J"},name:"unfoldall"},{bindKey:{mac:"Command-K Command-1",win:"Ctrl-K Ctrl-1"},name:"foldOther"},{bindKey:{mac:"Command-K Command-Q",win:"Ctrl-K Ctrl-Q"},name:"navigateToLastEditLocation"},{bindKey:{mac:"Command-K Command-R|Command-K Command-S",win:"Ctrl-K Ctrl-R|Ctrl-K Ctrl-S"},name:"showKeyboardShortcuts"},{bindKey:{mac:"Command-K Command-X",win:"Ctrl-K Ctrl-X"},name:"trimTrailingSpace"},{bindKey:{mac:"Shift-Down|Command-Shift-Down",win:"Shift-Down|Ctrl-Shift-Down"},name:"selectdown"},{bindKey:{mac:"Shift-Up|Command-Shift-Up",win:"Shift-Up|Ctrl-Shift-Up"},name:"selectup"},{bindKey:{mac:"Command-Alt-Enter",win:"Ctrl-Alt-Enter"},name:"replaceAll"},{bindKey:{mac:"Command-Shift-1",win:"Ctrl-Shift-1"},name:"replaceOne"},{bindKey:{mac:"Option-C",win:"Alt-C"},name:"toggleFindCaseSensitive"},{bindKey:{mac:"Option-L",win:"Alt-L"},name:"toggleFindInSelection"},{bindKey:{mac:"Option-R",win:"Alt-R"},name:"toggleFindRegex"},{bindKey:{mac:"Option-W",win:"Alt-W"},name:"toggleFindWholeWord"},{bindKey:{mac:"Command-L",win:"Ctrl-L"},name:"expandtoline"},{bindKey:{mac:"Shift-Esc",win:"Shift-Esc"},name:"removeSecondaryCursors"}].forEach(function(e){var n=t.handler.commands[e.name];n&&(n.bindKey=e.bindKey),t.handler.bindKey(e.bindKey,n||e.name)})}); (function() { - window.require(["ace/keyboard/vscode"], function(m) { - if (typeof module == "object" && typeof exports == "object" && module) { - module.exports = m; - } - }); - })(); - \ No newline at end of file diff --git a/src/ui/static/js/editor/mode-text.js b/src/ui/static/js/editor/mode-text.js deleted file mode 100644 index fa24e3be6..000000000 --- a/src/ui/static/js/editor/mode-text.js +++ /dev/null @@ -1,8 +0,0 @@ -; (function() { - window.require(["ace/mode/text"], function(m) { - if (typeof module == "object" && typeof exports == "object" && module) { - module.exports = m; - } - }); - })(); - \ No newline at end of file diff --git a/src/ui/static/js/editor/theme-dawn.js b/src/ui/static/js/editor/theme-dawn.js deleted file mode 100644 index ee13e6626..000000000 --- a/src/ui/static/js/editor/theme-dawn.js +++ /dev/null @@ -1,8 +0,0 @@ -define("ace/theme/dawn-css",["require","exports","module"],function(e,t,n){n.exports='.ace-dawn .ace_gutter {\n background: #ebebeb;\n color: #333\n}\n\n.ace-dawn .ace_print-margin {\n width: 1px;\n background: #e8e8e8\n}\n\n.ace-dawn {\n background-color: #F9F9F9;\n color: #080808\n}\n\n.ace-dawn .ace_cursor {\n color: #000000\n}\n\n.ace-dawn .ace_marker-layer .ace_selection {\n background: rgba(39, 95, 255, 0.30)\n}\n\n.ace-dawn.ace_multiselect .ace_selection.ace_start {\n box-shadow: 0 0 3px 0px #F9F9F9;\n}\n\n.ace-dawn .ace_marker-layer .ace_step {\n background: rgb(255, 255, 0)\n}\n\n.ace-dawn .ace_marker-layer .ace_bracket {\n margin: -1px 0 0 -1px;\n border: 1px solid rgba(75, 75, 126, 0.50)\n}\n\n.ace-dawn .ace_marker-layer .ace_active-line {\n background: rgba(36, 99, 180, 0.12)\n}\n\n.ace-dawn .ace_gutter-active-line {\n background-color : #dcdcdc\n}\n\n.ace-dawn .ace_marker-layer .ace_selected-word {\n border: 1px solid rgba(39, 95, 255, 0.30)\n}\n\n.ace-dawn .ace_invisible {\n color: rgba(75, 75, 126, 0.50)\n}\n\n.ace-dawn .ace_keyword,\n.ace-dawn .ace_meta {\n color: #794938\n}\n\n.ace-dawn .ace_constant,\n.ace-dawn .ace_constant.ace_character,\n.ace-dawn .ace_constant.ace_character.ace_escape,\n.ace-dawn .ace_constant.ace_other {\n color: #811F24\n}\n\n.ace-dawn .ace_invalid.ace_illegal {\n text-decoration: underline;\n font-style: italic;\n color: #F8F8F8;\n background-color: #B52A1D\n}\n\n.ace-dawn .ace_invalid.ace_deprecated {\n text-decoration: underline;\n font-style: italic;\n color: #B52A1D\n}\n\n.ace-dawn .ace_support {\n color: #691C97\n}\n\n.ace-dawn .ace_support.ace_constant {\n color: #B4371F\n}\n\n.ace-dawn .ace_fold {\n background-color: #794938;\n border-color: #080808\n}\n\n.ace-dawn .ace_list,\n.ace-dawn .ace_markup.ace_list,\n.ace-dawn .ace_support.ace_function {\n color: #693A17\n}\n\n.ace-dawn .ace_storage {\n font-style: italic;\n color: #A71D5D\n}\n\n.ace-dawn .ace_string {\n color: #0B6125\n}\n\n.ace-dawn .ace_string.ace_regexp {\n color: #CF5628\n}\n\n.ace-dawn .ace_comment {\n font-style: italic;\n color: #5A525F\n}\n\n.ace-dawn .ace_heading,\n.ace-dawn .ace_markup.ace_heading {\n color: #19356D\n}\n\n.ace-dawn .ace_variable {\n color: #234A97\n}\n\n.ace-dawn .ace_indent-guide {\n background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYLh/5+x/AAizA4hxNNsZAAAAAElFTkSuQmCC) right repeat-y\n}\n\n.ace-dawn .ace_indent-guide-active {\n background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAZSURBVHjaYvj///9/hivKyv8BAAAA//8DACLqBhbvk+/eAAAAAElFTkSuQmCC") right repeat-y;\n} \n'}),define("ace/theme/dawn",["require","exports","module","ace/theme/dawn-css","ace/lib/dom"],function(e,t,n){t.isDark=!1,t.cssClass="ace-dawn",t.cssText=e("./dawn-css");var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass,!1)}); (function() { - window.require(["ace/theme/dawn"], function(m) { - if (typeof module == "object" && typeof exports == "object" && module) { - module.exports = m; - } - }); - })(); - \ No newline at end of file diff --git a/src/ui/static/js/editor/theme-dracula.js b/src/ui/static/js/editor/theme-dracula.js deleted file mode 100644 index 12b0992c4..000000000 --- a/src/ui/static/js/editor/theme-dracula.js +++ /dev/null @@ -1,8 +0,0 @@ -define("ace/theme/dracula-css",["require","exports","module"],function(e,t,n){n.exports='/*\n * Copyright \u00a9 2017 Zeno Rocha \n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \u201cSoftware\u201d), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \u201cAS IS\u201d, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\n.ace-dracula .ace_gutter {\n background: #282a36;\n color: rgb(144,145,148)\n}\n\n.ace-dracula .ace_print-margin {\n width: 1px;\n background: #44475a\n}\n\n.ace-dracula {\n background-color: #282a36;\n color: #f8f8f2\n}\n\n.ace-dracula .ace_cursor {\n color: #f8f8f0\n}\n\n.ace-dracula .ace_marker-layer .ace_selection {\n background: #44475a\n}\n\n.ace-dracula.ace_multiselect .ace_selection.ace_start {\n box-shadow: 0 0 3px 0px #282a36;\n border-radius: 2px\n}\n\n.ace-dracula .ace_marker-layer .ace_step {\n background: rgb(198, 219, 174)\n}\n\n.ace-dracula .ace_marker-layer .ace_bracket {\n margin: -1px 0 0 -1px;\n border: 1px solid #a29709\n}\n\n.ace-dracula .ace_marker-layer .ace_active-line {\n background: #44475a\n}\n\n.ace-dracula .ace_gutter-active-line {\n background-color: #44475a\n}\n\n.ace-dracula .ace_marker-layer .ace_selected-word {\n box-shadow: 0px 0px 0px 1px #a29709;\n border-radius: 3px;\n}\n\n.ace-dracula .ace_fold {\n background-color: #50fa7b;\n border-color: #f8f8f2\n}\n\n.ace-dracula .ace_keyword {\n color: #ff79c6\n}\n\n.ace-dracula .ace_constant.ace_language {\n color: #bd93f9\n}\n\n.ace-dracula .ace_constant.ace_numeric {\n color: #bd93f9\n}\n\n.ace-dracula .ace_constant.ace_character {\n color: #bd93f9\n}\n\n.ace-dracula .ace_constant.ace_character.ace_escape {\n color: #ff79c6\n}\n\n.ace-dracula .ace_constant.ace_other {\n color: #bd93f9\n}\n\n.ace-dracula .ace_support.ace_function {\n color: #8be9fd\n}\n\n.ace-dracula .ace_support.ace_constant {\n color: #6be5fd\n}\n\n.ace-dracula .ace_support.ace_class {\n font-style: italic;\n color: #66d9ef\n}\n\n.ace-dracula .ace_support.ace_type {\n font-style: italic;\n color: #66d9ef\n}\n\n.ace-dracula .ace_storage {\n color: #ff79c6\n}\n\n.ace-dracula .ace_storage.ace_type {\n font-style: italic;\n color: #8be9fd\n}\n\n.ace-dracula .ace_invalid {\n color: #F8F8F0;\n background-color: #ff79c6\n}\n\n.ace-dracula .ace_invalid.ace_deprecated {\n color: #F8F8F0;\n background-color: #bd93f9\n}\n\n.ace-dracula .ace_string {\n color: #f1fa8c\n}\n\n.ace-dracula .ace_comment {\n color: #6272a4\n}\n\n.ace-dracula .ace_variable {\n color: #50fa7b\n}\n\n.ace-dracula .ace_variable.ace_parameter {\n font-style: italic;\n color: #ffb86c\n}\n\n.ace-dracula .ace_entity.ace_other.ace_attribute-name {\n color: #50fa7b\n}\n\n.ace-dracula .ace_entity.ace_name.ace_function {\n color: #50fa7b\n}\n\n.ace-dracula .ace_entity.ace_name.ace_tag {\n color: #ff79c6\n}\n.ace-dracula .ace_invisible {\n color: #626680;\n}\n\n.ace-dracula .ace_indent-guide {\n background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYHB3d/8PAAOIAdULw8qMAAAAAElFTkSuQmCC) right repeat-y\n}\n\n.ace-dracula .ace_indent-guide-active {\n background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACAQMAAACjTyRkAAAABlBMVEUAAADCwsK76u2xAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjYGBoAAAAhACBGFbxzQAAAABJRU5ErkJggg==") right repeat-y;\n}\n'}),define("ace/theme/dracula",["require","exports","module","ace/theme/dracula-css","ace/lib/dom"],function(e,t,n){t.isDark=!0,t.cssClass="ace-dracula",t.cssText=e("./dracula-css"),t.$selectionColorConflict=!0;var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass,!1)}); (function() { - window.require(["ace/theme/dracula"], function(m) { - if (typeof module == "object" && typeof exports == "object" && module) { - module.exports = m; - } - }); - })(); - \ No newline at end of file diff --git a/src/ui/static/js/editor/worker-base.js b/src/ui/static/js/editor/worker-base.js deleted file mode 100644 index 8cf43553c..000000000 --- a/src/ui/static/js/editor/worker-base.js +++ /dev/null @@ -1 +0,0 @@ -"no use strict";!function(e){function t(e,t){var n=e,r="";while(n){var i=t[n];if(typeof i=="string")return i+r;if(i)return i.location.replace(/\/*$/,"/")+(r||i.main||i.name);if(i===!1)return"";var s=n.lastIndexOf("/");if(s===-1)break;r=n.substr(s)+r,n=n.slice(0,s)}return e}if(typeof e.window!="undefined"&&e.document)return;if(e.require&&e.define)return;e.console||(e.console=function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},e.console.error=e.console.warn=e.console.log=e.console.trace=e.console),e.window=e,e.ace=e,e.onerror=function(e,t,n,r,i){postMessage({type:"error",data:{message:e,data:i&&i.data,file:t,line:n,col:r,stack:i&&i.stack}})},e.normalizeModule=function(t,n){if(n.indexOf("!")!==-1){var r=n.split("!");return e.normalizeModule(t,r[0])+"!"+e.normalizeModule(t,r[1])}if(n.charAt(0)=="."){var i=t.split("/").slice(0,-1).join("/");n=(i?i+"/":"")+n;while(n.indexOf(".")!==-1&&s!=n){var s=n;n=n.replace(/^\.\//,"").replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return n},e.require=function(r,i){i||(i=r,r=null);if(!i.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");i=e.normalizeModule(r,i);var s=e.require.modules[i];if(s)return s.initialized||(s.initialized=!0,s.exports=s.factory().exports),s.exports;if(!e.require.tlns)return console.log("unable to load "+i);var o=t(i,e.require.tlns);return o.slice(-3)!=".js"&&(o+=".js"),e.require.id=i,e.require.modules[i]={},importScripts(o),e.require(r,i)},e.require.modules={},e.require.tlns={},e.define=function(t,n,r){arguments.length==2?(r=n,typeof t!="string"&&(n=t,t=e.require.id)):arguments.length==1&&(r=t,n=[],t=e.require.id);if(typeof r!="function"){e.require.modules[t]={exports:r,initialized:!0};return}n.length||(n=["require","exports","module"]);var i=function(n){return e.require(t,n)};e.require.modules[t]={exports:{},factory:function(){var e=this,t=r.apply(this,n.slice(0,r.length).map(function(t){switch(t){case"require":return i;case"exports":return e.exports;case"module":return e;default:return i(t)}}));return t&&(e.exports=t),e}}},e.define.amd={},e.require.tlns={},e.initBaseUrls=function(t){for(var n in t)this.require.tlns[n]=t[n]},e.initSender=function(){var n=e.require("ace/lib/event_emitter").EventEmitter,r=e.require("ace/lib/oop"),i=function(){};return function(){r.implement(this,n),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(i.prototype),new i};var n=e.main=null,r=e.sender=null;e.onmessage=function(t){var i=t.data;if(i.event&&r)r._signal(i.event,i.data);else if(i.command)if(n[i.command])n[i.command].apply(n,i.args);else{if(!e[i.command])throw new Error("Unknown command:"+i.command);e[i.command].apply(e,i.args)}else if(i.init){e.initBaseUrls(i.tlns),r=e.sender=e.initSender();var s=this.require(i.module)[i.classname];n=e.main=new s(r)}}}(this),define("ace/lib/oop",[],function(e,t,n){"use strict";t.inherits=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})},t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/apply_delta",[],function(e,t,n){"use strict";function r(e,t){throw console.log("Invalid Delta:",e),"Invalid Delta: "+t}function i(e,t){return t.row>=0&&t.row=0&&t.column<=e[t.row].length}function s(e,t){t.action!="insert"&&t.action!="remove"&&r(t,"delta.action must be 'insert' or 'remove'"),t.lines instanceof Array||r(t,"delta.lines must be an Array"),(!t.start||!t.end)&&r(t,"delta.start/end must be an present");var n=t.start;i(e,t.start)||r(t,"delta.start must be contained in document");var s=t.end;t.action=="remove"&&!i(e,s)&&r(t,"delta.end must contained in document for 'remove' actions");var o=s.row-n.row,u=s.column-(o==0?n.column:0);(o!=t.lines.length-1||t.lines[o].length!=u)&&r(t,"delta.range must match delta lines")}t.applyDelta=function(e,t,n){var r=t.start.row,i=t.start.column,s=e[r]||"";switch(t.action){case"insert":var o=t.lines;if(o.length===1)e[r]=s.substring(0,i)+t.lines[0]+s.substring(i);else{var u=[r,1].concat(t.lines);e.splice.apply(e,u),e[r]=s.substring(0,i)+e[r],e[r+t.lines.length-1]+=s.substring(i)}break;case"remove":var a=t.end.column,f=t.end.row;r===f?e[r]=s.substring(0,i)+s.substring(a):e.splice(r,f-r+1,s.substring(0,i)+e[f].substring(a))}}}),define("ace/lib/event_emitter",[],function(e,t,n){"use strict";var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s),n=n.slice();for(var o=0;o ["+this.end.row+"/"+this.end.column+"]"},e.prototype.contains=function(e,t){return this.compare(e,t)==0},e.prototype.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},e.prototype.comparePoint=function(e){return this.compare(e.row,e.column)},e.prototype.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},e.prototype.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},e.prototype.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},e.prototype.isStart=function(e,t){return this.start.row==e&&this.start.column==t},e.prototype.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},e.prototype.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},e.prototype.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},e.prototype.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},e.prototype.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},e.prototype.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?tthis.end.column?1:0:ethis.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},e.prototype.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},e.prototype.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},e.prototype.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},e.prototype.clipRows=function(t,n){if(this.end.row>n)var r={row:n+1,column:0};else if(this.end.rown)var i={row:n+1,column:0};else if(this.start.rowthis.row)return;var t=u(e,{row:this.row,column:this.column},this.$insertRight);this.setPosition(t.row,t.column,!0)},e.prototype.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._signal("change",{old:i,value:r})},e.prototype.detach=function(){this.document.off("change",this.$onChange)},e.prototype.attach=function(e){this.document=e||this.document,this.document.on("change",this.$onChange)},e.prototype.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n},e}();s.prototype.$insertRight=!1,r.implement(s.prototype,i),t.Anchor=s}),define("ace/document",[],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./apply_delta").applyDelta,s=e("./lib/event_emitter").EventEmitter,o=e("./range").Range,u=e("./anchor").Anchor,a=function(){function e(e){this.$lines=[""],e.length===0?this.$lines=[""]:Array.isArray(e)?this.insertMergedLines({row:0,column:0},e):this.insert({row:0,column:0},e)}return e.prototype.setValue=function(e){var t=this.getLength()-1;this.remove(new o(0,0,t,this.getLine(t).length)),this.insert({row:0,column:0},e||"")},e.prototype.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},e.prototype.createAnchor=function(e,t){return new u(this,e,t)},e.prototype.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n",this._signal("changeNewLineMode")},e.prototype.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},e.prototype.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e,this._signal("changeNewLineMode")},e.prototype.getNewLineMode=function(){return this.$newLineMode},e.prototype.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},e.prototype.getLine=function(e){return this.$lines[e]||""},e.prototype.getLines=function(e,t){return this.$lines.slice(e,t+1)},e.prototype.getAllLines=function(){return this.getLines(0,this.getLength())},e.prototype.getLength=function(){return this.$lines.length},e.prototype.getTextRange=function(e){return this.getLinesForRange(e).join(this.getNewLineCharacter())},e.prototype.getLinesForRange=function(e){var t;if(e.start.row===e.end.row)t=[this.getLine(e.start.row).substring(e.start.column,e.end.column)];else{t=this.getLines(e.start.row,e.end.row),t[0]=(t[0]||"").substring(e.start.column);var n=t.length-1;e.end.row-e.start.row==n&&(t[n]=t[n].substring(0,e.end.column))}return t},e.prototype.insertLines=function(e,t){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(e,t)},e.prototype.removeLines=function(e,t){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(e,t)},e.prototype.insertNewLine=function(e){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(e,["",""])},e.prototype.insert=function(e,t){return this.getLength()<=1&&this.$detectNewLine(t),this.insertMergedLines(e,this.$split(t))},e.prototype.insertInLine=function(e,t){var n=this.clippedPos(e.row,e.column),r=this.pos(e.row,e.column+t.length);return this.applyDelta({start:n,end:r,action:"insert",lines:[t]},!0),this.clonePos(r)},e.prototype.clippedPos=function(e,t){var n=this.getLength();e===undefined?e=n:e<0?e=0:e>=n&&(e=n-1,t=undefined);var r=this.getLine(e);return t==undefined&&(t=r.length),t=Math.min(Math.max(t,0),r.length),{row:e,column:t}},e.prototype.clonePos=function(e){return{row:e.row,column:e.column}},e.prototype.pos=function(e,t){return{row:e,column:t}},e.prototype.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):(e.row=Math.max(0,e.row),e.column=Math.min(Math.max(e.column,0),this.getLine(e.row).length)),e},e.prototype.insertFullLines=function(e,t){e=Math.min(Math.max(e,0),this.getLength());var n=0;e0,r=t=0&&this.applyDelta({start:this.pos(e,this.getLine(e).length),end:this.pos(e+1,0),action:"remove",lines:["",""]})},e.prototype.replace=function(e,t){e instanceof o||(e=o.fromPoints(e.start,e.end));if(t.length===0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);var n;return t?n=this.insert(e.start,t):n=e.start,n},e.prototype.applyDeltas=function(e){for(var t=0;t=0;t--)this.revertDelta(e[t])},e.prototype.applyDelta=function(e,t){var n=e.action=="insert";if(n?e.lines.length<=1&&!e.lines[0]:!o.comparePoints(e.start,e.end))return;n&&e.lines.length>2e4?this.$splitAndapplyLargeDelta(e,2e4):(i(this.$lines,e,t),this._signal("change",e))},e.prototype.$safeApplyDelta=function(e){var t=this.$lines.length;(e.action=="remove"&&e.start.row0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n65535?2:1}}),define("ace/worker/mirror",[],function(e,t,n){"use strict";var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){var r=e.data;if(r[0].start)t.applyDeltas(r);else for(var i=0;i=t.$lines.length)throw u=new Error("Invalid delta"),u.data={path:s.$path,linesLength:t.$lines.length,start:o.start,end:o.end},u;t.applyDelta(o,!0)}if(s.$timeout)return n.schedule(s.$timeout);s.onUpdate()})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){},this.isPending=function(){return this.deferredUpdate.isPending()}}).call(s.prototype)}) \ No newline at end of file diff --git a/src/ui/static/js/editor/worker-coffee.js b/src/ui/static/js/editor/worker-coffee.js deleted file mode 100644 index ecb626122..000000000 --- a/src/ui/static/js/editor/worker-coffee.js +++ /dev/null @@ -1 +0,0 @@ -"no use strict";!function(e){function t(e,t){var n=e,r="";while(n){var i=t[n];if(typeof i=="string")return i+r;if(i)return i.location.replace(/\/*$/,"/")+(r||i.main||i.name);if(i===!1)return"";var s=n.lastIndexOf("/");if(s===-1)break;r=n.substr(s)+r,n=n.slice(0,s)}return e}if(typeof e.window!="undefined"&&e.document)return;if(e.require&&e.define)return;e.console||(e.console=function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},e.console.error=e.console.warn=e.console.log=e.console.trace=e.console),e.window=e,e.ace=e,e.onerror=function(e,t,n,r,i){postMessage({type:"error",data:{message:e,data:i&&i.data,file:t,line:n,col:r,stack:i&&i.stack}})},e.normalizeModule=function(t,n){if(n.indexOf("!")!==-1){var r=n.split("!");return e.normalizeModule(t,r[0])+"!"+e.normalizeModule(t,r[1])}if(n.charAt(0)=="."){var i=t.split("/").slice(0,-1).join("/");n=(i?i+"/":"")+n;while(n.indexOf(".")!==-1&&s!=n){var s=n;n=n.replace(/^\.\//,"").replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return n},e.require=function(r,i){i||(i=r,r=null);if(!i.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");i=e.normalizeModule(r,i);var s=e.require.modules[i];if(s)return s.initialized||(s.initialized=!0,s.exports=s.factory().exports),s.exports;if(!e.require.tlns)return console.log("unable to load "+i);var o=t(i,e.require.tlns);return o.slice(-3)!=".js"&&(o+=".js"),e.require.id=i,e.require.modules[i]={},importScripts(o),e.require(r,i)},e.require.modules={},e.require.tlns={},e.define=function(t,n,r){arguments.length==2?(r=n,typeof t!="string"&&(n=t,t=e.require.id)):arguments.length==1&&(r=t,n=[],t=e.require.id);if(typeof r!="function"){e.require.modules[t]={exports:r,initialized:!0};return}n.length||(n=["require","exports","module"]);var i=function(n){return e.require(t,n)};e.require.modules[t]={exports:{},factory:function(){var e=this,t=r.apply(this,n.slice(0,r.length).map(function(t){switch(t){case"require":return i;case"exports":return e.exports;case"module":return e;default:return i(t)}}));return t&&(e.exports=t),e}}},e.define.amd={},e.require.tlns={},e.initBaseUrls=function(t){for(var n in t)this.require.tlns[n]=t[n]},e.initSender=function(){var n=e.require("ace/lib/event_emitter").EventEmitter,r=e.require("ace/lib/oop"),i=function(){};return function(){r.implement(this,n),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(i.prototype),new i};var n=e.main=null,r=e.sender=null;e.onmessage=function(t){var i=t.data;if(i.event&&r)r._signal(i.event,i.data);else if(i.command)if(n[i.command])n[i.command].apply(n,i.args);else{if(!e[i.command])throw new Error("Unknown command:"+i.command);e[i.command].apply(e,i.args)}else if(i.init){e.initBaseUrls(i.tlns),r=e.sender=e.initSender();var s=this.require(i.module)[i.classname];n=e.main=new s(r)}}}(this),define("ace/lib/oop",[],function(e,t,n){"use strict";t.inherits=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})},t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/apply_delta",[],function(e,t,n){"use strict";function r(e,t){throw console.log("Invalid Delta:",e),"Invalid Delta: "+t}function i(e,t){return t.row>=0&&t.row=0&&t.column<=e[t.row].length}function s(e,t){t.action!="insert"&&t.action!="remove"&&r(t,"delta.action must be 'insert' or 'remove'"),t.lines instanceof Array||r(t,"delta.lines must be an Array"),(!t.start||!t.end)&&r(t,"delta.start/end must be an present");var n=t.start;i(e,t.start)||r(t,"delta.start must be contained in document");var s=t.end;t.action=="remove"&&!i(e,s)&&r(t,"delta.end must contained in document for 'remove' actions");var o=s.row-n.row,u=s.column-(o==0?n.column:0);(o!=t.lines.length-1||t.lines[o].length!=u)&&r(t,"delta.range must match delta lines")}t.applyDelta=function(e,t,n){var r=t.start.row,i=t.start.column,s=e[r]||"";switch(t.action){case"insert":var o=t.lines;if(o.length===1)e[r]=s.substring(0,i)+t.lines[0]+s.substring(i);else{var u=[r,1].concat(t.lines);e.splice.apply(e,u),e[r]=s.substring(0,i)+e[r],e[r+t.lines.length-1]+=s.substring(i)}break;case"remove":var a=t.end.column,f=t.end.row;r===f?e[r]=s.substring(0,i)+s.substring(a):e.splice(r,f-r+1,s.substring(0,i)+e[f].substring(a))}}}),define("ace/lib/event_emitter",[],function(e,t,n){"use strict";var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s),n=n.slice();for(var o=0;o ["+this.end.row+"/"+this.end.column+"]"},e.prototype.contains=function(e,t){return this.compare(e,t)==0},e.prototype.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},e.prototype.comparePoint=function(e){return this.compare(e.row,e.column)},e.prototype.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},e.prototype.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},e.prototype.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},e.prototype.isStart=function(e,t){return this.start.row==e&&this.start.column==t},e.prototype.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},e.prototype.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},e.prototype.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},e.prototype.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},e.prototype.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},e.prototype.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?tthis.end.column?1:0:ethis.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},e.prototype.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},e.prototype.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},e.prototype.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},e.prototype.clipRows=function(t,n){if(this.end.row>n)var r={row:n+1,column:0};else if(this.end.rown)var i={row:n+1,column:0};else if(this.start.rowthis.row)return;var t=u(e,{row:this.row,column:this.column},this.$insertRight);this.setPosition(t.row,t.column,!0)},e.prototype.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._signal("change",{old:i,value:r})},e.prototype.detach=function(){this.document.off("change",this.$onChange)},e.prototype.attach=function(e){this.document=e||this.document,this.document.on("change",this.$onChange)},e.prototype.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n},e}();s.prototype.$insertRight=!1,r.implement(s.prototype,i),t.Anchor=s}),define("ace/document",[],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./apply_delta").applyDelta,s=e("./lib/event_emitter").EventEmitter,o=e("./range").Range,u=e("./anchor").Anchor,a=function(){function e(e){this.$lines=[""],e.length===0?this.$lines=[""]:Array.isArray(e)?this.insertMergedLines({row:0,column:0},e):this.insert({row:0,column:0},e)}return e.prototype.setValue=function(e){var t=this.getLength()-1;this.remove(new o(0,0,t,this.getLine(t).length)),this.insert({row:0,column:0},e||"")},e.prototype.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},e.prototype.createAnchor=function(e,t){return new u(this,e,t)},e.prototype.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n",this._signal("changeNewLineMode")},e.prototype.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},e.prototype.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e,this._signal("changeNewLineMode")},e.prototype.getNewLineMode=function(){return this.$newLineMode},e.prototype.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},e.prototype.getLine=function(e){return this.$lines[e]||""},e.prototype.getLines=function(e,t){return this.$lines.slice(e,t+1)},e.prototype.getAllLines=function(){return this.getLines(0,this.getLength())},e.prototype.getLength=function(){return this.$lines.length},e.prototype.getTextRange=function(e){return this.getLinesForRange(e).join(this.getNewLineCharacter())},e.prototype.getLinesForRange=function(e){var t;if(e.start.row===e.end.row)t=[this.getLine(e.start.row).substring(e.start.column,e.end.column)];else{t=this.getLines(e.start.row,e.end.row),t[0]=(t[0]||"").substring(e.start.column);var n=t.length-1;e.end.row-e.start.row==n&&(t[n]=t[n].substring(0,e.end.column))}return t},e.prototype.insertLines=function(e,t){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(e,t)},e.prototype.removeLines=function(e,t){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(e,t)},e.prototype.insertNewLine=function(e){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(e,["",""])},e.prototype.insert=function(e,t){return this.getLength()<=1&&this.$detectNewLine(t),this.insertMergedLines(e,this.$split(t))},e.prototype.insertInLine=function(e,t){var n=this.clippedPos(e.row,e.column),r=this.pos(e.row,e.column+t.length);return this.applyDelta({start:n,end:r,action:"insert",lines:[t]},!0),this.clonePos(r)},e.prototype.clippedPos=function(e,t){var n=this.getLength();e===undefined?e=n:e<0?e=0:e>=n&&(e=n-1,t=undefined);var r=this.getLine(e);return t==undefined&&(t=r.length),t=Math.min(Math.max(t,0),r.length),{row:e,column:t}},e.prototype.clonePos=function(e){return{row:e.row,column:e.column}},e.prototype.pos=function(e,t){return{row:e,column:t}},e.prototype.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):(e.row=Math.max(0,e.row),e.column=Math.min(Math.max(e.column,0),this.getLine(e.row).length)),e},e.prototype.insertFullLines=function(e,t){e=Math.min(Math.max(e,0),this.getLength());var n=0;e0,r=t=0&&this.applyDelta({start:this.pos(e,this.getLine(e).length),end:this.pos(e+1,0),action:"remove",lines:["",""]})},e.prototype.replace=function(e,t){e instanceof o||(e=o.fromPoints(e.start,e.end));if(t.length===0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);var n;return t?n=this.insert(e.start,t):n=e.start,n},e.prototype.applyDeltas=function(e){for(var t=0;t=0;t--)this.revertDelta(e[t])},e.prototype.applyDelta=function(e,t){var n=e.action=="insert";if(n?e.lines.length<=1&&!e.lines[0]:!o.comparePoints(e.start,e.end))return;n&&e.lines.length>2e4?this.$splitAndapplyLargeDelta(e,2e4):(i(this.$lines,e,t),this._signal("change",e))},e.prototype.$safeApplyDelta=function(e){var t=this.$lines.length;(e.action=="remove"&&e.start.row0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n65535?2:1}}),define("ace/worker/mirror",[],function(e,t,n){"use strict";var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){var r=e.data;if(r[0].start)t.applyDeltas(r);else for(var i=0;i=t.$lines.length)throw u=new Error("Invalid delta"),u.data={path:s.$path,linesLength:t.$lines.length,start:o.start,end:o.end},u;t.applyDelta(o,!0)}if(s.$timeout)return n.schedule(s.$timeout);s.onUpdate()})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){},this.isPending=function(){return this.deferredUpdate.isPending()}}).call(s.prototype)}),define("ace/mode/coffee/coffee",[],function(require,exports,module){function define(e){module.exports=e()}function _toArray(e){return Array.isArray(e)?e:Array.from(e)}function _possibleConstructorReturn(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _toConsumableArray(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t=6"},directories:{lib:"./lib/coffeescript"},main:"./lib/coffeescript/index",browser:"./lib/coffeescript/browser",bin:{coffee:"./bin/coffee",cake:"./bin/cake"},files:["bin","lib","register.js","repl.js"],scripts:{test:"node ./bin/cake test","test-harmony":"node --harmony ./bin/cake test"},homepage:"http://coffeescript.org",bugs:"https://github.com/jashkenas/coffeescript/issues",repository:{type:"git",url:"git://github.com/jashkenas/coffeescript.git"},devDependencies:{"babel-core":"~6.26.0","babel-preset-babili":"~0.1.4","babel-preset-env":"~1.6.1","babel-preset-minify":"^0.3.0",codemirror:"^5.32.0",docco:"~0.8.0","highlight.js":"~9.12.0",jison:">=0.4.18","markdown-it":"~8.4.0",underscore:"~1.8.3",webpack:"~3.10.0"},dependencies:{}}}(),require["./helpers"]=function(){var e={};return function(){var t,n,r,i,s,o,u,a;e.starts=function(e,t,n){return t===e.substr(n,t.length)},e.ends=function(e,t,n){var r;return r=t.length,t===e.substr(e.length-r-(n||0),r)},e.repeat=u=function(e,t){var n;for(n="";0>>=1,e+=e;return n},e.compact=function(e){var t,n,r,i;for(i=[],t=0,r=e.length;to)return s.returnOnNegativeLevel?void 0:i.call(this,c,n);n+=1}return n-1}},{key:"removeLeadingNewlines",value:function(){var t,n,r,i,s,o,u,a,f;for(u=this.tokens,t=n=0,s=u.length;n=s&&s>o;i=0<=o?++s:--s)if(null!=f[i]&&("string"==typeof f[i]&&(f[i]=[f[i]]),u=this.tag(n+i+r),0>t.call(f[i],u)))return-1;return n+i+r-1}},{key:"looksObjectish",value:function(n){var r,i;return-1!==this.indexOfTag(n,"@",null,":")||-1!==this.indexOfTag(n,null,":")||(i=this.indexOfTag(n,f),-1!==i&&(r=null,this.detectEnd(i+1,function(e){var n;return n=e[0],0<=t.call(a,n)},function(e,t){return r=t}),":"===this.tag(r+1)))}},{key:"findTagsBackwards",value:function(n,r){var i,s,o,u,l,c,h;for(i=[];0<=n&&(i.length||(u=this.tag(n),0>t.call(r,u))&&((l=this.tag(n),0>t.call(f,l))||this.tokens[n].generated)&&(c=this.tag(n),0>t.call(v,c)));)(s=this.tag(n),0<=t.call(a,s))&&i.push(this.tag(n)),(o=this.tag(n),0<=t.call(f,o))&&i.length&&i.pop(),n-=1;return h=this.tag(n),0<=t.call(r,h)}},{key:"addImplicitBracesAndParens",value:function(){var n,r;return n=[],r=null,this.scanTokens(function(e,o,u){var d=this,m=_slicedToArray(e,1),g,y,w,E,S,x,T,N,C,k,L,A,O,M,_,D,P,H,B,j,F,I,q,R,U,z,W,X,V,$,J,K,Q;Q=m[0];var G=B=0"!==H&&"->"!==H&&"["!==H&&"("!==H&&","!==H&&"{"!==H&&"ELSE"!==H&&"="!==H)for(;T()||C()&&":"!==H;)T()?g():y();return N()&&n.pop(),n.push([Q,o]),w(1)}if(0<=t.call(f,Q))return n.push([Q,o]),w(1);if(0<=t.call(a,Q)){for(;x();)T()?g():C()?y():n.pop();r=n.pop()}if(S=function(){var n,r,i,s;return(i=d.findTagsBackwards(o,["FOR"])&&d.findTagsBackwards(o,["FORIN","FOROF","FORFROM"]),n=i||d.findTagsBackwards(o,["WHILE","UNTIL","LOOP","LEADING_WHEN"]),!!n)&&(r=!1,s=e[2].first_line,d.detectEnd(o,function(e){var n;return n=e[0],0<=t.call(v,n)},function(e,t){var n=u[t-1]||[],i=_slicedToArray(n,3),o;return H=i[0],o=i[2].first_line,r=s===o&&("->"===H||"=>"===H)},{returnOnNegativeLevel:!0}),r)},(0<=t.call(h,Q)&&e.spaced||"?"===Q&&0t.call(a,e):return r[1];case"@"!==this.tag(o-2):return o-2;default:return o-1}}.call(this),K=0>=q||(F=this.tag(q-1),0<=t.call(v,F))||u[q-1].newLine,X()){var tt=X(),nt=_slicedToArray(tt,2);if(W=nt[0],U=nt[1],("{"===W||"INDENT"===W&&"{"===this.tag(U-1))&&(K||","===this.tag(q-1)||"{"===this.tag(q-1)))return w(1)}return J(q,!!K),w(2)}if(0<=t.call(v,Q))for(O=n.length-1;0<=O&&(z=n[O],!!k(z));O+=-1)A(z)&&(z[2].sameLine=!1);if(M="OUTDENT"===H||B.newLine,0<=t.call(c,Q)||0<=t.call(i,Q)&&M||(".."===Q||"..."===Q)&&this.findTagsBackwards(o,["INDEX_START"]))for(;x();){var rt=X(),it=_slicedToArray(rt,3);W=it[0],U=it[1];var st=it[2];if(R=st.sameLine,K=st.startsLine,T()&&","!==H||","===H&&"TERMINATOR"===Q&&null==_)g();else if(C()&&R&&"TERMINATOR"!==Q&&":"!==H&&("POST_IF"!==Q&&"FOR"!==Q&&"WHILE"!==Q&&"UNTIL"!==Q||!K||!E(o+1)))y();else{if(!C()||"TERMINATOR"!==Q||","===H||!!K&&!!this.looksObjectish(o+1))break;y()}}if(","===Q&&!this.looksObjectish(o+1)&&C()&&"FOROF"!==(I=this.tag(o+2))&&"FORIN"!==I&&("TERMINATOR"!==_||!this.looksObjectish(o+2)))for(P="OUTDENT"===_?1:0;C();)y(o+P);return w(1)})}},{key:"enforceValidCSXAttributes",value:function(){return this.scanTokens(function(e,t,n){var r,i;return e.csxColon&&(r=n[t+1],"STRING_START"!==(i=r[0])&&"STRING"!==i&&"("!==i&&N("expected wrapped or quoted JSX attribute",r[2])),1})}},{key:"rescueStowawayComments",value:function(){var n,r,i;return n=function(e,t,n,r){return"TERMINATOR"!==n[t][0]&&n[r](b("TERMINATOR","\n",n[t])),n[r](b("JS","",n[t],e))},i=function(e,r,i){var s,u,a,f,l,c,h;for(u=r;u!==i.length&&(l=i[u][0],0<=t.call(o,l));)u++;if(u===i.length||(c=i[u][0],0<=t.call(o,c)))return u=i.length-1,n(e,u,i,"push"),1;for(h=e.comments,a=0,f=h.length;at.call(i,r)))return this.tokens.splice(s,0,b("(","(",this.tokens[s])),this.tokens.splice(n+1,0,b(")",")",this.tokens[n]))},s=null,this.scanTokens(function(e,t){var i,o;return"do"===e[1]?(s=t,i=t+1,"PARAM_START"===this.tag(t+1)&&(i=null,this.detectEnd(t+1,function(e,t){return"PARAM_END"===this.tag(t-1)},function(e,t){return i=t})),null==i||"->"!==(o=this.tag(i))&&"=>"!==o||"INDENT"!==this.tag(i+1))?1:(this.detectEnd(i+1,r,n),2):1})}},{key:"normalizeLines",value:function(){var n=this,r,s,o,a,f,l,c,h,p;return p=f=h=null,c=null,l=null,a=[],o=function(e,n){var r,s,o,a;return";"!==e[1]&&(r=e[0],0<=t.call(g,r))&&!("TERMINATOR"===e[0]&&(s=this.tag(n+1),0<=t.call(u,s)))&&("ELSE"!==e[0]||"THEN"===p&&!l&&!c)&&("CATCH"!==(o=e[0])&&"FINALLY"!==o||"->"!==p&&"=>"!==p)||(a=e[0],0<=t.call(i,a))&&(this.tokens[n-1].newLine||"OUTDENT"===this.tokens[n-1][0])},r=function(e,t){return"ELSE"===e[0]&&"THEN"===p&&a.pop(),this.tokens.splice(","===this.tag(t-1)?t-1:t,0,h)},s=function(e,t){var r,i,s;if(s=a.length,0"===E||"=>"===E)&&this.findTagsBackwards(n,["IF","WHILE","FOR","UNTIL","SWITCH","WHEN","LEADING_WHEN","[","INDEX_START"])&&!this.findTagsBackwards(n,["THEN","..","..."]),"TERMINATOR"===E){if("ELSE"===this.tag(n+1)&&"OUTDENT"!==this.tag(n-1))return i.splice.apply(i,[n,1].concat(_toConsumableArray(this.indentation()))),1;if(b=this.tag(n+1),0<=t.call(u,b))return i.splice(n,1),0}if("CATCH"===E)for(m=g=1;2>=g;m=++g)if("OUTDENT"===(w=this.tag(n+m))||"TERMINATOR"===w||"FINALLY"===w)return i.splice.apply(i,[n+m,0].concat(_toConsumableArray(this.indentation()))),2+m;if("->"!==E&&"=>"!==E||!(","===this.tag(n+1)||"."===this.tag(n+1)&&e.newLine)){if(0<=t.call(y,E)&&"INDENT"!==this.tag(n+1)&&("ELSE"!==E||"IF"!==this.tag(n+1))&&!v){p=E;var T=this.indentation(i[n]),N=_slicedToArray(T,2);return f=N[0],h=N[1],"THEN"===p&&(f.fromThen=!0),"THEN"===E&&(c=this.findTagsBackwards(n,["LEADING_WHEN"])&&"IF"===this.tag(n+1),l=this.findTagsBackwards(n,["IF"])&&"IF"===this.tag(n+1)),"THEN"===E&&this.findTagsBackwards(n,["IF"])&&a.push(n),"ELSE"===E&&"OUTDENT"!==this.tag(n-1)&&(n=s(i,n)),i.splice(n+1,0,f),this.detectEnd(n+2,o,r),"THEN"===E&&i.splice(n,1),1}return 1}var S=this.indentation(i[n]),x=_slicedToArray(S,2);return f=x[0],h=x[1],i.splice(n+1,0,f,h),1})}},{key:"tagPostfixConditionals",value:function(){var n,r,i;return i=null,r=function(e,n){var r=_slicedToArray(e,1),i,s;s=r[0];var o=_slicedToArray(this.tokens[n-1],1);return i=o[0],"TERMINATOR"===s||"INDENT"===s&&0>t.call(y,i)},n=function(e){if("INDENT"!==e[0]||e.generated&&!e.fromThen)return i[0]="POST_"+i[0]},this.scanTokens(function(e,t){return"IF"===e[0]?(i=e,this.detectEnd(t+1,r,n),1):1})}},{key:"indentation",value:function(t){var n,r;return n=["INDENT",2],r=["OUTDENT",2],t?(n.generated=r.generated=!0,n.origin=r.origin=t):n.explicit=r.explicit=!0,[n,r]}},{key:"tag",value:function(t){var n;return null==(n=this.tokens[t])?void 0:n[0]}}]),e}();return e.prototype.generate=b,e}.call(this),r=[["(",")"],["[","]"],["{","}"],["INDENT","OUTDENT"],["CALL_START","CALL_END"],["PARAM_START","PARAM_END"],["INDEX_START","INDEX_END"],["STRING_START","STRING_END"],["REGEX_START","REGEX_END"]],e.INVERSES=d={},f=[],a=[],w=0,S=r.length;w","=>","[","(","{","--","++"],p=["+","-"],c=["POST_IF","FOR","WHILE","UNTIL","WHEN","BY","LOOP","TERMINATOR"],y=["ELSE","->","=>","TRY","FINALLY","THEN"],g=["TERMINATOR","CATCH","FINALLY","ELSE","OUTDENT","LEADING_WHEN"],v=["TERMINATOR","INDENT","OUTDENT"],i=[".","?.","::","?::"],s=["IF","TRY","FINALLY","CATCH","CLASS","SWITCH"],o=["(",")","[","]","{","}",".","..","...",",","=","++","--","?","AS","AWAIT","CALL_START","CALL_END","DEFAULT","ELSE","EXTENDS","EXPORT","FORIN","FOROF","FORFROM","IMPORT","INDENT","INDEX_SOAK","LEADING_WHEN","OUTDENT","PARAM_END","REGEX_START","REGEX_END","RETURN","STRING_END","THROW","UNARY","YIELD"].concat(p.concat(c.concat(i.concat(s))))}.call(this),{exports:e}.exports}(),require["./lexer"]=function(){var e={};return function(){var t=[].indexOf,n=[].slice,r=require("./rewriter"),i,s,o,u,a,f,l,c,h,p,d,v,m,g,y,b,w,E,S,x,T,N,C,k,L,A,O,M,_,D,P,H,B,j,F,I,q,R,U,z,W,X,V,$,J,K,Q,G,Y,Z,et,tt,nt,rt,it,st,ot,ut,at,ft,lt,ct,ht,pt,dt,vt,mt,gt,yt,bt,wt,Et,St,xt;K=r.Rewriter,O=r.INVERSES;var Tt=require("./helpers");dt=Tt.count,St=Tt.starts,pt=Tt.compact,Et=Tt.repeat,vt=Tt.invertLiterate,wt=Tt.merge,ht=Tt.attachCommentsToNode,bt=Tt.locationDataToString,xt=Tt.throwSyntaxError,e.Lexer=B=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"tokenize",value:function(t){var n=1this.indent){if(a)return this.indebt=l-this.indent,this.suppressNewlines(),i.length;if(!this.tokens.length)return this.baseIndent=this.indent=l,this.indentLiteral=u,i.length;r=l-this.indent+this.outdebt,this.token("INDENT",r,i.length-l,l),this.indents.push(r),this.ends.push({tag:"OUTDENT"}),this.outdebt=this.indebt=0,this.indent=l,this.indentLiteral=u}else lt.call(h,v))))return 0;var E=l,S=_slicedToArray(E,3);return f=S[0],a=S[1],i=S[2],c=this.token("CSX_TAG",a,1,a.length),this.token("CALL_START","("),this.token("[","["),this.ends.push({tag:"/>",origin:c,name:a}),this.csxDepth++,a.length+1}if(s=this.atCSXTag()){if("/>"===this.chunk.slice(0,2))return this.pair("/>"),this.token("]","]",0,2),this.token("CALL_END",")",0,2),this.csxDepth--,2;if("{"===u)return":"===d?(b=this.token("(","("),this.csxObjAttribute[this.csxDepth]=!1):(b=this.token("{","{"),this.csxObjAttribute[this.csxDepth]=!0),this.ends.push({tag:"}",origin:b}),1;if(">"===u){this.pair("/>"),c=this.token("]","]"),this.token(",",",");var x=this.matchWithInterpolations(A,">",""})}),l=g.exec(this.chunk.slice(o))||m.exec(this.chunk.slice(o)),l&&l[1]===s.name||this.error("expected corresponding CSX closing tag for "+s.name,s.origin[2]),r=o+s.name.length,">"!==this.chunk[r]&&this.error("missing closing > after tag name",{offset:r,length:1}),this.token("CALL_END",")",o,s.name.length+1),this.csxDepth--,r+1}return 0}return this.atCSXTag(1)?"}"===u?(this.pair(u),this.csxObjAttribute[this.csxDepth]?(this.token("}","}"),this.csxObjAttribute[this.csxDepth]=!1):this.token(")",")"),this.token(",",","),1):0:0}},{key:"atCSXTag",value:function(){var t=0"===(null==r?void 0:r.tag)&&r}},{key:"literalToken",value:function(){var n,r,i,s,a,f,l,c,h,v,m,g,y;if(n=R.exec(this.chunk)){var b=n,w=_slicedToArray(b,1);y=w[0],u.test(y)&&this.tagParameters()}else y=this.chunk.charAt(0);if(m=y,s=this.prev(),s&&0<=t.call(["="].concat(_toConsumableArray(d)),y)&&(v=!1,"="!==y||"||"!==(a=s[1])&&"&&"!==a||s.spaced||(s[0]="COMPOUND_ASSIGN",s[1]+="=",s=this.tokens[this.tokens.length-2],v=!0),s&&"PROPERTY"!==s[0]&&(i=null==(f=s.origin)?s:f,r=gt(s[1],i[1]),r&&this.error(r,i[2])),v))return y.length;if("{"===y&&this.seenImport?this.importSpecifierList=!0:this.importSpecifierList&&"}"===y?this.importSpecifierList=!1:"{"===y&&"EXPORT"===(null==s?void 0:s[0])?this.exportSpecifierList=!0:this.exportSpecifierList&&"}"===y&&(this.exportSpecifierList=!1),";"===y)(l=null==s?void 0:s[0],0<=t.call(["="].concat(_toConsumableArray(at)),l))&&this.error("unexpected ;"),this.seenFor=this.seenImport=this.seenExport=!1,m="TERMINATOR";else if("*"===y&&"EXPORT"===(null==s?void 0:s[0]))m="EXPORT_ALL";else if(0<=t.call(j,y))m="MATH";else if(0<=t.call(p,y))m="COMPARE";else if(0<=t.call(d,y))m="COMPOUND_ASSIGN";else if(0<=t.call(ot,y))m="UNARY";else if(0<=t.call(ut,y))m="UNARY_MATH";else if(0<=t.call(Q,y))m="SHIFT";else if("?"===y&&(null==s?void 0:s.spaced))m="BIN?";else if(s)if("("===y&&!s.spaced&&(c=s[0],0<=t.call(o,c)))"?"===s[0]&&(s[0]="FUNC_EXIST"),m="CALL_START";else if("["===y&&((h=s[0],0<=t.call(L,h))&&!s.spaced||"::"===s[0]))switch(m="INDEX_START",s[0]){case"?":s[0]="INDEX_SOAK"}return g=this.makeToken(m,y),"("===y||"{"===y||"["===y?this.ends.push({tag:O[y],origin:g}):")"===y||"}"===y||"]"===y?this.pair(y):void 0,this.tokens.push(this.makeToken(m,y)),y.length}},{key:"tagParameters",value:function(){var t,n,r,i,s;if(")"!==this.tag())return this;for(r=[],s=this.tokens,t=s.length,n=s[--t],n[0]="PARAM_END";i=s[--t];)switch(i[0]){case")":r.push(i);break;case"(":case"CALL_START":if(!r.length)return"("===i[0]?(i[0]="PARAM_START",this):(n[0]="CALL_END",this);r.pop()}return this}},{key:"closeIndentation",value:function(){return this.outdentToken(this.indent)}},{key:"matchWithInterpolations",value:function(r,i,s,o){var u,a,f,l,c,h,p,d,v,m,g,y,b,w,E,S,x,T,N,C,k,L;if(null==s&&(s=i),null==o&&(o=/^#\{/),L=[],S=i.length,this.chunk.slice(0,S)!==i)return null;for(C=this.chunk.slice(S);;){var A=r.exec(C),O=_slicedToArray(A,1);if(k=O[0],this.validateEscapes(k,{isRegex:"/"===i.charAt(0),offsetInChunk:S}),L.push(this.makeToken("NEOSTRING",k,S)),C=C.slice(k.length),S+=k.length,!(w=o.exec(C)))break;var M=w,_=_slicedToArray(M,1);g=_[0],m=g.length-1;var D=this.getLineAndColumnFromChunk(S+m),P=_slicedToArray(D,2);b=P[0],p=P[1],N=C.slice(m);var H=(new e).tokenize(N,{line:b,column:p,untilBalanced:!0});if(E=H.tokens,v=H.index,v+=m,c="}"===C[v-1],c){var B,j,F,I;B=E,j=_slicedToArray(B,1),x=j[0],B,F=n.call(E,-1),I=_slicedToArray(F,1),h=I[0],F,x[0]=x[1]="(",h[0]=h[1]=")",h.origin=["","end of interpolation",h[2]]}"TERMINATOR"===(null==(T=E[1])?void 0:T[0])&&E.splice(1,1),c||(x=this.makeToken("(","(",S,0),h=this.makeToken(")",")",S+v,0),E=[x].concat(_toConsumableArray(E),[h])),L.push(["TOKENS",E]),C=C.slice(v),S+=v}return C.slice(0,s.length)!==s&&this.error("missing "+s,{length:i.length}),u=L,a=_slicedToArray(u,1),d=a[0],u,f=n.call(L,-1),l=_slicedToArray(f,1),y=l[0],f,d[2].first_column-=i.length,"\n"===y[1].substr(-1)?(y[2].last_line+=1,y[2].last_column=s.length-1):y[2].last_column+=s.length,0===y[1].length&&(y[2].last_column-=1),{tokens:L,index:S+s.length}}},{key:"mergeInterpolationTokens",value:function(t,r,i){var s,o,u,a,f,l,c,h,p,d,v,m,g,y,b,w,E,S,x;for(1u&&(g=this.token("+","+"),g[2]={first_line:d[2].first_line,first_column:d[2].first_column,last_line:d[2].first_line,last_column:d[2].first_column}),(T=this.tokens).push.apply(T,_toConsumableArray(E))}if(v){var L=n.call(t,-1),A=_slicedToArray(L,1);return c=A[0],v.origin=["STRING",null,{first_line:v[2].first_line,first_column:v[2].first_column,last_line:c[2].last_line,last_column:c[2].last_column}],v[2]=v.origin[2],y=this.token("STRING_END",")"),y[2]={first_line:c[2].last_line,first_column:c[2].last_column,last_line:c[2].last_line,last_column:c[2].last_column}}}},{key:"pair",value:function(t){var r,i,s,o,u,a,f;if(u=this.ends,r=n.call(u,-1),i=_slicedToArray(r,1),o=i[0],r,t!==(f=null==o?void 0:o.tag)){var l,c;return"OUTDENT"!==f&&this.error("unmatched "+t),a=this.indents,l=n.call(a,-1),c=_slicedToArray(l,1),s=c[0],l,this.outdentToken(s,!0),this.pair(t)}return this.ends.pop()}},{key:"getLineAndColumnFromChunk",value:function(t){var r,i,s,o,u;if(0===t)return[this.chunkLine,this.chunkColumn];if(u=t>=this.chunk.length?this.chunk:this.chunk.slice(0,+(t-1)+1||9e9),s=dt(u,"\n"),r=this.chunkColumn,0t)?i(t):(n=_Mathfloor((t-65536)/1024)+55296,r=(t-65536)%1024+56320,""+i(n)+i(r))}},{key:"replaceUnicodeCodePointEscapes",value:function(n,r){var i=this,s;return s=null!=r.flags&&0>t.call(r.flags,"u"),n.replace(ft,function(e,t,n,o){var u;return t?t:(u=parseInt(n,16),1114111t.call([].concat(_toConsumableArray(_),_toConsumableArray(l)),e):return"keyword '"+n+"' can't be assigned";case 0>t.call(Y,e):return"'"+n+"' can't be assigned";case 0>t.call(J,e):return"reserved word '"+n+"' can't be assigned";default:return!1}},e.isUnassignable=gt,mt=function(e){var t;return"IDENTIFIER"===e[0]?("from"===e[1]&&(e[1][0]="IDENTIFIER",!0),!0):"FOR"!==e[0]&&"{"!==(t=e[1])&&"["!==t&&","!==t&&":"!==t},_=["true","false","null","this","new","delete","typeof","in","instanceof","return","throw","break","continue","debugger","yield","await","if","else","switch","for","while","do","try","catch","finally","class","extends","super","import","export","default"],l=["undefined","Infinity","NaN","then","unless","until","loop","of","by","when"],f={and:"&&",or:"||",is:"==",isnt:"!=",not:"!",yes:"true",no:"false",on:"true",off:"false"},a=function(){var e;for(yt in e=[],f)e.push(yt);return e}(),l=l.concat(a),J=["case","function","var","void","with","const","let","enum","native","implements","interface","package","private","protected","public","static"],Y=["arguments","eval"],e.JS_FORBIDDEN=_.concat(J).concat(Y),i=65279,C=/^(?!\d)((?:(?!\s)[$\w\x7f-\uffff])+)([^\n\S]*:(?!:))?/,g=/^(?![\d<])((?:(?!\s)[\.\-$\w\x7f-\uffff])+)/,m=/^()>/,v=/^(?!\d)((?:(?!\s)[\-$\w\x7f-\uffff])+)([^\S]*=(?!=))?/,q=/^0b[01]+|^0o[0-7]+|^0x[\da-f]+|^\d*\.?\d+(?:e[+-]?\d+)?/i,R=/^(?:[-=]>|[-+*\/%<>&|^!?=]=|>>>=?|([-+:])\1|([&|<>*\/%])\2=?|\?(\.|::)|\.{2,3})/,ct=/^[^\n\S]+/,c=/^\s*###([^#][\s\S]*?)(?:###[^\n\S]*|###$)|^(?:\s*#(?!##[^#]).*)+/,u=/^[-=]>/,F=/^(?:\n[^\n\S]*)+/,M=/^`(?!``)((?:[^`\\]|\\[\s\S])*)`/,N=/^```((?:[^`\\]|\\[\s\S]|`(?!``))*)```/,rt=/^(?:'''|"""|'|")/,nt=/^(?:[^\\']|\\[\s\S])*/,Z=/^(?:[^\\"#]|\\[\s\S]|\#(?!\{))*/,S=/^(?:[^\\']|\\[\s\S]|'(?!''))*/,w=/^(?:[^\\"#]|\\[\s\S]|"(?!"")|\#(?!\{))*/,A=/^(?:[^\{<])*/,y=/^(?:\{|<(?!\/))/,tt=/((?:\\\\)+)|\\[^\S\n]*\n\s*/g,G=/\s*\n\s*/g,E=/\n+([^\n\S]*)(?=\S)/g,z=/^\/(?!\/)((?:[^[\/\n\\]|\\[^\n]|\[(?:\\[^\n]|[^\]\n\\])*\])*)(\/)?/,W=/^\w*/,lt=/^(?!.*(.).*\1)[imguy]*$/,x=/^(?:[^\\\/#\s]|\\[\s\S]|\/(?!\/\/)|\#(?!\{)|\s+(?:#(?!\{).*)?)*/,T=/((?:\\\\)+)|\\(\s)|\s+(?:#.*)?/g,X=/^(\/|\/{3}\s*)(\*)/,U=/^\/=?\s/,b=/\*\//,H=/^\s*(?:,|\??\.(?![.\d])|::)/,et=/((?:^|[^\\])(?:\\\\)*)\\(?:(0[0-7]|[1-7])|(x(?![\da-fA-F]{2}).{0,2})|(u\{(?![\da-fA-F]{1,}\})[^}]*\}?)|(u(?!\{|[\da-fA-F]{4}).{0,4}))/,V=/((?:^|[^\\])(?:\\\\)*)\\(?:(0[0-7])|(x(?![\da-fA-F]{2}).{0,2})|(u\{(?![\da-fA-F]{1,}\})[^}]*\}?)|(u(?!\{|[\da-fA-F]{4}).{0,4}))/,ft=/(\\\\)|\\u\{([\da-fA-F]+)\}/g,D=/^[^\n\S]*\n/,it=/\n[^\n\S]*$/,st=/\s+$/,d=["-=","+=","/=","*=","%=","||=","&&=","?=","<<=",">>=",">>>=","&=","^=","|=","**=","//=","%%="],ot=["NEW","TYPEOF","DELETE","DO"],ut=["!","~"],Q=["<<",">>",">>>"],p=["==","!=","<",">","<=",">="],j=["*","/","%","//","%%"],$=["IN","OF","INSTANCEOF"],s=["TRUE","FALSE"],o=["IDENTIFIER","PROPERTY",")","]","?","@","THIS","SUPER"],L=o.concat(["NUMBER","INFINITY","NAN","STRING","STRING_END","REGEX","REGEX_END","BOOL","NULL","UNDEFINED","}","::"]),h=["IDENTIFIER",")","]","NUMBER"],I=L.concat(["++","--"]),P=["INDENT","OUTDENT","TERMINATOR"],k=[")","}","]"],at=["\\",".","?.","?::","UNARY","MATH","UNARY_MATH","+","-","**","SHIFT","RELATION","COMPARE","&","^","|","&&","||","BIN?","EXTENDS"]}.call(this),{exports:e}.exports}(),require["./parser"]=function(){var e={},t={exports:e},n=function(){function e(){this.yy={}}var t=function(e,t,n,r){for(n=n||{},r=e.length;r--;n[e[r]]=t);return n},n=[1,24],r=[1,56],i=[1,91],s=[1,92],o=[1,87],u=[1,93],a=[1,94],f=[1,89],l=[1,90],c=[1,64],h=[1,66],p=[1,67],d=[1,68],v=[1,69],m=[1,70],g=[1,72],y=[1,73],b=[1,58],w=[1,42],E=[1,36],S=[1,76],x=[1,77],T=[1,86],N=[1,54],C=[1,59],k=[1,60],L=[1,74],A=[1,75],O=[1,47],M=[1,55],_=[1,71],D=[1,81],P=[1,82],H=[1,83],B=[1,84],j=[1,53],F=[1,80],I=[1,38],q=[1,39],R=[1,40],U=[1,41],z=[1,43],W=[1,44],X=[1,95],V=[1,6,36,47,146],$=[1,6,35,36,47,69,70,93,127,135,146,149,157],J=[1,113],K=[1,114],Q=[1,115],G=[1,110],Y=[1,98],Z=[1,97],et=[1,96],tt=[1,99],nt=[1,100],rt=[1,101],it=[1,102],st=[1,103],ot=[1,104],ut=[1,105],at=[1,106],ft=[1,107],lt=[1,108],ct=[1,109],ht=[1,117],pt=[1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,157,174,178,179,182,183,184,185,186,187,188,189,190,191,192,193],dt=[2,196],vt=[1,123],mt=[1,128],gt=[1,124],yt=[1,125],bt=[1,126],wt=[1,129],Et=[1,122],St=[1,6,35,36,47,69,70,93,127,135,146,148,149,150,156,157,174],xt=[1,6,35,36,45,46,47,69,70,80,81,83,88,93,101,102,103,105,109,125,126,127,135,146,148,149,150,156,157,174,178,179,182,183,184,185,186,187,188,189,190,191,192,193],Tt=[2,122],Nt=[2,126],Ct=[6,35,88,93],kt=[2,99],Lt=[1,141],At=[1,135],Ot=[1,140],Mt=[1,144],_t=[1,149],Dt=[1,147],Pt=[1,151],Ht=[1,155],Bt=[1,153],jt=[1,6,35,36,45,46,47,61,69,70,80,81,83,88,93,101,102,103,105,109,125,126,127,135,146,148,149,150,156,157,174,178,179,182,183,184,185,186,187,188,189,190,191,192,193],Ft=[2,119],It=[1,6,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,157,174,178,179,182,183,184,185,186,187,188,189,190,191,192,193],qt=[2,31],Rt=[1,183],Ut=[2,86],zt=[1,187],Wt=[1,193],Xt=[1,208],Vt=[1,203],$t=[1,212],Jt=[1,209],Kt=[1,214],Qt=[1,215],Gt=[1,217],Yt=[14,32,35,38,39,43,45,46,49,50,54,55,56,57,58,59,68,77,84,85,86,90,91,107,110,112,120,129,130,140,144,145,148,150,153,156,167,173,176,177,178,179,180,181],Zt=[1,6,35,36,45,46,47,61,69,70,80,81,83,88,93,101,102,103,105,109,111,125,126,127,135,146,148,149,150,156,157,174,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194],en=[1,228],tn=[2,142],nn=[1,250],rn=[1,245],sn=[1,256],on=[1,6,35,36,45,46,47,65,69,70,80,81,83,88,93,101,102,103,105,109,125,126,127,135,146,148,149,150,156,157,174,178,179,182,183,184,185,186,187,188,189,190,191,192,193],un=[1,6,33,35,36,45,46,47,61,65,69,70,80,81,83,88,93,101,102,103,105,109,111,117,125,126,127,135,146,148,149,150,156,157,164,165,166,174,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194],an=[1,6,35,36,45,46,47,52,65,69,70,80,81,83,88,93,101,102,103,105,109,125,126,127,135,146,148,149,150,156,157,174,178,179,182,183,184,185,186,187,188,189,190,191,192,193],fn=[1,286],ln=[45,46,126],cn=[1,297],hn=[1,296],pn=[6,35],dn=[2,97],vn=[1,303],mn=[6,35,36,88,93],gn=[6,35,36,61,70,88,93],yn=[1,6,35,36,47,69,70,80,81,83,88,93,101,102,103,105,109,127,135,146,148,149,150,156,157,174,178,179,182,183,184,185,186,187,188,189,190,191,192,193],bn=[1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,157,174,178,179,183,184,185,186,187,188,189,190,191,192,193],wn=[2,347],En=[1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,157,174,178,179,183,185,186,187,188,189,190,191,192,193],Sn=[45,46,80,81,101,102,103,105,125,126],xn=[1,330],Tn=[1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,157,174],Nn=[2,84],Cn=[1,346],kn=[1,348],Ln=[1,353],An=[1,355],On=[6,35,69,93],Mn=[2,221],_n=[2,222],Dn=[1,6,35,36,45,46,47,61,69,70,80,81,83,88,93,101,102,103,105,109,125,126,127,135,146,148,149,150,156,157,164,165,166,174,178,179,182,183,184,185,186,187,188,189,190,191,192,193],Pn=[1,369],Hn=[6,14,32,35,36,38,39,43,45,46,49,50,54,55,56,57,58,59,68,69,70,77,84,85,86,90,91,93,107,110,112,120,129,130,140,144,145,148,150,153,156,167,173,176,177,178,179,180,181],Bn=[6,35,36,69,93],jn=[6,35,36,69,93,127],Fn=[1,6,35,36,45,46,47,61,65,69,70,80,81,83,88,93,101,102,103,105,109,111,125,126,127,135,146,148,149,150,156,157,164,165,166,174,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194],In=[1,6,35,36,47,69,70,83,88,93,109,127,135,146,157,174],qn=[1,6,35,36,47,69,70,83,88,93,109,127,135,146,149,157,174],Rn=[2,273],Un=[164,165,166],zn=[93,164,165,166],Wn=[6,35,109],Xn=[1,393],Vn=[6,35,36,93,109],$n=[6,35,36,65,93,109],Jn=[1,399],Kn=[1,400],Qn=[6,35,36,61,65,70,80,81,93,109,126],Gn=[6,35,36,70,80,81,93,109,126],Yn=[1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,157,174,178,179,185,186,187,188,189,190,191,192,193],Zn=[2,339],er=[2,338],tr=[1,6,35,36,45,46,47,52,69,70,80,81,83,88,93,101,102,103,105,109,125,126,127,135,146,148,149,150,156,157,174,178,179,182,183,184,185,186,187,188,189,190,191,192,193],nr=[1,422],rr=[14,32,38,39,43,45,46,49,50,54,55,56,57,58,59,68,77,83,84,85,86,90,91,107,110,112,120,129,130,140,144,145,148,150,153,156,167,173,176,177,178,179,180,181],ir=[2,207],sr=[6,35,36],or=[2,98],ur=[1,431],ar=[1,432],fr=[1,6,35,36,47,69,70,80,81,83,88,93,101,102,103,105,109,127,135,142,143,146,148,149,150,156,157,169,171,174,178,179,182,183,184,185,186,187,188,189,190,191,192,193],lr=[1,312],cr=[36,169,171],hr=[1,6,36,47,69,70,83,88,93,109,127,135,146,149,157,174],pr=[1,467],dr=[1,473],vr=[1,6,35,36,47,69,70,93,127,135,146,149,157,174],mr=[2,113],gr=[1,486],yr=[1,487],br=[6,35,36,69],wr=[1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,157,169,174,178,179,182,183,184,185,186,187,188,189,190,191,192,193],Er=[1,6,35,36,47,69,70,93,127,135,146,149,157,169],Sr=[2,286],xr=[2,287],Tr=[2,302],Nr=[1,510],Cr=[1,511],kr=[6,35,36,109],Lr=[1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,150,156,157,174],Ar=[1,532],Or=[6,35,36,93,127],Mr=[6,35,36,93],_r=[1,6,35,36,47,69,70,83,88,93,109,127,135,142,146,148,149,150,156,157,174,178,179,182,183,184,185,186,187,188,189,190,191,192,193],Dr=[35,93],Pr=[1,560],Hr=[1,561],Br=[1,567],jr=[1,568],Fr=[2,258],Ir=[2,261],qr=[2,274],Rr=[1,617],Ur=[1,618],zr=[2,288],Wr=[2,292],Xr=[2,289],Vr=[2,293],$r=[2,290],Jr=[2,291],Kr=[2,303],Qr=[2,304],Gr=[1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,174],Yr=[2,294],Zr=[2,296],ei=[2,298],ti=[2,300],ni=[2,295],ri=[2,297],ii=[2,299],si=[2,301],oi={trace:function(){},yy:{},symbols_:{error:2,Root:3,Body:4,Line:5,TERMINATOR:6,Expression:7,ExpressionLine:8,Statement:9,FuncDirective:10,YieldReturn:11,AwaitReturn:12,Return:13,STATEMENT:14,Import:15,Export:16,Value:17,Code:18,Operation:19,Assign:20,If:21,Try:22,While:23,For:24,Switch:25,Class:26,Throw:27,Yield:28,CodeLine:29,IfLine:30,OperationLine:31,YIELD:32,FROM:33,Block:34,INDENT:35,OUTDENT:36,Identifier:37,IDENTIFIER:38,CSX_TAG:39,Property:40,PROPERTY:41,AlphaNumeric:42,NUMBER:43,String:44,STRING:45,STRING_START:46,STRING_END:47,Regex:48,REGEX:49,REGEX_START:50,Invocation:51,REGEX_END:52,Literal:53,JS:54,UNDEFINED:55,NULL:56,BOOL:57,INFINITY:58,NAN:59,Assignable:60,"=":61,AssignObj:62,ObjAssignable:63,ObjRestValue:64,":":65,SimpleObjAssignable:66,ThisProperty:67,"[":68,"]":69,"...":70,ObjSpreadExpr:71,ObjSpreadIdentifier:72,Object:73,Parenthetical:74,Super:75,This:76,SUPER:77,Arguments:78,ObjSpreadAccessor:79,".":80,INDEX_START:81,IndexValue:82,INDEX_END:83,RETURN:84,AWAIT:85,PARAM_START:86,ParamList:87,PARAM_END:88,FuncGlyph:89,"->":90,"=>":91,OptComma:92,",":93,Param:94,ParamVar:95,Array:96,Splat:97,SimpleAssignable:98,Accessor:99,Range:100,"?.":101,"::":102,"?::":103,Index:104,INDEX_SOAK:105,Slice:106,"{":107,AssignList:108,"}":109,CLASS:110,EXTENDS:111,IMPORT:112,ImportDefaultSpecifier:113,ImportNamespaceSpecifier:114,ImportSpecifierList:115,ImportSpecifier:116,AS:117,DEFAULT:118,IMPORT_ALL:119,EXPORT:120,ExportSpecifierList:121,EXPORT_ALL:122,ExportSpecifier:123,OptFuncExist:124,FUNC_EXIST:125,CALL_START:126,CALL_END:127,ArgList:128,THIS:129,"@":130,Elisions:131,ArgElisionList:132,OptElisions:133,RangeDots:134,"..":135,Arg:136,ArgElision:137,Elision:138,SimpleArgs:139,TRY:140,Catch:141,FINALLY:142,CATCH:143,THROW:144,"(":145,")":146,WhileLineSource:147,WHILE:148,WHEN:149,UNTIL:150,WhileSource:151,Loop:152,LOOP:153,ForBody:154,ForLineBody:155,FOR:156,BY:157,ForStart:158,ForSource:159,ForLineSource:160,ForVariables:161,OWN:162,ForValue:163,FORIN:164,FOROF:165,FORFROM:166,SWITCH:167,Whens:168,ELSE:169,When:170,LEADING_WHEN:171,IfBlock:172,IF:173,POST_IF:174,IfBlockLine:175,UNARY:176,UNARY_MATH:177,"-":178,"+":179,"--":180,"++":181,"?":182,MATH:183,"**":184,SHIFT:185,COMPARE:186,"&":187,"^":188,"|":189,"&&":190,"||":191,"BIN?":192,RELATION:193,COMPOUND_ASSIGN:194,$accept:0,$end:1},terminals_:{2:"error",6:"TERMINATOR",14:"STATEMENT",32:"YIELD",33:"FROM",35:"INDENT",36:"OUTDENT",38:"IDENTIFIER",39:"CSX_TAG",41:"PROPERTY",43:"NUMBER",45:"STRING",46:"STRING_START",47:"STRING_END",49:"REGEX",50:"REGEX_START",52:"REGEX_END",54:"JS",55:"UNDEFINED",56:"NULL",57:"BOOL",58:"INFINITY",59:"NAN",61:"=",65:":",68:"[",69:"]",70:"...",77:"SUPER",80:".",81:"INDEX_START",83:"INDEX_END",84:"RETURN",85:"AWAIT",86:"PARAM_START",88:"PARAM_END",90:"->",91:"=>",93:",",101:"?.",102:"::",103:"?::",105:"INDEX_SOAK",107:"{",109:"}",110:"CLASS",111:"EXTENDS",112:"IMPORT",117:"AS",118:"DEFAULT",119:"IMPORT_ALL",120:"EXPORT",122:"EXPORT_ALL",125:"FUNC_EXIST",126:"CALL_START",127:"CALL_END",129:"THIS",130:"@",135:"..",140:"TRY",142:"FINALLY",143:"CATCH",144:"THROW",145:"(",146:")",148:"WHILE",149:"WHEN",150:"UNTIL",153:"LOOP",156:"FOR",157:"BY",162:"OWN",164:"FORIN",165:"FOROF",166:"FORFROM",167:"SWITCH",169:"ELSE",171:"LEADING_WHEN",173:"IF",174:"POST_IF",176:"UNARY",177:"UNARY_MATH",178:"-",179:"+",180:"--",181:"++",182:"?",183:"MATH",184:"**",185:"SHIFT",186:"COMPARE",187:"&",188:"^",189:"|",190:"&&",191:"||",192:"BIN?",193:"RELATION",194:"COMPOUND_ASSIGN"},productions_:[0,[3,0],[3,1],[4,1],[4,3],[4,2],[5,1],[5,1],[5,1],[5,1],[10,1],[10,1],[9,1],[9,1],[9,1],[9,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[8,1],[8,1],[8,1],[28,1],[28,2],[28,3],[34,2],[34,3],[37,1],[37,1],[40,1],[42,1],[42,1],[44,1],[44,3],[48,1],[48,3],[53,1],[53,1],[53,1],[53,1],[53,1],[53,1],[53,1],[53,1],[20,3],[20,4],[20,5],[62,1],[62,1],[62,3],[62,5],[62,3],[62,5],[66,1],[66,1],[66,1],[66,3],[63,1],[63,1],[64,2],[64,2],[64,2],[64,2],[71,1],[71,1],[71,1],[71,1],[71,1],[71,2],[71,2],[71,2],[72,2],[72,2],[79,2],[79,3],[13,2],[13,4],[13,1],[11,3],[11,2],[12,3],[12,2],[18,5],[18,2],[29,5],[29,2],[89,1],[89,1],[92,0],[92,1],[87,0],[87,1],[87,3],[87,4],[87,6],[94,1],[94,2],[94,2],[94,3],[94,1],[95,1],[95,1],[95,1],[95,1],[97,2],[97,2],[98,1],[98,2],[98,2],[98,1],[60,1],[60,1],[60,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[75,3],[75,4],[99,2],[99,2],[99,2],[99,2],[99,1],[99,1],[104,3],[104,2],[82,1],[82,1],[73,4],[108,0],[108,1],[108,3],[108,4],[108,6],[26,1],[26,2],[26,3],[26,4],[26,2],[26,3],[26,4],[26,5],[15,2],[15,4],[15,4],[15,5],[15,7],[15,6],[15,9],[115,1],[115,3],[115,4],[115,4],[115,6],[116,1],[116,3],[116,1],[116,3],[113,1],[114,3],[16,3],[16,5],[16,2],[16,4],[16,5],[16,6],[16,3],[16,5],[16,4],[16,7],[121,1],[121,3],[121,4],[121,4],[121,6],[123,1],[123,3],[123,3],[123,1],[123,3],[51,3],[51,3],[51,3],[124,0],[124,1],[78,2],[78,4],[76,1],[76,1],[67,2],[96,2],[96,3],[96,4],[134,1],[134,1],[100,5],[100,5],[106,3],[106,2],[106,3],[106,2],[106,2],[106,1],[128,1],[128,3],[128,4],[128,4],[128,6],[136,1],[136,1],[136,1],[136,1],[132,1],[132,3],[132,4],[132,4],[132,6],[137,1],[137,2],[133,1],[133,2],[131,1],[131,2],[138,1],[139,1],[139,1],[139,3],[139,3],[22,2],[22,3],[22,4],[22,5],[141,3],[141,3],[141,2],[27,2],[27,4],[74,3],[74,5],[147,2],[147,4],[147,2],[147,4],[151,2],[151,4],[151,4],[151,2],[151,4],[151,4],[23,2],[23,2],[23,2],[23,2],[23,1],[152,2],[152,2],[24,2],[24,2],[24,2],[24,2],[154,2],[154,4],[154,2],[155,4],[155,2],[158,2],[158,3],[163,1],[163,1],[163,1],[163,1],[161,1],[161,3],[159,2],[159,2],[159,4],[159,4],[159,4],[159,4],[159,4],[159,4],[159,6],[159,6],[159,6],[159,6],[159,6],[159,6],[159,6],[159,6],[159,2],[159,4],[159,4],[160,2],[160,2],[160,4],[160,4],[160,4],[160,4],[160,4],[160,4],[160,6],[160,6],[160,6],[160,6],[160,6],[160,6],[160,6],[160,6],[160,2],[160,4],[160,4],[25,5],[25,5],[25,7],[25,7],[25,4],[25,6],[168,1],[168,2],[170,3],[170,4],[172,3],[172,5],[21,1],[21,3],[21,3],[21,3],[175,3],[175,5],[30,1],[30,3],[30,3],[30,3],[31,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,3],[19,5],[19,4]],performAction:function(e,t,n,r,i,s,o){var u=s.length-1;switch(i){case 1:return this.$=r.addDataToNode(r,o[u],o[u])(new r.Block);case 2:return this.$=s[u];case 3:this.$=r.addDataToNode(r,o[u],o[u])(r.Block.wrap([s[u]]));break;case 4:this.$=r.addDataToNode(r,o[u-2],o[u])(s[u-2].push(s[u]));break;case 5:this.$=s[u-1];break;case 6:case 7:case 8:case 9:case 10:case 11:case 12:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 40:case 45:case 47:case 57:case 62:case 63:case 64:case 66:case 67:case 72:case 73:case 74:case 75:case 76:case 97:case 98:case 109:case 110:case 111:case 112:case 118:case 119:case 122:case 127:case 136:case 221:case 222:case 223:case 225:case 237:case 238:case 280:case 281:case 330:case 336:case 342:this.$=s[u];break;case 13:this.$=r.addDataToNode(r,o[u],o[u])(new r.StatementLiteral(s[u]));break;case 31:this.$=r.addDataToNode(r,o[u],o[u])(new r.Op(s[u],new r.Value(new r.Literal(""))));break;case 32:case 346:case 347:case 348:case 351:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Op(s[u-1],s[u]));break;case 33:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Op(s[u-2].concat(s[u-1]),s[u]));break;case 34:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Block);break;case 35:case 83:case 137:this.$=r.addDataToNode(r,o[u-2],o[u])(s[u-1]);break;case 36:this.$=r.addDataToNode(r,o[u],o[u])(new r.IdentifierLiteral(s[u]));break;case 37:this.$=r.addDataToNode(r,o[u],o[u])(new r.CSXTag(s[u]));break;case 38:this.$=r.addDataToNode(r,o[u],o[u])(new r.PropertyName(s[u]));break;case 39:this.$=r.addDataToNode(r,o[u],o[u])(new r.NumberLiteral(s[u]));break;case 41:this.$=r.addDataToNode(r,o[u],o[u])(new r.StringLiteral(s[u]));break;case 42:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.StringWithInterpolations(s[u-1]));break;case 43:this.$=r.addDataToNode(r,o[u],o[u])(new r.RegexLiteral(s[u]));break;case 44:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.RegexWithInterpolations(s[u-1].args));break;case 46:this.$=r.addDataToNode(r,o[u],o[u])(new r.PassthroughLiteral(s[u]));break;case 48:this.$=r.addDataToNode(r,o[u],o[u])(new r.UndefinedLiteral(s[u]));break;case 49:this.$=r.addDataToNode(r,o[u],o[u])(new r.NullLiteral(s[u]));break;case 50:this.$=r.addDataToNode(r,o[u],o[u])(new r.BooleanLiteral(s[u]));break;case 51:this.$=r.addDataToNode(r,o[u],o[u])(new r.InfinityLiteral(s[u]));break;case 52:this.$=r.addDataToNode(r,o[u],o[u])(new r.NaNLiteral(s[u]));break;case 53:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Assign(s[u-2],s[u]));break;case 54:this.$=r.addDataToNode(r,o[u-3],o[u])(new r.Assign(s[u-3],s[u]));break;case 55:this.$=r.addDataToNode(r,o[u-4],o[u])(new r.Assign(s[u-4],s[u-1]));break;case 56:case 115:case 120:case 121:case 123:case 124:case 125:case 126:case 128:case 282:case 283:this.$=r.addDataToNode(r,o[u],o[u])(new r.Value(s[u]));break;case 58:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Assign(r.addDataToNode(r,o[u-2])(new r.Value(s[u-2])),s[u],"object",{operatorToken:r.addDataToNode(r,o[u-1])(new r.Literal(s[u-1]))}));break;case 59:this.$=r.addDataToNode(r,o[u-4],o[u])(new r.Assign(r.addDataToNode(r,o[u-4])(new r.Value(s[u-4])),s[u-1],"object",{operatorToken:r.addDataToNode(r,o[u-3])(new r.Literal(s[u-3]))}));break;case 60:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Assign(r.addDataToNode(r,o[u-2])(new r.Value(s[u-2])),s[u],null,{operatorToken:r.addDataToNode(r,o[u-1])(new r.Literal(s[u-1]))}));break;case 61:this.$=r.addDataToNode(r,o[u-4],o[u])(new r.Assign(r.addDataToNode(r,o[u-4])(new r.Value(s[u-4])),s[u-1],null,{operatorToken:r.addDataToNode(r,o[u-3])(new r.Literal(s[u-3]))}));break;case 65:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Value(new r.ComputedPropertyName(s[u-1])));break;case 68:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Splat(new r.Value(s[u-1])));break;case 69:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Splat(new r.Value(s[u])));break;case 70:case 113:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Splat(s[u-1]));break;case 71:case 114:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Splat(s[u]));break;case 77:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.SuperCall(r.addDataToNode(r,o[u-1])(new r.Super),s[u],!1,s[u-1]));break;case 78:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Call(new r.Value(s[u-1]),s[u]));break;case 79:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Call(s[u-1],s[u]));break;case 80:case 81:this.$=r.addDataToNode(r,o[u-1],o[u])((new r.Value(s[u-1])).add(s[u]));break;case 82:case 131:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Access(s[u]));break;case 84:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Return(s[u]));break;case 85:this.$=r.addDataToNode(r,o[u-3],o[u])(new r.Return(new r.Value(s[u-1])));break;case 86:this.$=r.addDataToNode(r,o[u],o[u])(new r.Return);break;case 87:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.YieldReturn(s[u]));break;case 88:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.YieldReturn);break;case 89:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.AwaitReturn(s[u]));break;case 90:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.AwaitReturn);break;case 91:this.$=r.addDataToNode(r,o[u-4],o[u])(new r.Code(s[u-3],s[u],s[u-1],r.addDataToNode(r,o[u-4])(new r.Literal(s[u-4]))));break;case 92:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Code([],s[u],s[u-1]));break;case 93:this.$=r.addDataToNode(r,o[u-4],o[u])(new r.Code(s[u-3],r.addDataToNode(r,o[u])(r.Block.wrap([s[u]])),s[u-1],r.addDataToNode(r,o[u-4])(new r.Literal(s[u-4]))));break;case 94:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Code([],r.addDataToNode(r,o[u])(r.Block.wrap([s[u]])),s[u-1]));break;case 95:case 96:this.$=r.addDataToNode(r,o[u],o[u])(new r.FuncGlyph(s[u]));break;case 99:case 142:case 232:this.$=r.addDataToNode(r,o[u],o[u])([]);break;case 100:case 143:case 162:case 183:case 216:case 230:case 234:case 284:this.$=r.addDataToNode(r,o[u],o[u])([s[u]]);break;case 101:case 144:case 163:case 184:case 217:case 226:this.$=r.addDataToNode(r,o[u-2],o[u])(s[u-2].concat(s[u]));break;case 102:case 145:case 164:case 185:case 218:this.$=r.addDataToNode(r,o[u-3],o[u])(s[u-3].concat(s[u]));break;case 103:case 146:case 166:case 187:case 220:this.$=r.addDataToNode(r,o[u-5],o[u])(s[u-5].concat(s[u-2]));break;case 104:this.$=r.addDataToNode(r,o[u],o[u])(new r.Param(s[u]));break;case 105:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Param(s[u-1],null,!0));break;case 106:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Param(s[u],null,!0));break;case 107:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Param(s[u-2],s[u]));break;case 108:case 224:this.$=r.addDataToNode(r,o[u],o[u])(new r.Expansion);break;case 116:this.$=r.addDataToNode(r,o[u-1],o[u])(s[u-1].add(s[u]));break;case 117:this.$=r.addDataToNode(r,o[u-1],o[u])((new r.Value(s[u-1])).add(s[u]));break;case 129:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Super(r.addDataToNode(r,o[u])(new r.Access(s[u])),[],!1,s[u-2]));break;case 130:this.$=r.addDataToNode(r,o[u-3],o[u])(new r.Super(r.addDataToNode(r,o[u-1])(new r.Index(s[u-1])),[],!1,s[u-3]));break;case 132:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Access(s[u],"soak"));break;case 133:this.$=r.addDataToNode(r,o[u-1],o[u])([r.addDataToNode(r,o[u-1])(new r.Access(new r.PropertyName("prototype"))),r.addDataToNode(r,o[u])(new r.Access(s[u]))]);break;case 134:this.$=r.addDataToNode(r,o[u-1],o[u])([r.addDataToNode(r,o[u-1])(new r.Access(new r.PropertyName("prototype"),"soak")),r.addDataToNode(r,o[u])(new r.Access(s[u]))]);break;case 135:this.$=r.addDataToNode(r,o[u],o[u])(new r.Access(new r.PropertyName("prototype")));break;case 138:this.$=r.addDataToNode(r,o[u-1],o[u])(r.extend(s[u],{soak:!0}));break;case 139:this.$=r.addDataToNode(r,o[u],o[u])(new r.Index(s[u]));break;case 140:this.$=r.addDataToNode(r,o[u],o[u])(new r.Slice(s[u]));break;case 141:this.$=r.addDataToNode(r,o[u-3],o[u])(new r.Obj(s[u-2],s[u-3].generated));break;case 147:this.$=r.addDataToNode(r,o[u],o[u])(new r.Class);break;case 148:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Class(null,null,s[u]));break;case 149:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Class(null,s[u]));break;case 150:this.$=r.addDataToNode(r,o[u-3],o[u])(new r.Class(null,s[u-1],s[u]));break;case 151:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Class(s[u]));break;case 152:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Class(s[u-1],null,s[u]));break;case 153:this.$=r.addDataToNode(r,o[u-3],o[u])(new r.Class(s[u-2],s[u]));break;case 154:this.$=r.addDataToNode(r,o[u-4],o[u])(new r.Class(s[u-3],s[u-1],s[u]));break;case 155:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.ImportDeclaration(null,s[u]));break;case 156:this.$=r.addDataToNode(r,o[u-3],o[u])(new r.ImportDeclaration(new r.ImportClause(s[u-2],null),s[u]));break;case 157:this.$=r.addDataToNode(r,o[u-3],o[u])(new r.ImportDeclaration(new r.ImportClause(null,s[u-2]),s[u]));break;case 158:this.$=r.addDataToNode(r,o[u-4],o[u])(new r.ImportDeclaration(new r.ImportClause(null,new r.ImportSpecifierList([])),s[u]));break;case 159:this.$=r.addDataToNode(r,o[u-6],o[u])(new r.ImportDeclaration(new r.ImportClause(null,new r.ImportSpecifierList(s[u-4])),s[u]));break;case 160:this.$=r.addDataToNode(r,o[u-5],o[u])(new r.ImportDeclaration(new r.ImportClause(s[u-4],s[u-2]),s[u]));break;case 161:this.$=r.addDataToNode(r,o[u-8],o[u])(new r.ImportDeclaration(new r.ImportClause(s[u-7],new r.ImportSpecifierList(s[u-4])),s[u]));break;case 165:case 186:case 199:case 219:this.$=r.addDataToNode(r,o[u-3],o[u])(s[u-2]);break;case 167:this.$=r.addDataToNode(r,o[u],o[u])(new r.ImportSpecifier(s[u]));break;case 168:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.ImportSpecifier(s[u-2],s[u]));break;case 169:this.$=r.addDataToNode(r,o[u],o[u])(new r.ImportSpecifier(new r.Literal(s[u])));break;case 170:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.ImportSpecifier(new r.Literal(s[u-2]),s[u]));break;case 171:this.$=r.addDataToNode(r,o[u],o[u])(new r.ImportDefaultSpecifier(s[u]));break;case 172:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.ImportNamespaceSpecifier(new r.Literal(s[u-2]),s[u]));break;case 173:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.ExportNamedDeclaration(new r.ExportSpecifierList([])));break;case 174:this.$=r.addDataToNode(r,o[u-4],o[u])(new r.ExportNamedDeclaration(new r.ExportSpecifierList(s[u-2])));break;case 175:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.ExportNamedDeclaration(s[u]));break;case 176:this.$=r.addDataToNode(r,o[u-3],o[u])(new r.ExportNamedDeclaration(new r.Assign(s[u-2],s[u],null,{moduleDeclaration:"export"})));break;case 177:this.$=r.addDataToNode(r,o[u-4],o[u])(new r.ExportNamedDeclaration(new r.Assign(s[u-3],s[u],null,{moduleDeclaration:"export"})));break;case 178:this.$=r.addDataToNode(r,o[u-5],o[u])(new r.ExportNamedDeclaration(new r.Assign(s[u-4],s[u-1],null,{moduleDeclaration:"export"})));break;case 179:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.ExportDefaultDeclaration(s[u]));break;case 180:this.$=r.addDataToNode(r,o[u-4],o[u])(new r.ExportDefaultDeclaration(new r.Value(s[u-1])));break;case 181:this.$=r.addDataToNode(r,o[u-3],o[u])(new r.ExportAllDeclaration(new r.Literal(s[u-2]),s[u]));break;case 182:this.$=r.addDataToNode(r,o[u-6],o[u])(new r.ExportNamedDeclaration(new r.ExportSpecifierList(s[u-4]),s[u]));break;case 188:this.$=r.addDataToNode(r,o[u],o[u])(new r.ExportSpecifier(s[u]));break;case 189:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.ExportSpecifier(s[u-2],s[u]));break;case 190:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.ExportSpecifier(s[u-2],new r.Literal(s[u])));break;case 191:this.$=r.addDataToNode(r,o[u],o[u])(new r.ExportSpecifier(new r.Literal(s[u])));break;case 192:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.ExportSpecifier(new r.Literal(s[u-2]),s[u]));break;case 193:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.TaggedTemplateCall(s[u-2],s[u],s[u-1]));break;case 194:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Call(s[u-2],s[u],s[u-1]));break;case 195:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.SuperCall(r.addDataToNode(r,o[u-2])(new r.Super),s[u],s[u-1],s[u-2]));break;case 196:this.$=r.addDataToNode(r,o[u],o[u])(!1);break;case 197:this.$=r.addDataToNode(r,o[u],o[u])(!0);break;case 198:this.$=r.addDataToNode(r,o[u-1],o[u])([]);break;case 200:case 201:this.$=r.addDataToNode(r,o[u],o[u])(new r.Value(new r.ThisLiteral(s[u])));break;case 202:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Value(r.addDataToNode(r,o[u-1])(new r.ThisLiteral(s[u-1])),[r.addDataToNode(r,o[u])(new r.Access(s[u]))],"this"));break;case 203:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Arr([]));break;case 204:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Arr(s[u-1]));break;case 205:this.$=r.addDataToNode(r,o[u-3],o[u])(new r.Arr([].concat(s[u-2],s[u-1])));break;case 206:this.$=r.addDataToNode(r,o[u],o[u])("inclusive");break;case 207:this.$=r.addDataToNode(r,o[u],o[u])("exclusive");break;case 208:case 209:this.$=r.addDataToNode(r,o[u-4],o[u])(new r.Range(s[u-3],s[u-1],s[u-2]));break;case 210:case 212:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Range(s[u-2],s[u],s[u-1]));break;case 211:case 213:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Range(s[u-1],null,s[u]));break;case 214:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Range(null,s[u],s[u-1]));break;case 215:this.$=r.addDataToNode(r,o[u],o[u])(new r.Range(null,null,s[u]));break;case 227:this.$=r.addDataToNode(r,o[u-3],o[u])(s[u-3].concat(s[u-2],s[u]));break;case 228:this.$=r.addDataToNode(r,o[u-3],o[u])(s[u-2].concat(s[u-1]));break;case 229:this.$=r.addDataToNode(r,o[u-5],o[u])(s[u-5].concat(s[u-4],s[u-2],s[u-1]));break;case 231:case 235:case 331:this.$=r.addDataToNode(r,o[u-1],o[u])(s[u-1].concat(s[u]));break;case 233:this.$=r.addDataToNode(r,o[u-1],o[u])([].concat(s[u]));break;case 236:this.$=r.addDataToNode(r,o[u],o[u])(new r.Elision);break;case 239:case 240:this.$=r.addDataToNode(r,o[u-2],o[u])([].concat(s[u-2],s[u]));break;case 241:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Try(s[u]));break;case 242:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Try(s[u-1],s[u][0],s[u][1]));break;case 243:this.$=r.addDataToNode(r,o[u-3],o[u])(new r.Try(s[u-2],null,null,s[u]));break;case 244:this.$=r.addDataToNode(r,o[u-4],o[u])(new r.Try(s[u-3],s[u-2][0],s[u-2][1],s[u]));break;case 245:this.$=r.addDataToNode(r,o[u-2],o[u])([s[u-1],s[u]]);break;case 246:this.$=r.addDataToNode(r,o[u-2],o[u])([r.addDataToNode(r,o[u-1])(new r.Value(s[u-1])),s[u]]);break;case 247:this.$=r.addDataToNode(r,o[u-1],o[u])([null,s[u]]);break;case 248:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Throw(s[u]));break;case 249:this.$=r.addDataToNode(r,o[u-3],o[u])(new r.Throw(new r.Value(s[u-1])));break;case 250:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Parens(s[u-1]));break;case 251:this.$=r.addDataToNode(r,o[u-4],o[u])(new r.Parens(s[u-2]));break;case 252:case 256:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.While(s[u]));break;case 253:case 257:case 258:this.$=r.addDataToNode(r,o[u-3],o[u])(new r.While(s[u-2],{guard:s[u]}));break;case 254:case 259:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.While(s[u],{invert:!0}));break;case 255:case 260:case 261:this.$=r.addDataToNode(r,o[u-3],o[u])(new r.While(s[u-2],{invert:!0,guard:s[u]}));break;case 262:case 263:this.$=r.addDataToNode(r,o[u-1],o[u])(s[u-1].addBody(s[u]));break;case 264:case 265:this.$=r.addDataToNode(r,o[u-1],o[u])(s[u].addBody(r.addDataToNode(r,o[u-1])(r.Block.wrap([s[u-1]]))));break;case 266:this.$=r.addDataToNode(r,o[u],o[u])(s[u]);break;case 267:this.$=r.addDataToNode(r,o[u-1],o[u])((new r.While(r.addDataToNode(r,o[u-1])(new r.BooleanLiteral("true")))).addBody(s[u]));break;case 268:this.$=r.addDataToNode(r,o[u-1],o[u])((new r.While(r.addDataToNode(r,o[u-1])(new r.BooleanLiteral("true")))).addBody(r.addDataToNode(r,o[u])(r.Block.wrap([s[u]]))));break;case 269:case 270:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.For(s[u-1],s[u]));break;case 271:case 272:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.For(s[u],s[u-1]));break;case 273:this.$=r.addDataToNode(r,o[u-1],o[u])({source:r.addDataToNode(r,o[u])(new r.Value(s[u]))});break;case 274:case 276:this.$=r.addDataToNode(r,o[u-3],o[u])({source:r.addDataToNode(r,o[u-2])(new r.Value(s[u-2])),step:s[u]});break;case 275:case 277:this.$=r.addDataToNode(r,o[u-1],o[u])(function(){return s[u].own=s[u-1].own,s[u].ownTag=s[u-1].ownTag,s[u].name=s[u-1][0],s[u].index=s[u-1][1],s[u]}());break;case 278:this.$=r.addDataToNode(r,o[u-1],o[u])(s[u]);break;case 279:this.$=r.addDataToNode(r,o[u-2],o[u])(function(){return s[u].own=!0,s[u].ownTag=r.addDataToNode(r,o[u-1])(new r.Literal(s[u-1])),s[u]}());break;case 285:this.$=r.addDataToNode(r,o[u-2],o[u])([s[u-2],s[u]]);break;case 286:case 305:this.$=r.addDataToNode(r,o[u-1],o[u])({source:s[u]});break;case 287:case 306:this.$=r.addDataToNode(r,o[u-1],o[u])({source:s[u],object:!0});break;case 288:case 289:case 307:case 308:this.$=r.addDataToNode(r,o[u-3],o[u])({source:s[u-2],guard:s[u]});break;case 290:case 291:case 309:case 310:this.$=r.addDataToNode(r,o[u-3],o[u])({source:s[u-2],guard:s[u],object:!0});break;case 292:case 293:case 311:case 312:this.$=r.addDataToNode(r,o[u-3],o[u])({source:s[u-2],step:s[u]});break;case 294:case 295:case 296:case 297:case 313:case 314:case 315:case 316:this.$=r.addDataToNode(r,o[u-5],o[u])({source:s[u-4],guard:s[u-2],step:s[u]});break;case 298:case 299:case 300:case 301:case 317:case 318:case 319:case 320:this.$=r.addDataToNode(r,o[u-5],o[u])({source:s[u-4],step:s[u-2],guard:s[u]});break;case 302:case 321:this.$=r.addDataToNode(r,o[u-1],o[u])({source:s[u],from:!0});break;case 303:case 304:case 322:case 323:this.$=r.addDataToNode(r,o[u-3],o[u])({source:s[u-2],guard:s[u],from:!0});break;case 324:case 325:this.$=r.addDataToNode(r,o[u-4],o[u])(new r.Switch(s[u-3],s[u-1]));break;case 326:case 327:this.$=r.addDataToNode(r,o[u-6],o[u])(new r.Switch(s[u-5],s[u-3],s[u-1]));break;case 328:this.$=r.addDataToNode(r,o[u-3],o[u])(new r.Switch(null,s[u-1]));break;case 329:this.$=r.addDataToNode(r,o[u-5],o[u])(new r.Switch(null,s[u-3],s[u-1]));break;case 332:this.$=r.addDataToNode(r,o[u-2],o[u])([[s[u-1],s[u]]]);break;case 333:this.$=r.addDataToNode(r,o[u-3],o[u])([[s[u-2],s[u-1]]]);break;case 334:case 340:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.If(s[u-1],s[u],{type:s[u-2]}));break;case 335:case 341:this.$=r.addDataToNode(r,o[u-4],o[u])(s[u-4].addElse(r.addDataToNode(r,o[u-2],o[u])(new r.If(s[u-1],s[u],{type:s[u-2]}))));break;case 337:case 343:this.$=r.addDataToNode(r,o[u-2],o[u])(s[u-2].addElse(s[u]));break;case 338:case 339:case 344:case 345:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.If(s[u],r.addDataToNode(r,o[u-2])(r.Block.wrap([s[u-2]])),{type:s[u-1],statement:!0}));break;case 349:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Op("-",s[u]));break;case 350:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Op("+",s[u]));break;case 352:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Op("--",s[u]));break;case 353:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Op("++",s[u]));break;case 354:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Op("--",s[u-1],null,!0));break;case 355:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Op("++",s[u-1],null,!0));break;case 356:this.$=r.addDataToNode(r,o[u-1],o[u])(new r.Existence(s[u-1]));break;case 357:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Op("+",s[u-2],s[u]));break;case 358:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Op("-",s[u-2],s[u]));break;case 359:case 360:case 361:case 362:case 363:case 364:case 365:case 366:case 367:case 368:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Op(s[u-1],s[u-2],s[u]));break;case 369:this.$=r.addDataToNode(r,o[u-2],o[u])(function(){return"!"===s[u-1].charAt(0)?(new r.Op(s[u-1].slice(1),s[u-2],s[u])).invert():new r.Op(s[u-1],s[u-2],s[u])}());break;case 370:this.$=r.addDataToNode(r,o[u-2],o[u])(new r.Assign(s[u-2],s[u],s[u-1]));break;case 371:this.$=r.addDataToNode(r,o[u-4],o[u])(new r.Assign(s[u-4],s[u-1],s[u-3]));break;case 372:this.$=r.addDataToNode(r,o[u-3],o[u])(new r.Assign(s[u-3],s[u],s[u-2]))}},table:[{1:[2,1],3:1,4:2,5:3,7:4,8:5,9:6,10:7,11:27,12:28,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:r,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:w,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{1:[3]},{1:[2,2],6:X},t(V,[2,3]),t($,[2,6],{151:111,154:112,158:116,148:J,150:K,156:Q,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t($,[2,7]),t($,[2,8],{158:116,151:118,154:119,148:J,150:K,156:Q,174:ht}),t($,[2,9]),t(pt,[2,16],{124:120,99:121,104:127,45:dt,46:dt,126:dt,80:vt,81:mt,101:gt,102:yt,103:bt,105:wt,125:Et}),t(pt,[2,17],{104:127,99:130,80:vt,81:mt,101:gt,102:yt,103:bt,105:wt}),t(pt,[2,18]),t(pt,[2,19]),t(pt,[2,20]),t(pt,[2,21]),t(pt,[2,22]),t(pt,[2,23]),t(pt,[2,24]),t(pt,[2,25]),t(pt,[2,26]),t(pt,[2,27]),t($,[2,28]),t($,[2,29]),t($,[2,30]),t(St,[2,12]),t(St,[2,13]),t(St,[2,14]),t(St,[2,15]),t($,[2,10]),t($,[2,11]),t(xt,Tt,{61:[1,131]}),t(xt,[2,123]),t(xt,[2,124]),t(xt,[2,125]),t(xt,Nt),t(xt,[2,127]),t(xt,[2,128]),t(Ct,kt,{87:132,94:133,95:134,37:136,67:137,96:138,73:139,38:i,39:s,68:Lt,70:At,107:T,130:Ot}),{5:143,7:4,8:5,9:6,10:7,11:27,12:28,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:r,34:142,35:Mt,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:w,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:145,8:146,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:150,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:156,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:157,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:158,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:[1,159],85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{17:161,18:162,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:163,67:79,68:g,73:62,74:31,75:35,76:34,77:y,86:Pt,89:152,90:S,91:x,96:61,98:160,100:32,107:T,129:L,130:A,145:_},{17:161,18:162,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:163,67:79,68:g,73:62,74:31,75:35,76:34,77:y,86:Pt,89:152,90:S,91:x,96:61,98:164,100:32,107:T,129:L,130:A,145:_},t(jt,Ft,{180:[1,165],181:[1,166],194:[1,167]}),t(pt,[2,336],{169:[1,168]}),{34:169,35:Mt},{34:170,35:Mt},{34:171,35:Mt},t(pt,[2,266]),{34:172,35:Mt},{34:173,35:Mt},{7:174,8:175,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,35:[1,176],37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(It,[2,147],{53:30,74:31,100:32,51:33,76:34,75:35,96:61,73:62,42:63,48:65,37:78,67:79,44:88,89:152,17:161,18:162,60:163,34:177,98:179,35:Mt,38:i,39:s,43:o,45:u,46:a,49:f,50:l,54:c,55:h,56:p,57:d,58:v,59:m,68:g,77:y,86:Pt,90:S,91:x,107:T,111:[1,178],129:L,130:A,145:_}),{7:180,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,35:[1,181],37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t([1,6,35,36,47,69,70,93,127,135,146,148,149,150,156,157,174,182,183,184,185,186,187,188,189,190,191,192,193],qt,{17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,13:23,15:25,16:26,60:29,53:30,74:31,100:32,51:33,76:34,75:35,98:45,172:46,151:48,147:49,152:50,154:51,155:52,96:61,73:62,42:63,48:65,37:78,67:79,158:85,44:88,89:152,9:154,7:182,14:n,32:_t,33:Rt,38:i,39:s,43:o,45:u,46:a,49:f,50:l,54:c,55:h,56:p,57:d,58:v,59:m,68:g,77:y,84:[1,184],85:Dt,86:Pt,90:S,91:x,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,153:H,167:j,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W}),t($,[2,342],{169:[1,185]}),t([1,6,36,47,69,70,93,127,135,146,148,149,150,156,157,174],Ut,{17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,13:23,15:25,16:26,60:29,53:30,74:31,100:32,51:33,76:34,75:35,98:45,172:46,151:48,147:49,152:50,154:51,155:52,96:61,73:62,42:63,48:65,37:78,67:79,158:85,44:88,89:152,9:154,7:186,14:n,32:_t,35:zt,38:i,39:s,43:o,45:u,46:a,49:f,50:l,54:c,55:h,56:p,57:d,58:v,59:m,68:g,77:y,84:b,85:Dt,86:Pt,90:S,91:x,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,153:H,167:j,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W}),{37:192,38:i,39:s,44:188,45:u,46:a,107:[1,191],113:189,114:190,119:Wt},{26:195,37:196,38:i,39:s,107:[1,194],110:N,118:[1,197],122:[1,198]},t(jt,[2,120]),t(jt,[2,121]),t(xt,[2,45]),t(xt,[2,46]),t(xt,[2,47]),t(xt,[2,48]),t(xt,[2,49]),t(xt,[2,50]),t(xt,[2,51]),t(xt,[2,52]),{4:199,5:3,7:4,8:5,9:6,10:7,11:27,12:28,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:r,35:[1,200],37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:w,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:201,8:202,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,35:Xt,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,69:Vt,70:$t,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,93:Jt,96:61,97:211,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,131:204,132:205,136:210,137:207,138:206,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{80:Kt,81:Qt,124:213,125:Et,126:dt},t(xt,[2,200]),t(xt,[2,201],{40:216,41:Gt}),t(Yt,[2,95]),t(Yt,[2,96]),t(Zt,[2,115]),t(Zt,[2,118]),{7:218,8:219,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:220,8:221,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:222,8:223,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:225,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,34:224,35:Mt,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{37:230,38:i,39:s,67:231,68:g,73:233,96:232,100:226,107:T,130:Ot,161:227,162:en,163:229},{159:234,160:235,164:[1,236],165:[1,237],166:[1,238]},t([6,35,93,109],tn,{44:88,108:239,62:240,63:241,64:242,66:243,42:244,71:246,37:247,40:248,67:249,72:251,73:252,74:253,75:254,76:255,38:i,39:s,41:Gt,43:o,45:u,46:a,68:nn,70:rn,77:sn,107:T,129:L,130:A,145:_}),t(on,[2,39]),t(on,[2,40]),t(xt,[2,43]),{17:161,18:162,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:257,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:163,67:79,68:g,73:62,74:31,75:35,76:34,77:y,86:Pt,89:152,90:S,91:x,96:61,98:258,100:32,107:T,129:L,130:A,145:_},t(un,[2,36]),t(un,[2,37]),t(an,[2,41]),{4:259,5:3,7:4,8:5,9:6,10:7,11:27,12:28,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:r,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:w,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(V,[2,5],{7:4,8:5,9:6,10:7,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,13:23,15:25,16:26,11:27,12:28,60:29,53:30,74:31,100:32,51:33,76:34,75:35,89:37,98:45,172:46,151:48,147:49,152:50,154:51,155:52,175:57,96:61,73:62,42:63,48:65,37:78,67:79,158:85,44:88,5:260,14:n,32:r,38:i,39:s,43:o,45:u,46:a,49:f,50:l,54:c,55:h,56:p,57:d,58:v,59:m,68:g,77:y,84:b,85:w,86:E,90:S,91:x,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,148:D,150:P,153:H,156:B,167:j,173:F,176:I,177:q,178:R,179:U,180:z,181:W}),t(pt,[2,356]),{7:261,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:262,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:263,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:264,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:265,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:266,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:267,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:268,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:269,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:270,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:271,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:272,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:273,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:274,8:275,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(pt,[2,265]),t(pt,[2,270]),{7:220,8:276,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:222,8:277,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{37:230,38:i,39:s,67:231,68:g,73:233,96:232,100:278,107:T,130:Ot,161:227,162:en,163:229},{159:234,164:[1,279],165:[1,280],166:[1,281]},{7:282,8:283,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(pt,[2,264]),t(pt,[2,269]),{44:284,45:u,46:a,78:285,126:fn},t(Zt,[2,116]),t(ln,[2,197]),{40:287,41:Gt},{40:288,41:Gt},t(Zt,[2,135],{40:289,41:Gt}),{40:290,41:Gt},t(Zt,[2,136]),{7:292,8:294,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,70:cn,73:62,74:31,75:35,76:34,77:y,82:291,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,106:293,107:T,110:N,112:C,120:k,129:L,130:A,134:295,135:hn,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{81:mt,104:298,105:wt},t(Zt,[2,117]),{6:[1,300],7:299,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,35:[1,301],37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t(pn,dn,{92:304,88:[1,302],93:vn}),t(mn,[2,100]),t(mn,[2,104],{61:[1,306],70:[1,305]}),t(mn,[2,108],{37:136,67:137,96:138,73:139,95:307,38:i,39:s,68:Lt,107:T,130:Ot}),t(gn,[2,109]),t(gn,[2,110]),t(gn,[2,111]),t(gn,[2,112]),{40:216,41:Gt},{7:308,8:309,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,35:Xt,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,69:Vt,70:$t,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,93:Jt,96:61,97:211,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,131:204,132:205,136:210,137:207,138:206,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(yn,[2,92]),t($,[2,94]),{4:311,5:3,7:4,8:5,9:6,10:7,11:27,12:28,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:r,36:[1,310],37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:w,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(bn,wn,{151:111,154:112,158:116,182:et}),t($,[2,346]),{7:158,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{148:J,150:K,151:118,154:119,156:Q,158:116,174:ht},t([1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,157,174,182,183,184,185,186,187,188,189,190,191,192,193],qt,{17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,13:23,15:25,16:26,60:29,53:30,74:31,100:32,51:33,76:34,75:35,98:45,172:46,151:48,147:49,152:50,154:51,155:52,96:61,73:62,42:63,48:65,37:78,67:79,158:85,44:88,89:152,9:154,7:182,14:n,32:_t,33:Rt,38:i,39:s,43:o,45:u,46:a,49:f,50:l,54:c,55:h,56:p,57:d,58:v,59:m,68:g,77:y,84:b,85:Dt,86:Pt,90:S,91:x,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,153:H,167:j,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W}),t(En,[2,348],{151:111,154:112,158:116,182:et,184:nt}),t(Ct,kt,{94:133,95:134,37:136,67:137,96:138,73:139,87:313,38:i,39:s,68:Lt,70:At,107:T,130:Ot}),{34:142,35:Mt},{7:314,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{148:J,150:K,151:118,154:119,156:Q,158:116,174:[1,315]},{7:316,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t(En,[2,349],{151:111,154:112,158:116,182:et,184:nt}),t(En,[2,350],{151:111,154:112,158:116,182:et,184:nt}),t(bn,[2,351],{151:111,154:112,158:116,182:et}),t($,[2,90],{17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,13:23,15:25,16:26,60:29,53:30,74:31,100:32,51:33,76:34,75:35,98:45,172:46,151:48,147:49,152:50,154:51,155:52,96:61,73:62,42:63,48:65,37:78,67:79,158:85,44:88,89:152,9:154,7:317,14:n,32:_t,38:i,39:s,43:o,45:u,46:a,49:f,50:l,54:c,55:h,56:p,57:d,58:v,59:m,68:g,77:y,84:b,85:Dt,86:Pt,90:S,91:x,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,148:Ut,150:Ut,156:Ut,174:Ut,153:H,167:j,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W}),t(pt,[2,352],{45:Ft,46:Ft,80:Ft,81:Ft,101:Ft,102:Ft,103:Ft,105:Ft,125:Ft,126:Ft}),t(ln,dt,{124:120,99:121,104:127,80:vt,81:mt,101:gt,102:yt,103:bt,105:wt,125:Et}),{80:vt,81:mt,99:130,101:gt,102:yt,103:bt,104:127,105:wt},t(Sn,Tt),t(pt,[2,353],{45:Ft,46:Ft,80:Ft,81:Ft,101:Ft,102:Ft,103:Ft,105:Ft,125:Ft,126:Ft}),t(pt,[2,354]),t(pt,[2,355]),{6:[1,320],7:318,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,35:[1,319],37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{34:321,35:Mt,173:[1,322]},t(pt,[2,241],{141:323,142:[1,324],143:[1,325]}),t(pt,[2,262]),t(pt,[2,263]),t(pt,[2,271]),t(pt,[2,272]),{35:[1,326],148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[1,327]},{168:328,170:329,171:xn},t(pt,[2,148]),{7:331,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t(It,[2,151],{34:332,35:Mt,45:Ft,46:Ft,80:Ft,81:Ft,101:Ft,102:Ft,103:Ft,105:Ft,125:Ft,126:Ft,111:[1,333]}),t(Tn,[2,248],{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{73:334,107:T},t(Tn,[2,32],{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{7:335,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t([1,6,36,47,69,70,93,127,135,146,149,157],[2,88],{17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,13:23,15:25,16:26,60:29,53:30,74:31,100:32,51:33,76:34,75:35,98:45,172:46,151:48,147:49,152:50,154:51,155:52,96:61,73:62,42:63,48:65,37:78,67:79,158:85,44:88,89:152,9:154,7:336,14:n,32:_t,35:zt,38:i,39:s,43:o,45:u,46:a,49:f,50:l,54:c,55:h,56:p,57:d,58:v,59:m,68:g,77:y,84:b,85:Dt,86:Pt,90:S,91:x,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,148:Ut,150:Ut,156:Ut,174:Ut,153:H,167:j,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W}),{34:337,35:Mt,173:[1,338]},t(St,Nn,{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{73:339,107:T},t(St,[2,155]),{33:[1,340],93:[1,341]},{33:[1,342]},{35:Cn,37:347,38:i,39:s,109:[1,343],115:344,116:345,118:kn},t([33,93],[2,171]),{117:[1,349]},{35:Ln,37:354,38:i,39:s,109:[1,350],118:An,121:351,123:352},t(St,[2,175]),{61:[1,356]},{7:357,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,35:[1,358],37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{33:[1,359]},{6:X,146:[1,360]},{4:361,5:3,7:4,8:5,9:6,10:7,11:27,12:28,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:r,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:w,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(On,Mn,{151:111,154:112,158:116,134:362,70:[1,363],135:hn,148:J,150:K,156:Q,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(On,_n,{134:364,70:cn,135:hn}),t(Dn,[2,203]),{7:308,8:309,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,69:[1,365],70:$t,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,93:Jt,96:61,97:211,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,136:367,138:366,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t([6,35,69],dn,{133:368,92:370,93:Pn}),t(Hn,[2,234]),t(Bn,[2,225]),{7:308,8:309,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,35:Xt,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,70:$t,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,93:Jt,96:61,97:211,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,131:372,132:371,136:210,137:207,138:206,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(Hn,[2,236]),t(Bn,[2,230]),t(jn,[2,223]),t(jn,[2,224],{17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,13:23,15:25,16:26,60:29,53:30,74:31,100:32,51:33,76:34,75:35,98:45,172:46,151:48,147:49,152:50,154:51,155:52,96:61,73:62,42:63,48:65,37:78,67:79,158:85,44:88,89:152,9:154,7:373,14:n,32:_t,38:i,39:s,43:o,45:u,46:a,49:f,50:l,54:c,55:h,56:p,57:d,58:v,59:m,68:g,77:y,84:b,85:Dt,86:Pt,90:S,91:x,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,148:D,150:P,153:H,156:B,167:j,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W}),{78:374,126:fn},{40:375,41:Gt},{7:376,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t(Fn,[2,202]),t(Fn,[2,38]),{34:377,35:Mt,148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{34:378,35:Mt},t(In,[2,256],{151:111,154:112,158:116,148:J,149:[1,379],150:K,156:Q,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{35:[2,252],149:[1,380]},t(In,[2,259],{151:111,154:112,158:116,148:J,149:[1,381],150:K,156:Q,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{35:[2,254],149:[1,382]},t(pt,[2,267]),t(qn,[2,268],{151:111,154:112,158:116,148:J,150:K,156:Q,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{35:Rn,157:[1,383]},t(Un,[2,278]),{37:230,38:i,39:s,67:231,68:Lt,73:233,96:232,107:T,130:Ot,161:384,163:229},t(Un,[2,284],{93:[1,385]}),t(zn,[2,280]),t(zn,[2,281]),t(zn,[2,282]),t(zn,[2,283]),t(pt,[2,275]),{35:[2,277]},{7:386,8:387,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:388,8:389,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:390,8:391,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(Wn,dn,{92:392,93:Xn}),t(Vn,[2,143]),t(Vn,[2,56],{65:[1,394]}),t(Vn,[2,57]),t($n,[2,66],{78:397,79:398,61:[1,395],70:[1,396],80:Jn,81:Kn,126:fn}),t($n,[2,67]),{37:247,38:i,39:s,40:248,41:Gt,66:401,67:249,68:nn,71:402,72:251,73:252,74:253,75:254,76:255,77:sn,107:T,129:L,130:A,145:_},{70:[1,403],78:404,79:405,80:Jn,81:Kn,126:fn},t(Qn,[2,62]),t(Qn,[2,63]),t(Qn,[2,64]),{7:406,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t(Gn,[2,72]),t(Gn,[2,73]),t(Gn,[2,74]),t(Gn,[2,75]),t(Gn,[2,76]),{78:407,80:Kt,81:Qt,126:fn},t(Sn,Nt,{52:[1,408]}),t(Sn,Ft),{6:X,47:[1,409]},t(V,[2,4]),t(Yn,[2,357],{151:111,154:112,158:116,182:et,183:tt,184:nt}),t(Yn,[2,358],{151:111,154:112,158:116,182:et,183:tt,184:nt}),t(En,[2,359],{151:111,154:112,158:116,182:et,184:nt}),t(En,[2,360],{151:111,154:112,158:116,182:et,184:nt}),t([1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,157,174,185,186,187,188,189,190,191,192,193],[2,361],{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt}),t([1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,157,174,186,187,188,189,190,191,192],[2,362],{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,193:ct}),t([1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,157,174,187,188,189,190,191,192],[2,363],{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,193:ct}),t([1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,157,174,188,189,190,191,192],[2,364],{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,193:ct}),t([1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,157,174,189,190,191,192],[2,365],{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,193:ct}),t([1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,157,174,190,191,192],[2,366],{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,193:ct}),t([1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,157,174,191,192],[2,367],{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,193:ct}),t([1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,157,174,192],[2,368],{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,193:ct}),t([1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,157,174,186,187,188,189,190,191,192,193],[2,369],{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt}),t(qn,Zn,{151:111,154:112,158:116,148:J,150:K,156:Q,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t($,[2,345]),{149:[1,410]},{149:[1,411]},t([1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,149,150,156,174,178,179,182,183,184,185,186,187,188,189,190,191,192,193],Rn,{157:[1,412]}),{7:413,8:414,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:415,8:416,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:417,8:418,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(qn,er,{151:111,154:112,158:116,148:J,150:K,156:Q,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t($,[2,344]),t(tr,[2,193]),t(tr,[2,194]),{7:308,8:309,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,35:nr,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,70:$t,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,97:211,98:45,100:32,107:T,110:N,112:C,120:k,127:[1,419],128:420,129:L,130:A,136:421,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(Zt,[2,131]),t(Zt,[2,132]),t(Zt,[2,133]),t(Zt,[2,134]),{83:[1,423]},{70:cn,83:[2,139],134:424,135:hn,148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{83:[2,140]},{70:cn,134:425,135:hn},{7:426,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,83:[2,215],84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t(rr,[2,206]),t(rr,ir),t(Zt,[2,138]),t(Tn,[2,53],{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{7:427,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:428,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{89:429,90:S,91:x},t(sr,or,{95:134,37:136,67:137,96:138,73:139,94:430,38:i,39:s,68:Lt,70:At,107:T,130:Ot}),{6:ur,35:ar},t(mn,[2,105]),{7:433,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t(mn,[2,106]),t(jn,Mn,{151:111,154:112,158:116,70:[1,434],148:J,150:K,156:Q,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(jn,_n),t(fr,[2,34]),{6:X,36:[1,435]},{7:436,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t(pn,dn,{92:304,88:[1,437],93:vn}),t(bn,wn,{151:111,154:112,158:116,182:et}),{7:438,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{34:377,35:Mt,148:J,150:K,151:111,154:112,156:Q,158:116,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},t($,[2,89],{151:111,154:112,158:116,148:Nn,150:Nn,156:Nn,174:Nn,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(Tn,[2,370],{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{7:439,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:440,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t(pt,[2,337]),{7:441,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t(pt,[2,242],{142:[1,442]}),{34:443,35:Mt},{34:446,35:Mt,37:444,38:i,39:s,73:445,107:T},{168:447,170:329,171:xn},{168:448,170:329,171:xn},{36:[1,449],169:[1,450],170:451,171:xn},t(cr,[2,330]),{7:453,8:454,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,139:452,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(hr,[2,149],{151:111,154:112,158:116,34:455,35:Mt,148:J,150:K,156:Q,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(pt,[2,152]),{7:456,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{36:[1,457]},t(Tn,[2,33],{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t($,[2,87],{151:111,154:112,158:116,148:Nn,150:Nn,156:Nn,174:Nn,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t($,[2,343]),{7:459,8:458,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{36:[1,460]},{44:461,45:u,46:a},{107:[1,463],114:462,119:Wt},{44:464,45:u,46:a},{33:[1,465]},t(Wn,dn,{92:466,93:pr}),t(Vn,[2,162]),{35:Cn,37:347,38:i,39:s,115:468,116:345,118:kn},t(Vn,[2,167],{117:[1,469]}),t(Vn,[2,169],{117:[1,470]}),{37:471,38:i,39:s},t(St,[2,173]),t(Wn,dn,{92:472,93:dr}),t(Vn,[2,183]),{35:Ln,37:354,38:i,39:s,118:An,121:474,123:352},t(Vn,[2,188],{117:[1,475]}),t(Vn,[2,191],{117:[1,476]}),{6:[1,478],7:477,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,35:[1,479],37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t(vr,[2,179],{151:111,154:112,158:116,148:J,150:K,156:Q,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{73:480,107:T},{44:481,45:u,46:a},t(xt,[2,250]),{6:X,36:[1,482]},{7:483,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t([14,32,38,39,43,45,46,49,50,54,55,56,57,58,59,68,77,84,85,86,90,91,107,110,112,120,129,130,140,144,145,148,150,153,156,167,173,176,177,178,179,180,181],ir,{6:mr,35:mr,69:mr,93:mr}),{7:484,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t(Dn,[2,204]),t(Hn,[2,235]),t(Bn,[2,231]),{6:gr,35:yr,69:[1,485]},t(br,or,{17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,13:23,15:25,16:26,60:29,53:30,74:31,100:32,51:33,76:34,75:35,89:37,98:45,172:46,151:48,147:49,152:50,154:51,155:52,175:57,96:61,73:62,42:63,48:65,37:78,67:79,158:85,44:88,9:148,138:206,136:210,97:211,7:308,8:309,137:488,131:489,14:n,32:_t,38:i,39:s,43:o,45:u,46:a,49:f,50:l,54:c,55:h,56:p,57:d,58:v,59:m,68:g,70:$t,77:y,84:b,85:Dt,86:E,90:S,91:x,93:Jt,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,148:D,150:P,153:H,156:B,167:j,173:F,176:I,177:q,178:R,179:U,180:z,181:W}),t(br,[2,232]),t(sr,dn,{92:370,133:490,93:Pn}),{7:308,8:309,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,70:$t,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,93:Jt,96:61,97:211,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,136:367,138:366,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(jn,[2,114],{151:111,154:112,158:116,148:J,150:K,156:Q,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(tr,[2,195]),t(xt,[2,129]),{83:[1,491],148:J,150:K,151:111,154:112,156:Q,158:116,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},t(wr,[2,334]),t(Er,[2,340]),{7:492,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:493,8:494,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:495,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:496,8:497,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:498,8:499,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(Un,[2,279]),{37:230,38:i,39:s,67:231,68:Lt,73:233,96:232,107:T,130:Ot,163:500},{35:Sr,148:J,149:[1,501],150:K,151:111,154:112,156:Q,157:[1,502],158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,305],149:[1,503],157:[1,504]},{35:xr,148:J,149:[1,505],150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,306],149:[1,506]},{35:Tr,148:J,149:[1,507],150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,321],149:[1,508]},{6:Nr,35:Cr,109:[1,509]},t(kr,or,{44:88,63:241,64:242,66:243,42:244,71:246,37:247,40:248,67:249,72:251,73:252,74:253,75:254,76:255,62:512,38:i,39:s,41:Gt,43:o,45:u,46:a,68:nn,70:rn,77:sn,107:T,129:L,130:A,145:_}),{7:513,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,35:[1,514],37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:515,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,35:[1,516],37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t(Vn,[2,68]),t(Gn,[2,78]),t(Gn,[2,80]),{40:517,41:Gt},{7:292,8:294,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,70:cn,73:62,74:31,75:35,76:34,77:y,82:518,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,106:293,107:T,110:N,112:C,120:k,129:L,130:A,134:295,135:hn,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(Vn,[2,69],{78:397,79:398,80:Jn,81:Kn,126:fn}),t(Vn,[2,71],{78:404,79:405,80:Jn,81:Kn,126:fn}),t(Vn,[2,70]),t(Gn,[2,79]),t(Gn,[2,81]),{69:[1,519],148:J,150:K,151:111,154:112,156:Q,158:116,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},t(Gn,[2,77]),t(xt,[2,44]),t(an,[2,42]),{7:520,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:521,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:522,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t([1,6,35,36,47,69,70,83,88,93,109,127,135,146,148,150,156,174],Sr,{151:111,154:112,158:116,149:[1,523],157:[1,524],178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{149:[1,525],157:[1,526]},t(Lr,xr,{151:111,154:112,158:116,149:[1,527],178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{149:[1,528]},t(Lr,Tr,{151:111,154:112,158:116,149:[1,529],178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{149:[1,530]},t(tr,[2,198]),t([6,35,127],dn,{92:531,93:Ar}),t(Or,[2,216]),{7:308,8:309,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,35:nr,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,70:$t,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,97:211,98:45,100:32,107:T,110:N,112:C,120:k,128:533,129:L,130:A,136:421,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(Zt,[2,137]),{7:534,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,83:[2,211],84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:535,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,83:[2,213],84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{83:[2,214],148:J,150:K,151:111,154:112,156:Q,158:116,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},t(Tn,[2,54],{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{36:[1,536],148:J,150:K,151:111,154:112,156:Q,158:116,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{5:538,7:4,8:5,9:6,10:7,11:27,12:28,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:r,34:537,35:Mt,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:w,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(mn,[2,101]),{37:136,38:i,39:s,67:137,68:Lt,70:At,73:139,94:539,95:134,96:138,107:T,130:Ot},t(Mr,kt,{94:133,95:134,37:136,67:137,96:138,73:139,87:540,38:i,39:s,68:Lt,70:At,107:T,130:Ot}),t(mn,[2,107],{151:111,154:112,158:116,148:J,150:K,156:Q,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(jn,mr),t(fr,[2,35]),t(qn,Zn,{151:111,154:112,158:116,148:J,150:K,156:Q,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{89:541,90:S,91:x},t(qn,er,{151:111,154:112,158:116,148:J,150:K,156:Q,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{36:[1,542],148:J,150:K,151:111,154:112,156:Q,158:116,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},t(Tn,[2,372],{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{34:543,35:Mt,148:J,150:K,151:111,154:112,156:Q,158:116,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{34:544,35:Mt},t(pt,[2,243]),{34:545,35:Mt},{34:546,35:Mt},t(_r,[2,247]),{36:[1,547],169:[1,548],170:451,171:xn},{36:[1,549],169:[1,550],170:451,171:xn},t(pt,[2,328]),{34:551,35:Mt},t(cr,[2,331]),{34:552,35:Mt,93:[1,553]},t(Dr,[2,237],{151:111,154:112,158:116,148:J,150:K,156:Q,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(Dr,[2,238]),t(pt,[2,150]),t(hr,[2,153],{151:111,154:112,158:116,34:554,35:Mt,148:J,150:K,156:Q,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(pt,[2,249]),{34:555,35:Mt},{148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},t(St,[2,85]),t(St,[2,156]),{33:[1,556]},{35:Cn,37:347,38:i,39:s,115:557,116:345,118:kn},t(St,[2,157]),{44:558,45:u,46:a},{6:Pr,35:Hr,109:[1,559]},t(kr,or,{37:347,116:562,38:i,39:s,118:kn}),t(sr,dn,{92:563,93:pr}),{37:564,38:i,39:s},{37:565,38:i,39:s},{33:[2,172]},{6:Br,35:jr,109:[1,566]},t(kr,or,{37:354,123:569,38:i,39:s,118:An}),t(sr,dn,{92:570,93:dr}),{37:571,38:i,39:s,118:[1,572]},{37:573,38:i,39:s},t(vr,[2,176],{151:111,154:112,158:116,148:J,150:K,156:Q,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{7:574,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:575,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{36:[1,576]},t(St,[2,181]),{146:[1,577]},{69:[1,578],148:J,150:K,151:111,154:112,156:Q,158:116,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{69:[1,579],148:J,150:K,151:111,154:112,156:Q,158:116,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},t(Dn,[2,205]),{7:308,8:309,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,70:$t,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,93:Jt,96:61,97:211,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,131:372,136:210,137:580,138:206,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:308,8:309,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,35:Xt,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,70:$t,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,93:Jt,96:61,97:211,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,131:372,132:581,136:210,137:207,138:206,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(Bn,[2,226]),t(br,[2,233],{17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,13:23,15:25,16:26,60:29,53:30,74:31,100:32,51:33,76:34,75:35,89:37,98:45,172:46,151:48,147:49,152:50,154:51,155:52,175:57,96:61,73:62,42:63,48:65,37:78,67:79,158:85,44:88,9:148,97:211,7:308,8:309,138:366,136:367,14:n,32:_t,38:i,39:s,43:o,45:u,46:a,49:f,50:l,54:c,55:h,56:p,57:d,58:v,59:m,68:g,70:$t,77:y,84:b,85:Dt,86:E,90:S,91:x,93:Jt,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,148:D,150:P,153:H,156:B,167:j,173:F,176:I,177:q,178:R,179:U,180:z,181:W}),{6:gr,35:yr,36:[1,582]},t(xt,[2,130]),t(qn,[2,257],{151:111,154:112,158:116,148:J,150:K,156:Q,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{35:Fr,148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,253]},t(qn,[2,260],{151:111,154:112,158:116,148:J,150:K,156:Q,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{35:Ir,148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,255]},{35:qr,148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,276]},t(Un,[2,285]),{7:583,8:584,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:585,8:586,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:587,8:588,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:589,8:590,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:591,8:592,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:593,8:594,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:595,8:596,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:597,8:598,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(Dn,[2,141]),{37:247,38:i,39:s,40:248,41:Gt,42:244,43:o,44:88,45:u,46:a,62:599,63:241,64:242,66:243,67:249,68:nn,70:rn,71:246,72:251,73:252,74:253,75:254,76:255,77:sn,107:T,129:L,130:A,145:_},t(Mr,tn,{44:88,62:240,63:241,64:242,66:243,42:244,71:246,37:247,40:248,67:249,72:251,73:252,74:253,75:254,76:255,108:600,38:i,39:s,41:Gt,43:o,45:u,46:a,68:nn,70:rn,77:sn,107:T,129:L,130:A,145:_}),t(Vn,[2,144]),t(Vn,[2,58],{151:111,154:112,158:116,148:J,150:K,156:Q,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{7:601,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t(Vn,[2,60],{151:111,154:112,158:116,148:J,150:K,156:Q,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{7:602,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t(Gn,[2,82]),{83:[1,603]},t(Qn,[2,65]),t(qn,Fr,{151:111,154:112,158:116,148:J,150:K,156:Q,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(qn,Ir,{151:111,154:112,158:116,148:J,150:K,156:Q,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(qn,qr,{151:111,154:112,158:116,148:J,150:K,156:Q,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{7:604,8:605,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:606,8:607,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:608,8:609,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:610,8:611,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:612,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:613,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:614,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:615,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{6:Rr,35:Ur,127:[1,616]},t([6,35,36,127],or,{17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,13:23,15:25,16:26,60:29,53:30,74:31,100:32,51:33,76:34,75:35,89:37,98:45,172:46,151:48,147:49,152:50,154:51,155:52,175:57,96:61,73:62,42:63,48:65,37:78,67:79,158:85,44:88,9:148,97:211,7:308,8:309,136:619,14:n,32:_t,38:i,39:s,43:o,45:u,46:a,49:f,50:l,54:c,55:h,56:p,57:d,58:v,59:m,68:g,70:$t,77:y,84:b,85:Dt,86:E,90:S,91:x,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,148:D,150:P,153:H,156:B,167:j,173:F,176:I,177:q,178:R,179:U,180:z,181:W}),t(sr,dn,{92:620,93:Ar}),{83:[2,210],148:J,150:K,151:111,154:112,156:Q,158:116,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{83:[2,212],148:J,150:K,151:111,154:112,156:Q,158:116,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},t(pt,[2,55]),t(yn,[2,91]),t($,[2,93]),t(mn,[2,102]),t(sr,dn,{92:621,93:vn}),{34:537,35:Mt},t(pt,[2,371]),t(wr,[2,335]),t(pt,[2,244]),t(_r,[2,245]),t(_r,[2,246]),t(pt,[2,324]),{34:622,35:Mt},t(pt,[2,325]),{34:623,35:Mt},{36:[1,624]},t(cr,[2,332],{6:[1,625]}),{7:626,8:627,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(pt,[2,154]),t(Er,[2,341]),{44:628,45:u,46:a},t(Wn,dn,{92:629,93:pr}),t(St,[2,158]),{33:[1,630]},{37:347,38:i,39:s,116:631,118:kn},{35:Cn,37:347,38:i,39:s,115:632,116:345,118:kn},t(Vn,[2,163]),{6:Pr,35:Hr,36:[1,633]},t(Vn,[2,168]),t(Vn,[2,170]),t(St,[2,174],{33:[1,634]}),{37:354,38:i,39:s,118:An,123:635},{35:Ln,37:354,38:i,39:s,118:An,121:636,123:352},t(Vn,[2,184]),{6:Br,35:jr,36:[1,637]},t(Vn,[2,189]),t(Vn,[2,190]),t(Vn,[2,192]),t(vr,[2,177],{151:111,154:112,158:116,148:J,150:K,156:Q,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{36:[1,638],148:J,150:K,151:111,154:112,156:Q,158:116,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},t(St,[2,180]),t(xt,[2,251]),t(xt,[2,208]),t(xt,[2,209]),t(Bn,[2,227]),t(sr,dn,{92:370,133:639,93:Pn}),t(Bn,[2,228]),{35:zr,148:J,150:K,151:111,154:112,156:Q,157:[1,640],158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,307],157:[1,641]},{35:Wr,148:J,149:[1,642],150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,311],149:[1,643]},{35:Xr,148:J,150:K,151:111,154:112,156:Q,157:[1,644],158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,308],157:[1,645]},{35:Vr,148:J,149:[1,646],150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,312],149:[1,647]},{35:$r,148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,309]},{35:Jr,148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,310]},{35:Kr,148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,322]},{35:Qr,148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,323]},t(Vn,[2,145]),t(sr,dn,{92:648,93:Xn}),{36:[1,649],148:J,150:K,151:111,154:112,156:Q,158:116,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{36:[1,650],148:J,150:K,151:111,154:112,156:Q,158:116,174:lr,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},t(Gn,[2,83]),t(Gr,zr,{151:111,154:112,158:116,157:[1,651],178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{157:[1,652]},t(Lr,Wr,{151:111,154:112,158:116,149:[1,653],178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{149:[1,654]},t(Gr,Xr,{151:111,154:112,158:116,157:[1,655],178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{157:[1,656]},t(Lr,Vr,{151:111,154:112,158:116,149:[1,657],178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{149:[1,658]},t(Tn,$r,{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(Tn,Jr,{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(Tn,Kr,{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(Tn,Qr,{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(tr,[2,199]),{7:308,8:309,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,70:$t,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,97:211,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,136:659,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:308,8:309,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,35:nr,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,70:$t,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,97:211,98:45,100:32,107:T,110:N,112:C,120:k,128:660,129:L,130:A,136:421,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},t(Or,[2,217]),{6:Rr,35:Ur,36:[1,661]},{6:ur,35:ar,36:[1,662]},{36:[1,663]},{36:[1,664]},t(pt,[2,329]),t(cr,[2,333]),t(Dr,[2,239],{151:111,154:112,158:116,148:J,150:K,156:Q,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(Dr,[2,240]),t(St,[2,160]),{6:Pr,35:Hr,109:[1,665]},{44:666,45:u,46:a},t(Vn,[2,164]),t(sr,dn,{92:667,93:pr}),t(Vn,[2,165]),{44:668,45:u,46:a},t(Vn,[2,185]),t(sr,dn,{92:669,93:dr}),t(Vn,[2,186]),t(St,[2,178]),{6:gr,35:yr,36:[1,670]},{7:671,8:672,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:673,8:674,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:675,8:676,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:677,8:678,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:679,8:680,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:681,8:682,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:683,8:684,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{7:685,8:686,9:148,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,29:20,30:21,31:22,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:E,89:37,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:F,175:57,176:I,177:q,178:R,179:U,180:z,181:W},{6:Nr,35:Cr,36:[1,687]},t(Vn,[2,59]),t(Vn,[2,61]),{7:688,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:689,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:690,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:691,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:692,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:693,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:694,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},{7:695,9:154,13:23,14:n,15:25,16:26,17:8,18:9,19:10,20:11,21:12,22:13,23:14,24:15,25:16,26:17,27:18,28:19,32:_t,37:78,38:i,39:s,42:63,43:o,44:88,45:u,46:a,48:65,49:f,50:l,51:33,53:30,54:c,55:h,56:p,57:d,58:v,59:m,60:29,67:79,68:g,73:62,74:31,75:35,76:34,77:y,84:b,85:Dt,86:Pt,89:152,90:S,91:x,96:61,98:45,100:32,107:T,110:N,112:C,120:k,129:L,130:A,140:O,144:M,145:_,147:49,148:D,150:P,151:48,152:50,153:H,154:51,155:52,156:B,158:85,167:j,172:46,173:Ht,176:Bt,177:q,178:R,179:U,180:z,181:W},t(Or,[2,218]),t(sr,dn,{92:696,93:Ar}),t(Or,[2,219]),t(mn,[2,103]),t(pt,[2,326]),t(pt,[2,327]),{33:[1,697]},t(St,[2,159]),{6:Pr,35:Hr,36:[1,698]},t(St,[2,182]),{6:Br,35:jr,36:[1,699]},t(Bn,[2,229]),{35:Yr,148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,313]},{35:Zr,148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,315]},{35:ei,148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,317]},{35:ti,148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,319]},{35:ni,148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,314]},{35:ri,148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,316]},{35:ii,148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,318]},{35:si,148:J,150:K,151:111,154:112,156:Q,158:116,174:G,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct},{35:[2,320]},t(Vn,[2,146]),t(Tn,Yr,{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(Tn,Zr,{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(Tn,ei,{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(Tn,ti,{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(Tn,ni,{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(Tn,ri,{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(Tn,ii,{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),t(Tn,si,{151:111,154:112,158:116,178:Y,179:Z,182:et,183:tt,184:nt,185:rt,186:it,187:st,188:ot,189:ut,190:at,191:ft,192:lt,193:ct}),{6:Rr,35:Ur,36:[1,700]},{44:701,45:u,46:a},t(Vn,[2,166]),t(Vn,[2,187]),t(Or,[2,220]),t(St,[2,161])],defaultActions:{235:[2,277],293:[2,140],471:[2,172],494:[2,253],497:[2,255],499:[2,276],592:[2,309],594:[2,310],596:[2,322],598:[2,323],672:[2,313],674:[2,315],676:[2,317],678:[2,319],680:[2,314],682:[2,316],684:[2,318],686:[2,320]},parseError:function(e,t){if(!t.recoverable){var n=new Error(e);throw n.hash=t,n}this.trace(e)},parse:function(e){var t=this,n=[0],r=[null],i=[],s=this.table,o="",u=0,a=0,f=0,l=1,c=i.slice.call(arguments,1),h=Object.create(this.lexer),p={yy:{}};for(var d in this.yy)Object.prototype.hasOwnProperty.call(this.yy,d)&&(p.yy[d]=this.yy[d]);h.setInput(e,p.yy),p.yy.lexer=h,p.yy.parser=this,"undefined"==typeof h.yylloc&&(h.yylloc={});var v=h.yylloc;i.push(v);var m=h.options&&h.options.ranges;this.parseError="function"==typeof p.yy.parseError?p.yy.parseError:Object.getPrototypeOf(this).parseError;var g=function(){var e;return e=h.lex()||l,"number"!=typeof e&&(e=t.symbols_[e]||e),e};for(var y={},b,w,E,S,x,T,N,C,k;;){if(E=n[n.length-1],this.defaultActions[E]?S=this.defaultActions[E]:((null===b||"undefined"==typeof b)&&(b=g()),S=s[E]&&s[E][b]),"undefined"==typeof S||!S.length||!S[0]){var L="";for(T in k=[],s[E])this.terminals_[T]&&T>2&&k.push("'"+this.terminals_[T]+"'");L=h.showPosition?"Parse error on line "+(u+1)+":\n"+h.showPosition()+"\nExpecting "+k.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(u+1)+": Unexpected "+(b==l?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(L,{text:h.match,token:this.terminals_[b]||b,line:h.yylineno,loc:v,expected:k})}if(S[0]instanceof Array&&1t.call(this.compiledComments,u))&&(this.compiledComments.push(u),a=u.here?(new O(u)).compileNode(n):(new Q(u)).compileNode(n),a.isHereComment&&!a.newLine||r.includeCommentFragments()?h(a):(0===i.length&&i.push(this.makeCode("")),a.unshift?(null==(s=i[0]).precedingComments&&(s.precedingComments=[]),i[0].precedingComments.push(a)):(null==(o=i[i.length-1]).followingComments&&(o.followingComments=[]),i[i.length-1].followingComments.push(a))));return i}},{key:"cache",value:function(t,n,r){var i,s,u;return i=null==r?this.shouldCache():r(this),i?(s=new _(t.scope.freeVariable("ref")),u=new o(s,this),n?[u.compileToFragments(t,n),[this.makeCode(s.value)]]:[u,s]):(s=n?this.compileToFragments(t,n):this,[s,s])}},{key:"hoist",value:function(){var t,n,r;return this.hoisted=!0,r=new M(this),t=this.compileNode,n=this.compileToFragments,this.compileNode=function(e){return r.update(t,e)},this.compileToFragments=function(e){return r.update(n,e)},r}},{key:"cacheToCodeFragments",value:function(t){return[Xt(t[0]),Xt(t[1])]}},{key:"makeReturn",value:function(t){var n;return n=this.unwrapAll(),t?new h(new G(t+".push"),[n]):new vt(n)}},{key:"contains",value:function(t){var n;return n=void 0,this.traverseChildren(!1,function(e){if(t(e))return n=e,!1}),n}},{key:"lastNode",value:function(t){return 0===t.length?null:t[t.length-1]}},{key:"toString",value:function r(){var e=0=V?this.wrapInParentheses(i):i)}},{key:"compileRoot",value:function(t){var n,r,i,s,o,u;for(t.indent=t.bare?"":Ct,t.level=K,this.spaced=!0,t.scope=new gt(null,this,null,null==(o=t.referencedVars)?[]:o),u=t.locals||[],r=0,i=u.length;r=$?this.wrapInParentheses(n):n}}]),t}(st),e.StringLiteral=Et=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"compileNode",value:function(){var n;return n=this.csx?[this.makeCode(this.unquote(!0,!0))]:_get(t.prototype.__proto__||Object.getPrototypeOf(t.prototype),"compileNode",this).call(this)}},{key:"unquote",value:function(){var t=0=W?"(void 0)":"void 0")]}}]),t}(G),e.NullLiteral=it=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,"null"))}return _inherits(t,e),t}(G),e.BooleanLiteral=l=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}return _inherits(t,e),t}(G),e.Return=vt=function(){var e=function(e){function n(e){_classCallCheck(this,n);var t=_possibleConstructorReturn(this,(n.__proto__||Object.getPrototypeOf(n)).call(this));return t.expression=e,t}return _inherits(n,e),_createClass(n,[{key:"compileToFragments",value:function(t,r){var i,s;return i=null==(s=this.expression)?void 0:s.makeReturn(),!i||i instanceof n?_get(n.prototype.__proto__||Object.getPrototypeOf(n.prototype),"compileToFragments",this).call(this,t,r):i.compileToFragments(t,r)}},{key:"compileNode",value:function(n){var r,i,s,o;if(r=[],this.expression)for(r=this.expression.compileToFragments(n,J),un(r,this.makeCode(this.tab+"return ")),s=0,o=r.length;sthis.properties.length&&!this.base.shouldCache()&&(null==f||!f.shouldCache()))?[this,this]:(u=new t(this.base,this.properties.slice(0,-1)),u.shouldCache()&&(a=new _(n.scope.freeVariable("base")),u=new t(new ft(new o(a,u)))),!f)?[u,a]:(f.shouldCache()&&(l=new _(n.scope.freeVariable("name")),f=new R(new o(l,f.index)),l=new R(l)),[u.add(f),new t(a||u.base,[l||f])])}},{key:"compileNode",value:function(t){var n,r,i,s,o;for(this.base.front=this.front,o=this.properties,n=o.length&&null!=this.base.cached?this.base.cached:this.base.compileToFragments(t,o.length?W:null),o.length&&mt.test(Xt(n))&&n.push(this.makeCode(".")),r=0,i=o.length;rs.length&&(s=o);this.content=this.content.replace(RegExp("^("+o+")","gm"),"")}return this.content="/*"+this.content+(r?" ":"")+"*/",n=this.makeCode(this.content),n.newLine=this.newLine,n.unshift=this.unshift,n.multiline=f,n.isComment=n.isHereComment=!0,n}}]),n}(a),e.LineComment=Q=function(e){function t(e){var n=e.content,r=e.newLine,i=e.unshift;_classCallCheck(this,t);var s=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return s.content=n,s.newLine=r,s.unshift=i,s}return _inherits(t,e),_createClass(t,[{key:"compileNode",value:function(){var t;return t=this.makeCode(/^\s*$/.test(this.content)?"":"//"+this.content),t.newLine=this.newLine,t.unshift=this.unshift,t.trail=!this.newLine&&!this.unshift,t.isComment=t.isLineComment=!0,t}}]),t}(a),e.Call=h=function(){var e=function(e){function t(e){var n=1")),(m=f).push.apply(m,_toConsumableArray(a.compileNode(t,V))),(g=f).push.apply(g,[this.makeCode("")]))}else f.push(this.makeCode(" />"));return f}}]),t}(a);return e.prototype.children=["variable","args"],e}.call(this),e.SuperCall=Tt=function(){var e=function(e){function t(){return _classCallCheck(this,t),_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}return _inherits(t,e),_createClass(t,[{key:"isStatement",value:function(t){var n;return(null==(n=this.expressions)?void 0:n.length)&&t.level===K}},{key:"compileNode",value:function(n){var r,i,s,o;if(null==(i=this.expressions)||!i.length)return _get(t.prototype.__proto__||Object.getPrototypeOf(t.prototype),"compileNode",this).call(this,n);if(o=new G(Xt(_get(t.prototype.__proto__||Object.getPrototypeOf(t.prototype),"compileNode",this).call(this,n))),s=new f(this.expressions.slice()),n.level>K){var u=o.cache(n,null,Bt),a=_slicedToArray(u,2);o=a[0],r=a[1],s.push(r)}return s.unshift(o),s.compileToFragments(n,n.level===K?n.level:V)}}]),t}(h);return e.prototype.children=h.prototype.children.concat(["expressions"]),e}.call(this),e.Super=xt=function(){var e=function(e){function t(e){_classCallCheck(this,t);var n=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n.accessor=e,n}return _inherits(t,e),_createClass(t,[{key:"compileNode",value:function(t){var n,r,i,s,u,a,f,l;if(r=t.scope.namedMethod(),(null==r?void 0:r.isMethod)||this.error("cannot use super outside of an instance method"),null==r.ctor&&null==this.accessor){var c=r;i=c.name,l=c.variable,(i.shouldCache()||i instanceof R&&i.index.isAssignable())&&(s=new _(t.scope.parent.freeVariable("name")),i.index=new o(s,i.index)),this.accessor=null==s?i:new R(s)}return(null==(u=this.accessor)||null==(a=u.name)?void 0:a.comments)&&(f=this.accessor.name.comments,delete this.accessor.name.comments),n=(new Pt(new G("super"),this.accessor?[this.accessor]:[])).compileToFragments(t),f&&It(f,this.accessor.name),n}}]),t}(a);return e.prototype.children=["accessor"],e}.call(this),e.RegexWithInterpolations=dt=function(e){function t(){var e=0"+this.equals;var g=[this.fromNum,this.toNum];return i=g[0],d=g[1],h=this.stepNum?this.stepNum+" !== 0":this.stepVar+" !== 0",r=a?null==this.step?i<=d?l+" "+d:s+" "+d:(f=i+" <= "+o+" && "+l+" "+d,v=i+" >= "+o+" && "+s+" "+d,i<=d?h+" && "+f:h+" && "+v):(f=this.fromVar+" <= "+o+" && "+l+" "+this.toVar,v=this.fromVar+" >= "+o+" && "+s+" "+this.toVar,h+" && ("+this.fromVar+" <= "+this.toVar+" ? "+f+" : "+v+")"),n=this.stepVar?this.stepVar+" > 0":this.fromVar+" <= "+this.toVar,p=this.stepVar?o+" += "+this.stepVar:a?c?i<=d?"++"+o:"--"+o:i<=d?o+"++":o+"--":c?n+" ? ++"+o+" : --"+o:n+" ? "+o+"++ : "+o+"--",c&&(m=u+" = "+m),c&&(p=u+" = "+p),[this.makeCode(m+"; "+r+"; "+p)]}},{key:"compileArray",value:function(t){var n,r,i,s,o,u,a,f,l,c,h,p,d;return(a=null!=this.fromNum&&null!=this.toNum,a&&20>=_Mathabs(this.fromNum-this.toNum))?(c=function(){for(var e=[],t=h=this.fromNum,n=this.toNum;h<=n?t<=n:t>=n;h<=n?t++:t--)e.push(t);return e}.apply(this),this.exclusive&&c.pop(),[this.makeCode("["+c.join(", ")+"]")]):(u=this.tab+Ct,o=t.scope.freeVariable("i",{single:!0,reserve:!1}),p=t.scope.freeVariable("results",{reserve:!1}),l="\n"+u+"var "+p+" = [];",a?(t.index=o,r=Xt(this.compileNode(t))):(d=o+" = "+this.fromC+(this.toC===this.toVar?"":", "+this.toC),i=this.fromVar+" <= "+this.toVar,r="var "+d+"; "+i+" ? "+o+" <"+this.equals+" "+this.toVar+" : "+o+" >"+this.equals+" "+this.toVar+"; "+i+" ? "+o+"++ : "+o+"--"),f="{ "+p+".push("+o+"); }\n"+u+"return "+p+";\n"+t.indent,s=function(e){return null==e?void 0:e.contains(Jt)},(s(this.from)||s(this.to))&&(n=", arguments"),[this.makeCode("(function() {"+l+"\n"+u+"for ("+r+")"+f+"}).apply(this"+(null==n?"":n)+")")])}}]),t}(a);return e.prototype.children=["from","to"],e}.call(this),e.Slice=yt=function(){var e=function(e){function t(e){_classCallCheck(this,t);var n=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n.range=e,n}return _inherits(t,e),_createClass(t,[{key:"compileNode",value:function(t){var n=this.range,r,i,s,o,u,a;return u=n.to,s=n.from,(null==s?void 0:s.shouldCache())&&(s=new Pt(new ft(s))),(null==u?void 0:u.shouldCache())&&(u=new Pt(new ft(u))),o=(null==s?void 0:s.compileToFragments(t,J))||[this.makeCode("0")],u&&(r=u.compileToFragments(t,J),i=Xt(r),(this.range.exclusive||-1!=+i)&&(a=", "+(this.range.exclusive?i:u.isNumber()?""+(+i+1):(r=u.compileToFragments(t,W),"+"+Xt(r)+" + 1 || 9e9")))),[this.makeCode(".slice("+Xt(o)+(a||"")+")")]}}]),t}(a);return e.prototype.children=["range"],e}.call(this),e.Obj=ot=function(){var e=function(e){function t(e){var n=1E)return u.push(new Pt(new ot(y.slice(E,r),!0)))};t=y[r];)(c=this.addInitializerExpression(t))&&(b(),u.push(c),l.push(c),E=r+1),r++;b(),n.apply(o,[a,a-a+1].concat(u)),u,a+=u.length}else(c=this.addInitializerExpression(s))&&(l.push(c),o[a]=c),a+=1;for(p=0,m=l.length;pV||u&&this.variable.base instanceof ot&&!this.nestedLhs&&!0!==this.param?this.wrapInParentheses(i):i)}},{key:"compileObjectDestruct",value:function(t){var n,o,u,a,l,c,p,d,v,m,g,y;if(o=function(e){var n;if(e instanceof r){var i=e.variable.cache(t),s=_slicedToArray(i,2);return e.variable=s[0],n=s[1],n}return e},u=function(e){var n,i;return i=o(e),n=e instanceof r&&e.variable!==i,n||!i.isAssignable()?i:new G("'"+i.compileWithoutComments(t)+"'")},v=function(n,a){var f,l,c,h,p,d,m,g,y,b,w;for(b=[],w=void 0,null==a.properties&&(a=new Pt(a)),l=c=0,h=n.length;c=$?this.wrapInParentheses(f):f;var J=O,Q=_slicedToArray(J,1);return L=Q[0],1===M&&L instanceof w&&L.error("Destructuring assignment has no target"),I=function(){var e,t,n;for(n=[],E=e=0,t=O.length;et.call(v,E):return new Pt(L.base);default:return L}}(),y=function(){switch(!1){case!(L instanceof bt):return l(u,E);default:return new Pt(new G(u),[new R(new st(E))])}}();d=Qt(s.unwrap().value),d&&s.error(d),m.push(a.push((new r(s,y,null,{param:o.param,subpattern:!0})).compileToFragments(n,V)))}return m},u=function(e,t,i){var u;return t=new Pt(new s(e,!0)),u=i instanceof Pt?i:new Pt(new G(i)),a.push((new r(t,u,null,{param:o.param,subpattern:!0})).compileToFragments(n,V))},D=function(e,t,n){return p(e)?k(e,t,n):u(e,t,n)},q.length?(d=q[0],C=O.slice(0,d+(N?1:0)),j=O.slice(d+1),0!==C.length&&D(C,W,X),0!==j.length&&(H=function(){switch(!1){case!N:return c(O[d].unwrapAll().value,-1*j.length);case!x:return l(X,-1*j.length)}}(),p(j)&&(B=H,H=n.scope.freeVariable("ref"),a.push([this.makeCode(H+" = ")].concat(_toConsumableArray(B.compileToFragments(n,V))))),D(j,W,H))):D(O,W,X),U||this.subpattern||a.push(W),m=this.joinFragmentArrays(a,", "),n.levelK?this.wrapInParentheses(i):i}},{key:"eachName",value:function(t){return this.variable.unwrapAll().eachName(t)}}]),r}(a);return e.prototype.children=["variable","value"],e.prototype.isAssignable=Bt,e}.call(this),e.FuncGlyph=A=function(e){function t(e){_classCallCheck(this,t);var n=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n.glyph=e,n}return _inherits(t,e),t}(a),e.Code=d=function(){var e=function(e){function n(e,t,r,i){_classCallCheck(this,n);var s=_possibleConstructorReturn(this,(n.__proto__||Object.getPrototypeOf(n)).call(this)),o;return s.funcGlyph=r,s.paramStart=i,s.params=e||[],s.body=t||new f,s.bound="=>"===(null==(o=s.funcGlyph)?void 0:o.glyph),s.isGenerator=!1,s.isAsync=!1,s.isMethod=!1,s.body.traverseChildren(!1,function(e){if((e instanceof ut&&e.isYield()||e instanceof jt)&&(s.isGenerator=!0),(e instanceof ut&&e.isAwait()||e instanceof u)&&(s.isAsync=!0),s.isGenerator&&s.isAsync)return e.error("function can't contain both yield and await")}),s}return _inherits(n,e),_createClass(n,[{key:"isStatement",value:function(){return this.isMethod}},{key:"makeScope",value:function(t){return new gt(t,this.body,this)}},{key:"compileNode",value:function(n){var r,i,u,a,f,l,c,p,d,v,m,g,y,b,E,S,x,T,N,C,k,L,A,O,M,P,H,B,j,F,I,q,R,U,X,V,$,J,K,Q,Y,Z,et;for(this.ctor&&(this.isAsync&&this.name.error("Class constructor may not be async"),this.isGenerator&&this.name.error("Class constructor may not be a generator")),this.bound&&((null==(F=n.scope.method)?void 0:F.bound)&&(this.context=n.scope.method.context),!this.context&&(this.context="this")),n.scope=Rt(n,"classScope")||this.makeScope(n.scope),n.scope.shared=Rt(n,"sharedScope"),n.indent+=Ct,delete n.bare,delete n.isExistentialEquals,H=[],p=[],Y=null==(I=null==(q=this.thisAssignments)?void 0:q.slice())?[]:I,B=[],m=!1,v=!1,M=[],this.eachParamName(function(e,r,i,s){var u,a;if(0<=t.call(M,e)&&r.error("multiple parameters named '"+e+"'"),M.push(e),r.this)return e=r.properties[0].name.value,0<=t.call(z,e)&&(e="_"+e),a=new _(n.scope.freeVariable(e,{reserve:!1})),u=i.name instanceof ot&&s instanceof o&&"="===s.operatorToken.value?new o(new _(e),a,"object"):a,i.renameParam(r,u),Y.push(new o(r,a))}),R=this.params,g=b=0,x=R.length;b")),u.push(this.makeCode(" {")),null==a?void 0:a.length){var at;(at=u).push.apply(at,[this.makeCode("\n")].concat(_toConsumableArray(a),[this.makeCode("\n"+this.tab)]))}return u.push(this.makeCode("}")),this.isMethod?$t(u,this):this.front||n.level>=W?this.wrapInParentheses(u):u}},{key:"eachParamName",value:function(t){var n,r,i,s,o;for(s=this.params,o=[],n=0,r=s.length;n"===t||">="===t||"<="===t||"==="===t||"!=="===t}},{key:"invert",value:function(){var t,n,i,o,u;if(this.isChainable()&&this.first.isChainable()){for(t=!0,n=this;n&&n.operator;)t&&(t=n.operator in r),n=n.first;if(!t)return(new ft(this)).invert();for(n=this;n&&n.operator;)n.invert=!n.invert,n.operator=r[n.operator],n=n.first;return this}return(o=r[this.operator])?(this.operator=o,this.first.unwrap()instanceof s&&this.first.invert(),this):this.second?(new ft(this)).invert():"!"===this.operator&&(i=this.first.unwrap())instanceof s&&("!"===(u=i.operator)||"in"===u||"instanceof"===u)?i:new s("!",this)}},{key:"unfoldSoak",value:function(t){var n;return("++"===(n=this.operator)||"--"===n||"delete"===n)&&on(t,this,"first")}},{key:"generateDo",value:function(t){var n,r,i,s,u,a,f,l;for(a=[],r=t instanceof o&&(f=t.value.unwrap())instanceof d?f:t,l=r.params||[],i=0,s=l.length;i=W?(new ft(this)).compileToFragments(t):(i="+"===n||"-"===n,("new"===n||"typeof"===n||"delete"===n||i&&this.first instanceof s&&this.first.operator===n)&&r.push([this.makeCode(" ")]),(i&&this.first instanceof s||"new"===n&&this.first.isStatement(t))&&(this.first=new ft(this.first)),r.push(this.first.compileToFragments(t,$)),this.flip&&r.reverse(),this.joinFragmentArrays(r,""))}},{key:"compileContinuation",value:function(n){var r,i,s,o;return i=[],r=this.operator,null==n.scope.parent&&this.error(this.operator+" can only occur inside functions"),(null==(s=n.scope.method)?void 0:s.bound)&&n.scope.method.isGenerator&&this.error("yield cannot occur inside bound (fat arrow) functions"),0<=t.call(Object.keys(this.first),"expression")&&!(this.first instanceof Ot)?null!=this.first.expression&&i.push(this.first.expression.compileToFragments(n,$)):(n.level>=J&&i.push([this.makeCode("(")]),i.push([this.makeCode(r)]),""!==(null==(o=this.first.base)?void 0:o.value)&&i.push([this.makeCode(" ")]),i.push(this.first.compileToFragments(n,$)),n.level>=J&&i.push([this.makeCode(")")])),this.joinFragmentArrays(i,"")}},{key:"compilePower",value:function(t){var n;return n=new Pt(new _("Math"),[new i(new ct("pow"))]),(new h(n,[this.first,this.second])).compileToFragments(t)}},{key:"compileFloorDivision",value:function(t){var n,r,o;return r=new Pt(new _("Math"),[new i(new ct("floor"))]),o=this.second.shouldCache()?new ft(this.second):this.second,n=new s("/",this.first,o),(new h(r,[n])).compileToFragments(t)}},{key:"compileModulo",value:function(t){var n;return n=new Pt(new G(an("modulo",t))),(new h(n,[this.first,this.second])).compileToFragments(t)}},{key:"toString",value:function u(e){return _get(s.prototype.__proto__||Object.getPrototypeOf(s.prototype),"toString",this).call(this,e,this.constructor.name+" "+this.operator)}}]),s}(a),n,r;return n={"==":"===","!=":"!==",of:"in",yieldfrom:"yield*"},r={"!==":"===","===":"!=="},e.prototype.children=["first","second"],e}.call(this),e.In=q=function(){var e=function(e){function t(e,n){_classCallCheck(this,t);var r=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return r.object=e,r.array=n,r}return _inherits(t,e),_createClass(t,[{key:"compileNode",value:function(t){var n,r,i,s,o;if(this.array instanceof Pt&&this.array.isArray()&&this.array.base.objects.length){for(o=this.array.base.objects,r=0,i=o.length;r= 0"))),Xt(o)===Xt(s))?i:(i=o.concat(this.makeCode(", "),i),t.levelt.call(s,n)&&s.push(n);return delete e.comments}}),It(s,i),Zt(i.expression,i),i}return _inherits(n,e),_createClass(n,[{key:"compileNode",value:function(t){var n,r,i;if(this.expression.front=this.front,i=this.expression.compile(t,$),this.expression.unwrap()instanceof _&&!t.scope.check(i)){var s=this.negated?["===","||"]:["!==","&&"],o=_slicedToArray(s,2);n=o[0],r=o[1],i="typeof "+i+" "+n+' "undefined"'+("undefined"===this.comparisonTarget?"":" "+r+" "+i+" "+n+" "+this.comparisonTarget)}else n="null"===this.comparisonTarget?this.negated?"==":"!=":this.negated?"===":"!==",i=i+" "+n+" "+this.comparisonTarget;return[this.makeCode(t.level<=X?i:"("+i+")")]}}]),n}(a);return e.prototype.children=["expression"],e.prototype.invert=tt,e}.call(this),e.Parens=ft=function(){var e=function(e){function t(e){_classCallCheck(this,t);var n=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n.body=e,n}return _inherits(t,e),_createClass(t,[{key:"unwrap",value:function(){return this.body}},{key:"shouldCache",value:function(){return this.body.shouldCache()}},{key:"compileNode",value:function(t){var n,r,i,s,o;return(r=this.body.unwrap(),o=null==(s=r.comments)?void 0:s.some(function(e){return e.here&&!e.unshift&&!e.newLine}),r instanceof Pt&&r.isAtomic()&&!this.csxAttribute&&!o)?(r.front=this.front,r.compileToFragments(t)):(i=r.compileToFragments(t,J),n=t.level<$&&!o&&(r instanceof ut||r.unwrap()instanceof h||r instanceof L&&r.returns)&&(t.level=i.length),this.csxAttribute?this.wrapInBraces(i):n?i:this.wrapInParentheses(i))}}]),t}(a);return e.prototype.children=["body"],e}.call(this),e.StringWithInterpolations=St=function(){var e=function(e){function t(e){_classCallCheck(this,t);var n=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n.body=e,n}return _inherits(t,e),_createClass(t,[{key:"unwrap",value:function(){return this}},{key:"shouldCache",value:function(){return this.body.shouldCache()}},{key:"compileNode",value:function(n){var r,i,s,o,u,a,f,l,c;if(this.csxAttribute)return c=new ft(new t(this.body)),c.csxAttribute=!0,c.compileNode(n);for(o=this.body.unwrap(),s=[],l=[],o.traverseChildren(!1,function(e){var t,n,r,i,o,u;if(e instanceof Et){if(e.comments){var a;(a=l).push.apply(a,_toConsumableArray(e.comments)),delete e.comments}return s.push(e),!0}if(e instanceof ft){if(0!==l.length){for(n=0,i=l.length;nF,(!this.step||null==F||!d)&&(N=H.freeVariable("len")),c=""+x+E+" = 0, "+N+" = "+q+".length",h=""+x+E+" = "+q+".length - 1",a=E+" < "+N,l=E+" >= 0",this.step?(null==F?(a=I+" > 0 ? "+a+" : "+l,c="("+I+" > 0 ? ("+c+") : "+h+")"):d&&(a=l,c=h),b=E+" += "+I):b=""+(S===E?E+"++":"++"+E),v=[this.makeCode(c+"; "+a+"; "+x+b)])),this.returns&&(O=""+this.tab+P+" = [];\n",M="\n"+this.tab+"return "+P+";",s.makeReturn(P)),this.guard&&(1=X?this.wrapInParentheses(s):s}},{key:"unfoldSoak",value:function(){return this.soak&&this}}]),t}(a);return e.prototype.children=["condition","body","elseBody"],e}.call(this),_t={modulo:function(){return"function(a, b) { return (+a % (b = +b) + b) % b; }"},objectWithoutKeys:function(){return"function(o, ks) { var res = {}; for (var k in o) ([].indexOf.call(ks, k) < 0 && {}.hasOwnProperty.call(o, k)) && (res[k] = o[k]); return res; }"},boundMethodCheck:function(){return"function(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new Error('Bound instance method accessed before binding'); } }"},_extends:function(){return"Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }"},hasProp:function(){return"{}.hasOwnProperty"},indexOf:function(){return"[].indexOf"},slice:function(){return"[].slice"},splice:function(){return"[].splice"}},K=1,J=2,V=3,X=4,$=5,W=6,Ct=" ",mt=/^[+-]?\d+$/,an=function(e,t){var n,r;return r=t.scope.root,e in r.utilities?r.utilities[e]:(n=r.freeVariable(e),r.assign(n,_t[e](t)),r.utilities[e]=n)},en=function(e,t){var n=!(2=t);)t--;return n&&[n.sourceLine,n.sourceColumn]}}]),e}(),n=function(){var e=function(){function e(){_classCallCheck(this,e),this.lines=[]}return _createClass(e,[{key:"add",value:function(n,r){var i=2=r);)r--;return s&&s.sourceLocation(i)}},{key:"generate",value:function(){var t=0"],y={version:3,file:t.generatedFile||"",sourceRoot:t.sourceRoot||"",sources:g,names:[],mappings:r},(t.sourceMap||t.inlineMap)&&(y.sourcesContent=[n]),y}},{key:"encodeVlq",value:function(t){var n,u,a,f;for(n="",a=0>t?1:0,f=(_Mathabs(t)<<1)+a;f||!n;)u=f&s,f>>=i,f&&(u|=r),n+=this.encodeBase64(u);return n}},{key:"encodeBase64",value:function(t){return n[t]||function(){throw new Error("Cannot Base64 encode value: "+t)}()}}]),e}(),n,r,i,s;return i=5,r=1<",u(a,e),null==m[a]&&(m[a]=[]),m[a].push(e),p&&(x=new s),O=h.tokenize(e,t),t.referencedVars=function(){var e,t,n;for(n=[],e=0,t=O.length;e"),f=e.getLineNumber(),r=e.getColumnNumber(),c=t(s,f,r),i=c?s+":"+c[0]+":"+c[1]:s+":"+f+":"+r),o=e.getFunctionName(),u=e.isConstructor(),a=!e.isToplevel()&&!u,a?(l=e.getMethodName(),p=e.getTypeName(),o?(h=n="",p&&o.indexOf(p)&&(h=p+"."),l&&o.indexOf("."+l)!==o.length-l.length-1&&(n=" [as "+l+"]"),""+h+o+n+" ("+i+")"):p+"."+(l||"")+" ("+i+")"):u?"new "+(o||"")+" ("+i+")":o?o+" ("+i+")":i},l=function(e,n,i){var s,o,u,f,l,h;if(""===e||(f=e.slice(e.lastIndexOf(".")),0<=t.call(r,f))){if(""!==e&&null!=v[e])return v[e][v[e].length-1];if(null!=v[""])for(l=v[""],o=l.length-1;0<=o;o+=-1)if(u=l[o],h=u.sourceLocation([n-1,i-1]),null!=(null==h?void 0:h[0])&&null!=h[1])return u;return null==m[e]?null:(s=a(m[e][m[e].length-1],{filename:e,sourceMap:!0,literate:c.isLiterate(e)}),s.sourceMap)}return null},Error.prepareStackTrace=function(t,n){var r,i,s;return s=function(e,t,n){var r,i;return i=l(e,t,n),null!=i&&(r=i.sourceLocation([t-1,n-1])),null==r?null:[r[0]+1,r[1]+1]},i=function(){var t,i,o;for(o=[],t=0,i=n.length;t0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n65535?2:1}}),define("ace/apply_delta",[],function(e,t,n){"use strict";function r(e,t){throw console.log("Invalid Delta:",e),"Invalid Delta: "+t}function i(e,t){return t.row>=0&&t.row=0&&t.column<=e[t.row].length}function s(e,t){t.action!="insert"&&t.action!="remove"&&r(t,"delta.action must be 'insert' or 'remove'"),t.lines instanceof Array||r(t,"delta.lines must be an Array"),(!t.start||!t.end)&&r(t,"delta.start/end must be an present");var n=t.start;i(e,t.start)||r(t,"delta.start must be contained in document");var s=t.end;t.action=="remove"&&!i(e,s)&&r(t,"delta.end must contained in document for 'remove' actions");var o=s.row-n.row,u=s.column-(o==0?n.column:0);(o!=t.lines.length-1||t.lines[o].length!=u)&&r(t,"delta.range must match delta lines")}t.applyDelta=function(e,t,n){var r=t.start.row,i=t.start.column,s=e[r]||"";switch(t.action){case"insert":var o=t.lines;if(o.length===1)e[r]=s.substring(0,i)+t.lines[0]+s.substring(i);else{var u=[r,1].concat(t.lines);e.splice.apply(e,u),e[r]=s.substring(0,i)+e[r],e[r+t.lines.length-1]+=s.substring(i)}break;case"remove":var a=t.end.column,f=t.end.row;r===f?e[r]=s.substring(0,i)+s.substring(a):e.splice(r,f-r+1,s.substring(0,i)+e[f].substring(a))}}}),define("ace/lib/event_emitter",[],function(e,t,n){"use strict";var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s),n=n.slice();for(var o=0;o ["+this.end.row+"/"+this.end.column+"]"},e.prototype.contains=function(e,t){return this.compare(e,t)==0},e.prototype.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},e.prototype.comparePoint=function(e){return this.compare(e.row,e.column)},e.prototype.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},e.prototype.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},e.prototype.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},e.prototype.isStart=function(e,t){return this.start.row==e&&this.start.column==t},e.prototype.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},e.prototype.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},e.prototype.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},e.prototype.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},e.prototype.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},e.prototype.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?tthis.end.column?1:0:ethis.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},e.prototype.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},e.prototype.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},e.prototype.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},e.prototype.clipRows=function(t,n){if(this.end.row>n)var r={row:n+1,column:0};else if(this.end.rown)var i={row:n+1,column:0};else if(this.start.rowthis.row)return;var t=u(e,{row:this.row,column:this.column},this.$insertRight);this.setPosition(t.row,t.column,!0)},e.prototype.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._signal("change",{old:i,value:r})},e.prototype.detach=function(){this.document.off("change",this.$onChange)},e.prototype.attach=function(e){this.document=e||this.document,this.document.on("change",this.$onChange)},e.prototype.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n},e}();s.prototype.$insertRight=!1,r.implement(s.prototype,i),t.Anchor=s}),define("ace/document",[],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./apply_delta").applyDelta,s=e("./lib/event_emitter").EventEmitter,o=e("./range").Range,u=e("./anchor").Anchor,a=function(){function e(e){this.$lines=[""],e.length===0?this.$lines=[""]:Array.isArray(e)?this.insertMergedLines({row:0,column:0},e):this.insert({row:0,column:0},e)}return e.prototype.setValue=function(e){var t=this.getLength()-1;this.remove(new o(0,0,t,this.getLine(t).length)),this.insert({row:0,column:0},e||"")},e.prototype.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},e.prototype.createAnchor=function(e,t){return new u(this,e,t)},e.prototype.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n",this._signal("changeNewLineMode")},e.prototype.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},e.prototype.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e,this._signal("changeNewLineMode")},e.prototype.getNewLineMode=function(){return this.$newLineMode},e.prototype.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},e.prototype.getLine=function(e){return this.$lines[e]||""},e.prototype.getLines=function(e,t){return this.$lines.slice(e,t+1)},e.prototype.getAllLines=function(){return this.getLines(0,this.getLength())},e.prototype.getLength=function(){return this.$lines.length},e.prototype.getTextRange=function(e){return this.getLinesForRange(e).join(this.getNewLineCharacter())},e.prototype.getLinesForRange=function(e){var t;if(e.start.row===e.end.row)t=[this.getLine(e.start.row).substring(e.start.column,e.end.column)];else{t=this.getLines(e.start.row,e.end.row),t[0]=(t[0]||"").substring(e.start.column);var n=t.length-1;e.end.row-e.start.row==n&&(t[n]=t[n].substring(0,e.end.column))}return t},e.prototype.insertLines=function(e,t){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(e,t)},e.prototype.removeLines=function(e,t){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(e,t)},e.prototype.insertNewLine=function(e){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(e,["",""])},e.prototype.insert=function(e,t){return this.getLength()<=1&&this.$detectNewLine(t),this.insertMergedLines(e,this.$split(t))},e.prototype.insertInLine=function(e,t){var n=this.clippedPos(e.row,e.column),r=this.pos(e.row,e.column+t.length);return this.applyDelta({start:n,end:r,action:"insert",lines:[t]},!0),this.clonePos(r)},e.prototype.clippedPos=function(e,t){var n=this.getLength();e===undefined?e=n:e<0?e=0:e>=n&&(e=n-1,t=undefined);var r=this.getLine(e);return t==undefined&&(t=r.length),t=Math.min(Math.max(t,0),r.length),{row:e,column:t}},e.prototype.clonePos=function(e){return{row:e.row,column:e.column}},e.prototype.pos=function(e,t){return{row:e,column:t}},e.prototype.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):(e.row=Math.max(0,e.row),e.column=Math.min(Math.max(e.column,0),this.getLine(e.row).length)),e},e.prototype.insertFullLines=function(e,t){e=Math.min(Math.max(e,0),this.getLength());var n=0;e0,r=t=0&&this.applyDelta({start:this.pos(e,this.getLine(e).length),end:this.pos(e+1,0),action:"remove",lines:["",""]})},e.prototype.replace=function(e,t){e instanceof o||(e=o.fromPoints(e.start,e.end));if(t.length===0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);var n;return t?n=this.insert(e.start,t):n=e.start,n},e.prototype.applyDeltas=function(e){for(var t=0;t=0;t--)this.revertDelta(e[t])},e.prototype.applyDelta=function(e,t){var n=e.action=="insert";if(n?e.lines.length<=1&&!e.lines[0]:!o.comparePoints(e.start,e.end))return;n&&e.lines.length>2e4?this.$splitAndapplyLargeDelta(e,2e4):(i(this.$lines,e,t),this._signal("change",e))},e.prototype.$safeApplyDelta=function(e){var t=this.$lines.length;(e.action=="remove"&&e.start.row=t.$lines.length)throw u=new Error("Invalid delta"),u.data={path:s.$path,linesLength:t.$lines.length,start:o.start,end:o.end},u;t.applyDelta(o,!0)}if(s.$timeout)return n.schedule(s.$timeout);s.onUpdate()})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){},this.isPending=function(){return this.deferredUpdate.isPending()}}).call(s.prototype)}),define("ace/mode/css/csslint",[],function(e,t,n){var r=function(){function s(e,t,n,r){"use strict";this.messages=[],this.stats=[],this.lines=e,this.ruleset=t,this.allow=n,this.allow||(this.allow={}),this.ignore=r,this.ignore||(this.ignore=[])}var e=e||{},t=t||{},n=function(){var e;return e=function(){function t(n,r,i){function s(u,a){if(!r[u]){if(!n[u]){var f="function"==typeof e&&e;if(!a&&f)return f(u,!0);if(o)return o(u,!0);var l=new Error("Cannot find module '"+u+"'");throw l.code="MODULE_NOT_FOUND",l}var c=r[u]={exports:{}};n[u][0].call(c.exports,function(e){var t=n[u][1][e];return s(t||e)},c,c.exports,t,n,r,i)}return r[u].exports}for(var o="function"==typeof e&&e,u=0;u"?this.type="child":e==="+"?this.type="adjacent-sibling":e==="~"&&(this.type="sibling")}t.exports=s;var r=e("../util/SyntaxUnit"),i=e("./Parser");s.prototype=new r,s.prototype.constructor=s},{"../util/SyntaxUnit":26,"./Parser":6}],3:[function(e,t,n){"use strict";function s(e,t){this.match=function(t){var n;return t.mark(),n=e(t),n?t.drop():t.restore(),n},this.toString=typeof t=="function"?t:function(){return t}}t.exports=s;var r=e("../util/StringReader"),i=e("../util/SyntaxError");s.prec={MOD:5,SEQ:4,ANDAND:3,OROR:2,ALT:1},s.parse=function(e){var t,n,o,u,a,f,l,c,h;t=new r(e),n=function(e){var n=t.readMatch(e);if(n===null)throw new i("Expected "+e,t.getLine(),t.getCol());return n},o=function(){var e=[u()];while(t.readMatch(" | ")!==null)e.push(u());return e.length===1?e[0]:s.alt.apply(s,e)},u=function(){var e=[a()];while(t.readMatch(" || ")!==null)e.push(a());return e.length===1?e[0]:s.oror.apply(s,e)},a=function(){var e=[f()];while(t.readMatch(" && ")!==null)e.push(f());return e.length===1?e[0]:s.andand.apply(s,e)},f=function(){var e=[l()];while(t.readMatch(/^ (?![&|\]])/)!==null)e.push(l());return e.length===1?e[0]:s.seq.apply(s,e)},l=function(){var e=c();if(t.readMatch("?")!==null)return e.question();if(t.readMatch("*")!==null)return e.star();if(t.readMatch("+")!==null)return e.plus();if(t.readMatch("#")!==null)return e.hash();if(t.readMatch(/^\{\s*/)!==null){var r=n(/^\d+/);n(/^\s*,\s*/);var i=n(/^\d+/);return n(/^\s*\}/),e.braces(Number(r),Number(i))}return e},c=function(){if(t.readMatch("[ ")!==null){var e=o();return n(" ]"),e}return s.fromType(n(/^[^ ?*+#{]+/))},h=o();if(!t.eof())throw new i("Expected end of string",t.getLine(),t.getCol());return h},s.cast=function(e){return e instanceof s?e:s.parse(e)},s.fromType=function(t){var n=e("./ValidationTypes");return new s(function(e){return e.hasNext()&&n.isType(e,t)},t)},s.seq=function(){var e=Array.prototype.slice.call(arguments).map(s.cast);return e.length===1?e[0]:new s(function(t){var n,r=!0;for(n=0;r&&nn&&(r="[ "+r+" ]"),r})},s.alt=function(){var e=Array.prototype.slice.call(arguments).map(s.cast);return e.length===1?e[0]:new s(function(t){var n,r=!1;for(n=0;!r&&nn&&(r="[ "+r+" ]"),r})},s.many=function(t){var n=Array.prototype.slice.call(arguments,1).reduce(function(t,n){if(n.expand){var r=e("./ValidationTypes");t.push.apply(t,r.complex[n.expand].options)}else t.push(s.cast(n));return t},[]);t===!0&&(t=n.map(function(){return!0}));var r=new s(function(e){var r=[],i=0,s=0,o=function(e){return s===0?(i=Math.max(e,i),e===n.length):e===i},u=function(i){for(var s=0;s0;for(var a=0;ar&&(i="[ "+i+" ]"),i});return r.options=n,r},s.andand=function(){var e=Array.prototype.slice.call(arguments);return e.unshift(!0),s.many.apply(s,e)},s.oror=function(){var e=Array.prototype.slice.call(arguments);return e.unshift(!1),s.many.apply(s,e)},s.prototype={constructor:s,match:function(){throw new Error("unimplemented")},toString:function(){throw new Error("unimplemented")},func:function(){return this.match.bind(this)},then:function(e){return s.seq(this,e)},or:function(e){return s.alt(this,e)},andand:function(e){return s.many(!0,this,e)},oror:function(e){return s.many(!1,this,e)},star:function(){return this.braces(0,Infinity,"*")},plus:function(){return this.braces(1,Infinity,"+")},question:function(){return this.braces(0,1,"?")},hash:function(){return this.braces(1,Infinity,"#",s.cast(","))},braces:function(e,t,n,r){var i=this,o=r?r.then(this):this;return n||(n="{"+e+","+t+"}"),new s(function(n){var s=!0,u;for(u=0;u0&&r?s=o.match(n):s=i.match(n);if(!s)break}return u>=e},function(){return i.toString(s.prec.MOD)+n})}}},{"../util/StringReader":24,"../util/SyntaxError":25,"./ValidationTypes":21}],4:[function(e,t,n){"use strict";function s(e,t){r.call(this,"("+e+(t!==null?":"+t:"")+")",e.startLine,e.startCol,i.MEDIA_FEATURE_TYPE),this.name=e,this.value=t}t.exports=s;var r=e("../util/SyntaxUnit"),i=e("./Parser");s.prototype=new r,s.prototype.constructor=s},{"../util/SyntaxUnit":26,"./Parser":6}],5:[function(e,t,n){"use strict";function s(e,t,n,s,o){r.call(this,(e?e+" ":"")+(t?t:"")+(t&&n.length>0?" and ":"")+n.join(" and "),s,o,i.MEDIA_QUERY_TYPE),this.modifier=e,this.mediaType=t,this.features=n}t.exports=s;var r=e("../util/SyntaxUnit"),i=e("./Parser");s.prototype=new r,s.prototype.constructor=s},{"../util/SyntaxUnit":26,"./Parser":6}],6:[function(e,t,n){"use strict";function y(e){r.call(this),this.options=e||{},this._tokenStream=null}t.exports=y;var r=e("../util/EventTarget"),i=e("../util/SyntaxError"),s=e("../util/SyntaxUnit"),o=e("./Combinator"),u=e("./MediaFeature"),a=e("./MediaQuery"),f=e("./PropertyName"),l=e("./PropertyValue"),c=e("./PropertyValuePart"),h=e("./Selector"),p=e("./SelectorPart"),d=e("./SelectorSubPart"),v=e("./TokenStream"),m=e("./Tokens"),g=e("./Validation");y.DEFAULT_TYPE=0,y.COMBINATOR_TYPE=1,y.MEDIA_FEATURE_TYPE=2,y.MEDIA_QUERY_TYPE=3,y.PROPERTY_NAME_TYPE=4,y.PROPERTY_VALUE_TYPE=5,y.PROPERTY_VALUE_PART_TYPE=6,y.SELECTOR_TYPE=7,y.SELECTOR_PART_TYPE=8,y.SELECTOR_SUB_PART_TYPE=9,y.prototype=function(){var e=new r,t,n={__proto__:null,constructor:y,DEFAULT_TYPE:0,COMBINATOR_TYPE:1,MEDIA_FEATURE_TYPE:2,MEDIA_QUERY_TYPE:3,PROPERTY_NAME_TYPE:4,PROPERTY_VALUE_TYPE:5,PROPERTY_VALUE_PART_TYPE:6,SELECTOR_TYPE:7,SELECTOR_PART_TYPE:8,SELECTOR_SUB_PART_TYPE:9,_stylesheet:function(){var e=this._tokenStream,t,n,r;this.fire("startstylesheet"),this._charset(),this._skipCruft();while(e.peek()===m.IMPORT_SYM)this._import(),this._skipCruft();while(e.peek()===m.NAMESPACE_SYM)this._namespace(),this._skipCruft();r=e.peek();while(r>m.EOF){try{switch(r){case m.MEDIA_SYM:this._media(),this._skipCruft();break;case m.PAGE_SYM:this._page(),this._skipCruft();break;case m.FONT_FACE_SYM:this._font_face(),this._skipCruft();break;case m.KEYFRAMES_SYM:this._keyframes(),this._skipCruft();break;case m.VIEWPORT_SYM:this._viewport(),this._skipCruft();break;case m.DOCUMENT_SYM:this._document(),this._skipCruft();break;case m.SUPPORTS_SYM:this._supports(),this._skipCruft();break;case m.UNKNOWN_SYM:e.get();if(!!this.options.strict)throw new i("Unknown @ rule.",e.LT(0).startLine,e.LT(0).startCol);this.fire({type:"error",error:null,message:"Unknown @ rule: "+e.LT(0).value+".",line:e.LT(0).startLine,col:e.LT(0).startCol}),t=0;while(e.advance([m.LBRACE,m.RBRACE])===m.LBRACE)t++;while(t)e.advance([m.RBRACE]),t--;break;case m.S:this._readWhitespace();break;default:if(!this._ruleset())switch(r){case m.CHARSET_SYM:throw n=e.LT(1),this._charset(!1),new i("@charset not allowed here.",n.startLine,n.startCol);case m.IMPORT_SYM:throw n=e.LT(1),this._import(!1),new i("@import not allowed here.",n.startLine,n.startCol);case m.NAMESPACE_SYM:throw n=e.LT(1),this._namespace(!1),new i("@namespace not allowed here.",n.startLine,n.startCol);default:e.get(),this._unexpectedToken(e.token())}}}catch(s){if(!(s instanceof i&&!this.options.strict))throw s;this.fire({type:"error",error:s,message:s.message,line:s.line,col:s.col})}r=e.peek()}r!==m.EOF&&this._unexpectedToken(e.token()),this.fire("endstylesheet")},_charset:function(e){var t=this._tokenStream,n,r,i,s;t.match(m.CHARSET_SYM)&&(i=t.token().startLine,s=t.token().startCol,this._readWhitespace(),t.mustMatch(m.STRING),r=t.token(),n=r.value,this._readWhitespace(),t.mustMatch(m.SEMICOLON),e!==!1&&this.fire({type:"charset",charset:n,line:i,col:s}))},_import:function(e){var t=this._tokenStream,n,r,i=[];t.mustMatch(m.IMPORT_SYM),r=t.token(),this._readWhitespace(),t.mustMatch([m.STRING,m.URI]),n=t.token().value.replace(/^(?:url\()?["']?([^"']+?)["']?\)?$/,"$1"),this._readWhitespace(),i=this._media_query_list(),t.mustMatch(m.SEMICOLON),this._readWhitespace(),e!==!1&&this.fire({type:"import",uri:n,media:i,line:r.startLine,col:r.startCol})},_namespace:function(e){var t=this._tokenStream,n,r,i,s;t.mustMatch(m.NAMESPACE_SYM),n=t.token().startLine,r=t.token().startCol,this._readWhitespace(),t.match(m.IDENT)&&(i=t.token().value,this._readWhitespace()),t.mustMatch([m.STRING,m.URI]),s=t.token().value.replace(/(?:url\()?["']([^"']+)["']\)?/,"$1"),this._readWhitespace(),t.mustMatch(m.SEMICOLON),this._readWhitespace(),e!==!1&&this.fire({type:"namespace",prefix:i,uri:s,line:n,col:r})},_supports:function(e){var t=this._tokenStream,n,r;if(t.match(m.SUPPORTS_SYM)){n=t.token().startLine,r=t.token().startCol,this._readWhitespace(),this._supports_condition(),this._readWhitespace(),t.mustMatch(m.LBRACE),this._readWhitespace(),e!==!1&&this.fire({type:"startsupports",line:n,col:r});for(;;)if(!this._ruleset())break;t.mustMatch(m.RBRACE),this._readWhitespace(),this.fire({type:"endsupports",line:n,col:r})}},_supports_condition:function(){var e=this._tokenStream,t;if(e.match(m.IDENT))t=e.token().value.toLowerCase(),t==="not"?(e.mustMatch(m.S),this._supports_condition_in_parens()):e.unget();else{this._supports_condition_in_parens(),this._readWhitespace();while(e.peek()===m.IDENT){t=e.LT(1).value.toLowerCase();if(t==="and"||t==="or")e.mustMatch(m.IDENT),this._readWhitespace(),this._supports_condition_in_parens(),this._readWhitespace()}}},_supports_condition_in_parens:function(){var e=this._tokenStream,t;e.match(m.LPAREN)?(this._readWhitespace(),e.match(m.IDENT)?(t=e.token().value.toLowerCase(),t==="not"?(this._readWhitespace(),this._supports_condition(),this._readWhitespace(),e.mustMatch(m.RPAREN)):(e.unget(),this._supports_declaration_condition(!1))):(this._supports_condition(),this._readWhitespace(),e.mustMatch(m.RPAREN))):this._supports_declaration_condition()},_supports_declaration_condition:function(e){var t=this._tokenStream;e!==!1&&t.mustMatch(m.LPAREN),this._readWhitespace(),this._declaration(),t.mustMatch(m.RPAREN)},_media:function(){var e=this._tokenStream,t,n,r;e.mustMatch(m.MEDIA_SYM),t=e.token().startLine,n=e.token().startCol,this._readWhitespace(),r=this._media_query_list(),e.mustMatch(m.LBRACE),this._readWhitespace(),this.fire({type:"startmedia",media:r,line:t,col:n});for(;;)if(e.peek()===m.PAGE_SYM)this._page();else if(e.peek()===m.FONT_FACE_SYM)this._font_face();else if(e.peek()===m.VIEWPORT_SYM)this._viewport();else if(e.peek()===m.DOCUMENT_SYM)this._document();else if(e.peek()===m.SUPPORTS_SYM)this._supports();else if(e.peek()===m.MEDIA_SYM)this._media();else if(!this._ruleset())break;e.mustMatch(m.RBRACE),this._readWhitespace(),this.fire({type:"endmedia",media:r,line:t,col:n})},_media_query_list:function(){var e=this._tokenStream,t=[];this._readWhitespace(),(e.peek()===m.IDENT||e.peek()===m.LPAREN)&&t.push(this._media_query());while(e.match(m.COMMA))this._readWhitespace(),t.push(this._media_query());return t},_media_query:function(){var e=this._tokenStream,t=null,n=null,r=null,i=[];e.match(m.IDENT)&&(n=e.token().value.toLowerCase(),n!=="only"&&n!=="not"?(e.unget(),n=null):r=e.token()),this._readWhitespace(),e.peek()===m.IDENT?(t=this._media_type(),r===null&&(r=e.token())):e.peek()===m.LPAREN&&(r===null&&(r=e.LT(1)),i.push(this._media_expression()));if(t===null&&i.length===0)return null;this._readWhitespace();while(e.match(m.IDENT))e.token().value.toLowerCase()!=="and"&&this._unexpectedToken(e.token()),this._readWhitespace(),i.push(this._media_expression());return new a(n,t,i,r.startLine,r.startCol)},_media_type:function(){return this._media_feature()},_media_expression:function(){var e=this._tokenStream,t=null,n,r=null;return e.mustMatch(m.LPAREN),this._readWhitespace(),t=this._media_feature(),this._readWhitespace(),e.match(m.COLON)&&(this._readWhitespace(),n=e.LT(1),r=this._expression()),e.mustMatch(m.RPAREN),this._readWhitespace(),new u(t,r?new s(r,n.startLine,n.startCol):null)},_media_feature:function(){var e=this._tokenStream;return this._readWhitespace(),e.mustMatch(m.IDENT),s.fromToken(e.token())},_page:function(){var e=this._tokenStream,t,n,r=null,i=null;e.mustMatch(m.PAGE_SYM),t=e.token().startLine,n=e.token().startCol,this._readWhitespace(),e.match(m.IDENT)&&(r=e.token().value,r.toLowerCase()==="auto"&&this._unexpectedToken(e.token())),e.peek()===m.COLON&&(i=this._pseudo_page()),this._readWhitespace(),this.fire({type:"startpage",id:r,pseudo:i,line:t,col:n}),this._readDeclarations(!0,!0),this.fire({type:"endpage",id:r,pseudo:i,line:t,col:n})},_margin:function(){var e=this._tokenStream,t,n,r=this._margin_sym();return r?(t=e.token().startLine,n=e.token().startCol,this.fire({type:"startpagemargin",margin:r,line:t,col:n}),this._readDeclarations(!0),this.fire({type:"endpagemargin",margin:r,line:t,col:n}),!0):!1},_margin_sym:function(){var e=this._tokenStream;return e.match([m.TOPLEFTCORNER_SYM,m.TOPLEFT_SYM,m.TOPCENTER_SYM,m.TOPRIGHT_SYM,m.TOPRIGHTCORNER_SYM,m.BOTTOMLEFTCORNER_SYM,m.BOTTOMLEFT_SYM,m.BOTTOMCENTER_SYM,m.BOTTOMRIGHT_SYM,m.BOTTOMRIGHTCORNER_SYM,m.LEFTTOP_SYM,m.LEFTMIDDLE_SYM,m.LEFTBOTTOM_SYM,m.RIGHTTOP_SYM,m.RIGHTMIDDLE_SYM,m.RIGHTBOTTOM_SYM])?s.fromToken(e.token()):null},_pseudo_page:function(){var e=this._tokenStream;return e.mustMatch(m.COLON),e.mustMatch(m.IDENT),e.token().value},_font_face:function(){var e=this._tokenStream,t,n;e.mustMatch(m.FONT_FACE_SYM),t=e.token().startLine,n=e.token().startCol,this._readWhitespace(),this.fire({type:"startfontface",line:t,col:n}),this._readDeclarations(!0),this.fire({type:"endfontface",line:t,col:n})},_viewport:function(){var e=this._tokenStream,t,n;e.mustMatch(m.VIEWPORT_SYM),t=e.token().startLine,n=e.token().startCol,this._readWhitespace(),this.fire({type:"startviewport",line:t,col:n}),this._readDeclarations(!0),this.fire({type:"endviewport",line:t,col:n})},_document:function(){var e=this._tokenStream,t,n=[],r="";e.mustMatch(m.DOCUMENT_SYM),t=e.token(),/^@-([^-]+)-/.test(t.value)&&(r=RegExp.$1),this._readWhitespace(),n.push(this._document_function());while(e.match(m.COMMA))this._readWhitespace(),n.push(this._document_function());e.mustMatch(m.LBRACE),this._readWhitespace(),this.fire({type:"startdocument",functions:n,prefix:r,line:t.startLine,col:t.startCol});var i=!0;while(i)switch(e.peek()){case m.PAGE_SYM:this._page();break;case m.FONT_FACE_SYM:this._font_face();break;case m.VIEWPORT_SYM:this._viewport();break;case m.MEDIA_SYM:this._media();break;case m.KEYFRAMES_SYM:this._keyframes();break;case m.DOCUMENT_SYM:this._document();break;default:i=Boolean(this._ruleset())}e.mustMatch(m.RBRACE),t=e.token(),this._readWhitespace(),this.fire({type:"enddocument",functions:n,prefix:r,line:t.startLine,col:t.startCol})},_document_function:function(){var e=this._tokenStream,t;return e.match(m.URI)?(t=e.token().value,this._readWhitespace()):t=this._function(),t},_operator:function(e){var t=this._tokenStream,n=null;if(t.match([m.SLASH,m.COMMA])||e&&t.match([m.PLUS,m.STAR,m.MINUS]))n=t.token(),this._readWhitespace();return n?c.fromToken(n):null},_combinator:function(){var e=this._tokenStream,t=null,n;return e.match([m.PLUS,m.GREATER,m.TILDE])&&(n=e.token(),t=new o(n.value,n.startLine,n.startCol),this._readWhitespace()),t},_unary_operator:function(){var e=this._tokenStream;return e.match([m.MINUS,m.PLUS])?e.token().value:null},_property:function(){var e=this._tokenStream,t=null,n=null,r="",i,s,o;e.peek()===m.STAR&&this.options.starHack&&(e.get(),i=e.token(),n=i.value,s=i.startLine,o=i.startCol),e.peek()===m.MINUS&&(e.get(),i=e.token(),r=i.value,s=i.startLine,o=i.startCol);if(e.match(m.IDENT))i=e.token(),r+=i.value,r.charAt(0)==="_"&&this.options.underscoreHack&&(n="_",r=r.substring(1)),t=new f(r,n,s||i.startLine,o||i.startCol),this._readWhitespace();else{var u=e.peek();u!==m.EOF&&u!==m.RBRACE&&this._unexpectedToken(e.LT(1))}return t},_ruleset:function(){var e=this._tokenStream,t,n;try{n=this._selectors_group()}catch(r){if(r instanceof i&&!this.options.strict){this.fire({type:"error",error:r,message:r.message,line:r.line,col:r.col}),t=e.advance([m.RBRACE]);if(t!==m.RBRACE)throw r;return!0}throw r}return n&&(this.fire({type:"startrule",selectors:n,line:n[0].line,col:n[0].col}),this._readDeclarations(!0),this.fire({type:"endrule",selectors:n,line:n[0].line,col:n[0].col})),n},_selectors_group:function(){var e=this._tokenStream,t=[],n;n=this._selector();if(n!==null){t.push(n);while(e.match(m.COMMA))this._readWhitespace(),n=this._selector(),n!==null?t.push(n):this._unexpectedToken(e.LT(1))}return t.length?t:null},_selector:function(){var e=this._tokenStream,t=[],n=null,r=null,i=null;n=this._simple_selector_sequence();if(n===null)return null;t.push(n);do{r=this._combinator();if(r!==null)t.push(r),n=this._simple_selector_sequence(),n===null?this._unexpectedToken(e.LT(1)):t.push(n);else{if(!this._readWhitespace())break;i=new o(e.token().value,e.token().startLine,e.token().startCol),r=this._combinator(),n=this._simple_selector_sequence(),n===null?r!==null&&this._unexpectedToken(e.LT(1)):(r!==null?t.push(r):t.push(i),t.push(n))}}while(!0);return new h(t,t[0].line,t[0].col)},_simple_selector_sequence:function(){var e=this._tokenStream,t=null,n=[],r="",i=[function(){return e.match(m.HASH)?new d(e.token().value,"id",e.token().startLine,e.token().startCol):null},this._class,this._attrib,this._pseudo,this._negation],s=0,o=i.length,u=null,a,f;a=e.LT(1).startLine,f=e.LT(1).startCol,t=this._type_selector(),t||(t=this._universal()),t!==null&&(r+=t);for(;;){if(e.peek()===m.S)break;while(s1&&e.unget()),null)},_class:function(){var e=this._tokenStream,t;return e.match(m.DOT)?(e.mustMatch(m.IDENT),t=e.token(),new d("."+t.value,"class",t.startLine,t.startCol-1)):null},_element_name:function(){var e=this._tokenStream,t;return e.match(m.IDENT)?(t=e.token(),new d(t.value,"elementName",t.startLine,t.startCol)):null},_namespace_prefix:function(){var e=this._tokenStream,t="";if(e.LA(1)===m.PIPE||e.LA(2)===m.PIPE)e.match([m.IDENT,m.STAR])&&(t+=e.token().value),e.mustMatch(m.PIPE),t+="|";return t.length?t:null},_universal:function(){var e=this._tokenStream,t="",n;return n=this._namespace_prefix(),n&&(t+=n),e.match(m.STAR)&&(t+="*"),t.length?t:null},_attrib:function(){var e=this._tokenStream,t=null,n,r;return e.match(m.LBRACKET)?(r=e.token(),t=r.value,t+=this._readWhitespace(),n=this._namespace_prefix(),n&&(t+=n),e.mustMatch(m.IDENT),t+=e.token().value,t+=this._readWhitespace(),e.match([m.PREFIXMATCH,m.SUFFIXMATCH,m.SUBSTRINGMATCH,m.EQUALS,m.INCLUDES,m.DASHMATCH])&&(t+=e.token().value,t+=this._readWhitespace(),e.mustMatch([m.IDENT,m.STRING]),t+=e.token().value,t+=this._readWhitespace()),e.mustMatch(m.RBRACKET),new d(t+"]","attribute",r.startLine,r.startCol)):null},_pseudo:function(){var e=this._tokenStream,t=null,n=":",r,s;if(e.match(m.COLON)){e.match(m.COLON)&&(n+=":"),e.match(m.IDENT)?(t=e.token().value,r=e.token().startLine,s=e.token().startCol-n.length):e.peek()===m.FUNCTION&&(r=e.LT(1).startLine,s=e.LT(1).startCol-n.length,t=this._functional_pseudo());if(!t){var o=e.LT(1).startLine,u=e.LT(0).startCol;throw new i("Expected a `FUNCTION` or `IDENT` after colon at line "+o+", col "+u+".",o,u)}t=new d(n+t,"pseudo",r,s)}return t},_functional_pseudo:function(){var e=this._tokenStream,t=null;return e.match(m.FUNCTION)&&(t=e.token().value,t+=this._readWhitespace(),t+=this._expression(),e.mustMatch(m.RPAREN),t+=")"),t},_expression:function(){var e=this._tokenStream,t="";while(e.match([m.PLUS,m.MINUS,m.DIMENSION,m.NUMBER,m.STRING,m.IDENT,m.LENGTH,m.FREQ,m.ANGLE,m.TIME,m.RESOLUTION,m.SLASH]))t+=e.token().value,t+=this._readWhitespace();return t.length?t:null},_negation:function(){var e=this._tokenStream,t,n,r="",i,s=null;return e.match(m.NOT)&&(r=e.token().value,t=e.token().startLine,n=e.token().startCol,r+=this._readWhitespace(),i=this._negation_arg(),r+=i,r+=this._readWhitespace(),e.match(m.RPAREN),r+=e.token().value,s=new d(r,"not",t,n),s.args.push(i)),s},_negation_arg:function(){var e=this._tokenStream,t=[this._type_selector,this._universal,function(){return e.match(m.HASH)?new d(e.token().value,"id",e.token().startLine,e.token().startCol):null},this._class,this._attrib,this._pseudo],n=null,r=0,i=t.length,s,o,u;s=e.LT(1).startLine,o=e.LT(1).startCol;while(r0?new l(t,t[0].line,t[0].col):null},_term:function(e){var t=this._tokenStream,n=null,r=null,i=null,s=null,o,u,a;return n=this._unary_operator(),n!==null&&(u=t.token().startLine,a=t.token().startCol),t.peek()===m.IE_FUNCTION&&this.options.ieFilters?(r=this._ie_function(),n===null&&(u=t.token().startLine,a=t.token().startCol)):e&&t.match([m.LPAREN,m.LBRACE,m.LBRACKET])?(o=t.token(),i=o.endChar,r=o.value+this._expr(e).text,n===null&&(u=t.token().startLine,a=t.token().startCol),t.mustMatch(m.type(i)),r+=i,this._readWhitespace()):t.match([m.NUMBER,m.PERCENTAGE,m.LENGTH,m.ANGLE,m.TIME,m.FREQ,m.STRING,m.IDENT,m.URI,m.UNICODE_RANGE])?(r=t.token().value,n===null&&(u=t.token().startLine,a=t.token().startCol,s=c.fromToken(t.token())),this._readWhitespace()):(o=this._hexcolor(),o===null?(n===null&&(u=t.LT(1).startLine,a=t.LT(1).startCol),r===null&&(t.LA(3)===m.EQUALS&&this.options.ieFilters?r=this._ie_function():r=this._function())):(r=o.value,n===null&&(u=o.startLine,a=o.startCol))),s!==null?s:r!==null?new c(n!==null?n+r:r,u,a):null},_function:function(){var e=this._tokenStream,t=null,n=null,r;if(e.match(m.FUNCTION)){t=e.token().value,this._readWhitespace(),n=this._expr(!0),t+=n;if(this.options.ieFilters&&e.peek()===m.EQUALS)do{this._readWhitespace()&&(t+=e.token().value),e.LA(0)===m.COMMA&&(t+=e.token().value),e.match(m.IDENT),t+=e.token().value,e.match(m.EQUALS),t+=e.token().value,r=e.peek();while(r!==m.COMMA&&r!==m.S&&r!==m.RPAREN)e.get(),t+=e.token().value,r=e.peek()}while(e.match([m.COMMA,m.S]));e.match(m.RPAREN),t+=")",this._readWhitespace()}return t},_ie_function:function(){var e=this._tokenStream,t=null,n;if(e.match([m.IE_FUNCTION,m.FUNCTION])){t=e.token().value;do{this._readWhitespace()&&(t+=e.token().value),e.LA(0)===m.COMMA&&(t+=e.token().value),e.match(m.IDENT),t+=e.token().value,e.match(m.EQUALS),t+=e.token().value,n=e.peek();while(n!==m.COMMA&&n!==m.S&&n!==m.RPAREN)e.get(),t+=e.token().value,n=e.peek()}while(e.match([m.COMMA,m.S]));e.match(m.RPAREN),t+=")",this._readWhitespace()}return t},_hexcolor:function(){var e=this._tokenStream,t=null,n;if(e.match(m.HASH)){t=e.token(),n=t.value;if(!/#[a-f0-9]{3,6}/i.test(n))throw new i("Expected a hex color but found '"+n+"' at line "+t.startLine+", col "+t.startCol+".",t.startLine,t.startCol);this._readWhitespace()}return t},_keyframes:function(){var e=this._tokenStream,t,n,r,i="";e.mustMatch(m.KEYFRAMES_SYM),t=e.token(),/^@-([^-]+)-/.test(t.value)&&(i=RegExp.$1),this._readWhitespace(),r=this._keyframe_name(),this._readWhitespace(),e.mustMatch(m.LBRACE),this.fire({type:"startkeyframes",name:r,prefix:i,line:t.startLine,col:t.startCol}),this._readWhitespace(),n=e.peek();while(n===m.IDENT||n===m.PERCENTAGE)this._keyframe_rule(),this._readWhitespace(),n=e.peek();this.fire({type:"endkeyframes",name:r,prefix:i,line:t.startLine,col:t.startCol}),this._readWhitespace(),e.mustMatch(m.RBRACE),this._readWhitespace()},_keyframe_name:function(){var e=this._tokenStream;return e.mustMatch([m.IDENT,m.STRING]),s.fromToken(e.token())},_keyframe_rule:function(){var e=this._key_list();this.fire({type:"startkeyframerule",keys:e,line:e[0].line,col:e[0].col}),this._readDeclarations(!0),this.fire({type:"endkeyframerule",keys:e,line:e[0].line,col:e[0].col})},_key_list:function(){var e=this._tokenStream,t=[];t.push(this._key()),this._readWhitespace();while(e.match(m.COMMA))this._readWhitespace(),t.push(this._key()),this._readWhitespace();return t},_key:function(){var e=this._tokenStream,t;if(e.match(m.PERCENTAGE))return s.fromToken(e.token());if(e.match(m.IDENT)){t=e.token();if(/from|to/i.test(t.value))return s.fromToken(t);e.unget()}this._unexpectedToken(e.LT(1))},_skipCruft:function(){while(this._tokenStream.match([m.S,m.CDO,m.CDC]));},_readDeclarations:function(e,t){var n=this._tokenStream,r;this._readWhitespace(),e&&n.mustMatch(m.LBRACE),this._readWhitespace();try{for(;;){if(!(n.match(m.SEMICOLON)||t&&this._margin())){if(!this._declaration())break;if(!n.match(m.SEMICOLON))break}this._readWhitespace()}n.mustMatch(m.RBRACE),this._readWhitespace()}catch(s){if(!(s instanceof i&&!this.options.strict))throw s;this.fire({type:"error",error:s,message:s.message,line:s.line,col:s.col}),r=n.advance([m.SEMICOLON,m.RBRACE]);if(r===m.SEMICOLON)this._readDeclarations(!1,t);else if(r!==m.EOF&&r!==m.RBRACE)throw s}},_readWhitespace:function(){var e=this._tokenStream,t="";while(e.match(m.S))t+=e.token().value;return t},_unexpectedToken:function(e){throw new i("Unexpected token '"+e.value+"' at line "+e.startLine+", col "+e.startCol+".",e.startLine,e.startCol)},_verifyEnd:function(){this._tokenStream.LA(1)!==m.EOF&&this._unexpectedToken(this._tokenStream.LT(1))},_validateProperty:function(e,t){g.validate(e,t)},parse:function(e){this._tokenStream=new v(e,m),this._stylesheet()},parseStyleSheet:function(e){return this.parse(e)},parseMediaQuery:function(e){this._tokenStream=new v(e,m);var t=this._media_query();return this._verifyEnd(),t},parsePropertyValue:function(e){this._tokenStream=new v(e,m),this._readWhitespace();var t=this._expr();return this._readWhitespace(),this._verifyEnd(),t},parseRule:function(e){this._tokenStream=new v(e,m),this._readWhitespace();var t=this._ruleset();return this._readWhitespace(),this._verifyEnd(),t},parseSelector:function(e){this._tokenStream=new v(e,m),this._readWhitespace();var t=this._selector();return this._readWhitespace(),this._verifyEnd(),t},parseStyleAttribute:function(e){e+="}",this._tokenStream=new v(e,m),this._readDeclarations()}};for(t in n)Object.prototype.hasOwnProperty.call(n,t)&&(e[t]=n[t]);return e}()},{"../util/EventTarget":23,"../util/SyntaxError":25,"../util/SyntaxUnit":26,"./Combinator":2,"./MediaFeature":4,"./MediaQuery":5,"./PropertyName":8,"./PropertyValue":9,"./PropertyValuePart":11,"./Selector":13,"./SelectorPart":14,"./SelectorSubPart":15,"./TokenStream":17,"./Tokens":18,"./Validation":19}],7:[function(e,t,n){"use strict";var r=t.exports={__proto__:null,"align-items":"flex-start | flex-end | center | baseline | stretch","align-content":"flex-start | flex-end | center | space-between | space-around | stretch","align-self":"auto | flex-start | flex-end | center | baseline | stretch",all:"initial | inherit | unset","-webkit-align-items":"flex-start | flex-end | center | baseline | stretch","-webkit-align-content":"flex-start | flex-end | center | space-between | space-around | stretch","-webkit-align-self":"auto | flex-start | flex-end | center | baseline | stretch","alignment-adjust":"auto | baseline | before-edge | text-before-edge | middle | central | after-edge | text-after-edge | ideographic | alphabetic | hanging | mathematical | | ","alignment-baseline":"auto | baseline | use-script | before-edge | text-before-edge | after-edge | text-after-edge | central | middle | ideographic | alphabetic | hanging | mathematical",animation:1,"animation-delay":"