diff --git a/THIRD_PARTY.txt b/THIRD_PARTY.txt
index 5cd4271c..9fcf4bad 100644
--- a/THIRD_PARTY.txt
+++ b/THIRD_PARTY.txt
@@ -762,264 +762,264 @@ https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/vs.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/xcode.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/xt256.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.3/styles/zenburn.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/highlight.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/1c.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/abnf.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/accesslog.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/actionscript.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/ada.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/angelscript.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/apache.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/applescript.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/arcade.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/arduino.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/armasm.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/asciidoc.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/aspectj.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/autohotkey.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/autoit.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/avrasm.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/awk.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/axapta.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/bash.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/basic.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/bnf.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/brainfuck.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/cal.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/capnproto.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/ceylon.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/clean.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/clojure.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/clojure-repl.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/cmake.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/c.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/coffeescript.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/coq.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/cos.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/cpp.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/crmsh.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/crystal.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/csharp.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/csp.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/css.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/dart.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/delphi.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/diff.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/django.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/d.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/dns.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/dockerfile.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/dos.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/dsconfig.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/dts.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/dust.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/ebnf.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/elixir.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/elm.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/erb.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/erlang.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/erlang-repl.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/excel.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/fix.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/flix.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/fortran.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/fsharp.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/gams.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/gauss.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/gcode.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/gherkin.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/glsl.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/gml.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/golo.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/go.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/gradle.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/groovy.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/haml.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/handlebars.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/haskell.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/haxe.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/hsp.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/http.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/hy.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/inform7.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/ini.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/irpf90.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/isbl.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/java.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/javascript.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/jboss-cli.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/json.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/julia.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/julia-repl.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/kotlin.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/lasso.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/latex.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/ldif.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/leaf.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/less.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/lisp.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/livecodeserver.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/livescript.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/llvm.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/lsl.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/lua.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/makefile.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/markdown.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/mathematica.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/matlab.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/maxima.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/mel.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/mercury.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/mipsasm.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/mizar.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/mojolicious.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/monkey.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/moonscript.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/n1ql.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/nestedtext.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/nginx.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/nim.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/nix.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/node-repl.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/nsis.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/objectivec.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/ocaml.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/openscad.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/oxygene.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/parser3.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/perl.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/pf.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/pgsql.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/php.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/php-template.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/plaintext.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/pony.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/powershell.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/processing.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/profile.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/prolog.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/properties.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/protobuf.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/puppet.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/purebasic.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/python.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/python-repl.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/q.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/qml.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/reasonml.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/rib.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/r.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/roboconf.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/routeros.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/rsl.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/ruby.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/ruleslanguage.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/rust.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/sas.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/scala.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/scheme.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/scilab.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/scss.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/shell.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/smali.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/smalltalk.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/sml.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/sqf.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/sql.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/stan.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/stata.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/step21.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/stylus.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/subunit.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/swift.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/taggerscript.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/tap.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/tcl.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/thrift.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/tp.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/twig.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/typescript.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/vala.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/vbnet.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/vbscript-html.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/vbscript.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/verilog.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/vhdl.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/vim.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/wasm.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/wren.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/x86asm.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/xl.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/xml.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/xquery.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/yaml.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/languages/zephir.min.js
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/a11y-dark.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/a11y-light.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/agate.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/androidstudio.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/an-old-hope.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/arduino-light.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/arta.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/ascetic.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/atom-one-dark.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/atom-one-dark-reasonable.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/atom-one-light.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/brown-paper.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/codepen-embed.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/color-brewer.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/dark.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/default.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/devibeans.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/docco.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/far.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/foundation.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/github-dark-dimmed.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/github-dark.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/github.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/gml.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/googlecode.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/gradient-dark.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/gradient-light.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/grayscale.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/hybrid.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/idea.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/ir-black.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/isbl-editor-dark.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/isbl-editor-light.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/kimbie-dark.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/kimbie-light.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/lightfair.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/lioshi.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/magula.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/mono-blue.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/monokai.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/monokai-sublime.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/night-owl.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/nnfx-dark.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/nnfx-light.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/nord.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/obsidian.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/paraiso-dark.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/paraiso-light.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/pojoaque.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/purebasic.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/qtcreator-dark.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/qtcreator-light.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/rainbow.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/routeros.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/school-book.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/shades-of-purple.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/srcery.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/stackoverflow-dark.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/stackoverflow-light.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/sunburst.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/tomorrow-night-blue.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/tomorrow-night-bright.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/vs2015.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/vs.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/xcode.min.css
-https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.4.0/styles/xt256.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/highlight.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/1c.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/abnf.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/accesslog.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/actionscript.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/ada.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/angelscript.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/apache.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/applescript.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/arcade.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/arduino.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/armasm.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/asciidoc.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/aspectj.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/autohotkey.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/autoit.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/avrasm.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/awk.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/axapta.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/bash.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/basic.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/bnf.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/brainfuck.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/cal.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/capnproto.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/ceylon.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/clean.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/clojure.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/clojure-repl.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/cmake.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/c.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/coffeescript.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/coq.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/cos.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/cpp.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/crmsh.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/crystal.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/csharp.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/csp.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/css.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/dart.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/delphi.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/diff.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/django.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/d.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/dns.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/dockerfile.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/dos.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/dsconfig.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/dts.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/dust.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/ebnf.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/elixir.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/elm.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/erb.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/erlang.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/erlang-repl.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/excel.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/fix.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/flix.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/fortran.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/fsharp.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/gams.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/gauss.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/gcode.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/gherkin.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/glsl.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/gml.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/golo.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/go.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/gradle.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/groovy.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/haml.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/handlebars.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/haskell.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/haxe.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/hsp.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/http.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/hy.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/inform7.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/ini.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/irpf90.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/isbl.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/java.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/javascript.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/jboss-cli.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/json.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/julia.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/julia-repl.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/kotlin.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/lasso.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/latex.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/ldif.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/leaf.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/less.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/lisp.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/livecodeserver.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/livescript.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/llvm.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/lsl.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/lua.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/makefile.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/markdown.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/mathematica.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/matlab.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/maxima.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/mel.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/mercury.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/mipsasm.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/mizar.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/mojolicious.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/monkey.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/moonscript.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/n1ql.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/nestedtext.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/nginx.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/nim.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/nix.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/node-repl.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/nsis.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/objectivec.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/ocaml.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/openscad.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/oxygene.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/parser3.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/perl.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/pf.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/pgsql.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/php.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/php-template.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/plaintext.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/pony.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/powershell.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/processing.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/profile.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/prolog.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/properties.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/protobuf.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/puppet.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/purebasic.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/python.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/python-repl.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/q.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/qml.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/reasonml.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/rib.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/r.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/roboconf.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/routeros.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/rsl.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/ruby.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/ruleslanguage.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/rust.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/sas.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/scala.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/scheme.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/scilab.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/scss.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/shell.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/smali.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/smalltalk.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/sml.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/sqf.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/sql.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/stan.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/stata.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/step21.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/stylus.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/subunit.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/swift.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/taggerscript.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/tap.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/tcl.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/thrift.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/tp.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/twig.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/typescript.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/vala.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/vbnet.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/vbscript-html.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/vbscript.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/verilog.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/vhdl.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/vim.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/wasm.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/wren.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/x86asm.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/xl.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/xml.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/xquery.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/yaml.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/languages/zephir.min.js
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/a11y-dark.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/a11y-light.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/agate.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/androidstudio.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/an-old-hope.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/arduino-light.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/arta.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/ascetic.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/atom-one-dark.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/atom-one-dark-reasonable.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/atom-one-light.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/brown-paper.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/codepen-embed.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/color-brewer.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/dark.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/default.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/devibeans.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/docco.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/far.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/foundation.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/github-dark-dimmed.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/github-dark.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/github.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/gml.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/googlecode.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/gradient-dark.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/gradient-light.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/grayscale.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/hybrid.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/idea.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/ir-black.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/isbl-editor-dark.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/isbl-editor-light.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/kimbie-dark.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/kimbie-light.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/lightfair.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/lioshi.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/magula.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/mono-blue.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/monokai.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/monokai-sublime.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/night-owl.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/nnfx-dark.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/nnfx-light.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/nord.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/obsidian.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/paraiso-dark.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/paraiso-light.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/pojoaque.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/purebasic.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/qtcreator-dark.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/qtcreator-light.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/rainbow.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/routeros.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/school-book.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/shades-of-purple.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/srcery.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/stackoverflow-dark.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/stackoverflow-light.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/sunburst.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/tomorrow-night-blue.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/tomorrow-night-bright.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/vs2015.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/vs.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/xcode.min.css
+https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.0/styles/xt256.min.css
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/highlight.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/apache.min.js
https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.5/languages/bash.min.js
diff --git a/modules/internal/targets.js b/modules/internal/targets.js
index cc12d444..5693df5f 100644
--- a/modules/internal/targets.js
+++ b/modules/internal/targets.js
@@ -218,7 +218,7 @@ targets.setLastVersion = function (type, version) {
if (type.startsWith('/highlight.js/8.')) return '9.18.5';
if (type.startsWith('/highlight.js/9.')) return '9.18.5';
if (type.startsWith('/highlight.js/10.')) return '10.7.3';
- if (type.startsWith('/highlight.js/11.')) return '11.4.0';
+ if (type.startsWith('/highlight.js/11.')) return '11.5.0';
if (type.startsWith('/history/4.')) return '4.10.1';
if (type.startsWith('/history/5.')) return '5.3.0';
if (type.startsWith('/hls.js/0.')) return '0.14.17';
diff --git a/pages/updates/updates.html b/pages/updates/updates.html
index d73ec7ca..1298bcdb 100644
--- a/pages/updates/updates.html
+++ b/pages/updates/updates.html
@@ -51,6 +51,7 @@
bodymovin v5.8.1 -> v5.9.1 (#892)
dayjs v1.10.7 -> v1.10.8 (#893)
react-router v6.2.1 -> v6.2.2 (#894)
+ highlight.js v11.4.0 -> v11.5.0 (#896)
Added
diff --git a/resources/highlight.js/11.4.0/brainfuck.min.jsm b/resources/highlight.js/11.4.0/brainfuck.min.jsm
deleted file mode 100644
index 72bc0a5c..00000000
--- a/resources/highlight.js/11.4.0/brainfuck.min.jsm
+++ /dev/null
@@ -1,7 +0,0 @@
-/*! `brainfuck` grammar compiled for Highlight.js 11.4.0 */
-(()=>{var e=(()=>{"use strict";return e=>{const n={className:"literal",
-begin:/[+-]/,relevance:0};return{name:"Brainfuck",aliases:["bf"],
-contains:[e.COMMENT("[^\\[\\]\\.,\\+\\-<> \r\n]","[\\[\\]\\.,\\+\\-<> \r\n]",{
-returnEnd:!0,relevance:0}),{className:"title",begin:"[\\[\\]]",relevance:0},{
-className:"string",begin:"[\\.,]",relevance:0},{begin:/(?:\+\+|--)/,contains:[n]
-},n]}}})();hljs.registerLanguage("brainfuck",e)})();
\ No newline at end of file
diff --git a/resources/highlight.js/11.4.0/clojure-repl.min.jsm b/resources/highlight.js/11.4.0/clojure-repl.min.jsm
deleted file mode 100644
index 5f2ac14d..00000000
--- a/resources/highlight.js/11.4.0/clojure-repl.min.jsm
+++ /dev/null
@@ -1,4 +0,0 @@
-/*! `clojure-repl` grammar compiled for Highlight.js 11.4.0 */
-(()=>{var e=(()=>{"use strict";return e=>({name:"Clojure REPL",contains:[{
-className:"meta",begin:/^([\w.-]+|\s*#_)?=>/,starts:{end:/$/,
-subLanguage:"clojure"}}]})})();hljs.registerLanguage("clojure-repl",e)})();
\ No newline at end of file
diff --git a/resources/highlight.js/11.4.0/css.min.jsm b/resources/highlight.js/11.4.0/css.min.jsm
deleted file mode 100644
index d8eb84c1..00000000
--- a/resources/highlight.js/11.4.0/css.min.jsm
+++ /dev/null
@@ -1,31 +0,0 @@
-/*! `css` grammar compiled for Highlight.js 11.4.0 */
-(()=>{var e=(()=>{"use strict"
-;const e=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],t=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],i=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],o=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],r=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","isolation","justify-content","left","letter-spacing","line-break","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-height","max-width","min-height","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pointer-events","position","quotes","resize","rest","rest-after","rest-before","right","row-gap","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","shape-image-threshold","shape-margin","shape-outside","speak","speak-as","src","tab-size","table-layout","text-align","text-align-all","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index"].reverse()
-;return a=>{const n=a.regex,l=(e=>({IMPORTANT:{scope:"meta",begin:"!important"},
-BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",
-begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{
-className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{
-scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",
-contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{
-scope:"number",
-begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",
-relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/}
-}))(a),s=[a.APOS_STRING_MODE,a.QUOTE_STRING_MODE];return{name:"CSS",
-case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},
-classNameAliases:{keyframePosition:"selector-tag"},contains:[l.BLOCK_COMMENT,{
-begin:/-(webkit|moz|ms|o)-(?=[a-z])/},l.CSS_NUMBER_MODE,{
-className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{
-className:"selector-class",begin:"\\.[a-zA-Z-][a-zA-Z0-9_-]*",relevance:0
-},l.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{
-begin:":("+i.join("|")+")"},{begin:":(:)?("+o.join("|")+")"}]},l.CSS_VARIABLE,{
-className:"attribute",begin:"\\b("+r.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,
-contains:[l.BLOCK_COMMENT,l.HEXCOLOR,l.IMPORTANT,l.CSS_NUMBER_MODE,...s,{
-begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"
-},contains:[{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]
-},l.FUNCTION_DISPATCH]},{begin:n.lookahead(/@/),end:"[{;]",relevance:0,
-illegal:/:/,contains:[{className:"keyword",begin:/@-?\w[\w]*(-\w+)*/},{
-begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{
-$pattern:/[a-z-]+/,keyword:"and or not only",attribute:t.join(" ")},contains:[{
-begin:/[a-z-]+(?=:)/,className:"attribute"},...s,l.CSS_NUMBER_MODE]}]},{
-className:"selector-tag",begin:"\\b("+e.join("|")+")\\b"}]}}})()
-;hljs.registerLanguage("css",e)})();
\ No newline at end of file
diff --git a/resources/highlight.js/11.4.0/julia-repl.min.jsm b/resources/highlight.js/11.4.0/julia-repl.min.jsm
deleted file mode 100644
index 1efaaec0..00000000
--- a/resources/highlight.js/11.4.0/julia-repl.min.jsm
+++ /dev/null
@@ -1,5 +0,0 @@
-/*! `julia-repl` grammar compiled for Highlight.js 11.4.0 */
-(()=>{var a=(()=>{"use strict";return a=>({name:"Julia REPL",contains:[{
-className:"meta",begin:/^julia>/,relevance:10,starts:{end:/^(?![ ]{6})/,
-subLanguage:"julia"}}],aliases:["jldoctest"]})})()
-;hljs.registerLanguage("julia-repl",a)})();
\ No newline at end of file
diff --git a/resources/highlight.js/11.4.0/less.min.jsm b/resources/highlight.js/11.4.0/less.min.jsm
deleted file mode 100644
index 0224eff9..00000000
--- a/resources/highlight.js/11.4.0/less.min.jsm
+++ /dev/null
@@ -1,43 +0,0 @@
-/*! `less` grammar compiled for Highlight.js 11.4.0 */
-(()=>{var e=(()=>{"use strict"
-;const e=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],t=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],i=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],r=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],o=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","isolation","justify-content","left","letter-spacing","line-break","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-height","max-width","min-height","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pointer-events","position","quotes","resize","rest","rest-after","rest-before","right","row-gap","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","shape-image-threshold","shape-margin","shape-outside","speak","speak-as","src","tab-size","table-layout","text-align","text-align-all","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index"].reverse(),n=i.concat(r)
-;return a=>{const s=(e=>({IMPORTANT:{scope:"meta",begin:"!important"},
-BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",
-begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{
-className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{
-scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",
-contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{
-scope:"number",
-begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",
-relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/}
-}))(a),l=n,d="([\\w-]+|@\\{[\\w-]+\\})",c=[],g=[],m=e=>({className:"string",
-begin:"~?"+e+".*?"+e}),p=(e,t,i)=>({className:e,begin:t,relevance:i}),b={
-$pattern:/[a-z-]+/,keyword:"and or not only",attribute:t.join(" ")},u={
-begin:"\\(",end:"\\)",contains:g,keywords:b,relevance:0}
-;g.push(a.C_LINE_COMMENT_MODE,a.C_BLOCK_COMMENT_MODE,m("'"),m('"'),s.CSS_NUMBER_MODE,{
-begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",
-excludeEnd:!0}
-},s.HEXCOLOR,u,p("variable","@@?[\\w-]+",10),p("variable","@\\{[\\w-]+\\}"),p("built_in","~?`[^`]*?`"),{
-className:"attribute",begin:"[\\w-]+\\s*:",end:":",returnBegin:!0,excludeEnd:!0
-},s.IMPORTANT);const h=g.concat({begin:/\{/,end:/\}/,contains:c}),f={
-beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"
-}].concat(g)},v={begin:d+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,
-contains:[{begin:/-(webkit|moz|ms|o)-/},s.CSS_VARIABLE,{className:"attribute",
-begin:"\\b("+o.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,
-illegal:"[<=$]",relevance:0,contains:g}}]},w={className:"keyword",
-begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",
-starts:{end:"[;{}]",keywords:b,returnEnd:!0,contains:g,relevance:0}},k={
-className:"variable",variants:[{begin:"@[\\w-]+\\s*:",relevance:15},{
-begin:"@[\\w-]+"}],starts:{end:"[;}]",returnEnd:!0,contains:h}},y={variants:[{
-begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:d,end:/\{/}],returnBegin:!0,
-returnEnd:!0,illegal:"[<='$\"]",relevance:0,
-contains:[a.C_LINE_COMMENT_MODE,a.C_BLOCK_COMMENT_MODE,f,p("keyword","all\\b"),p("variable","@\\{[\\w-]+\\}"),{
-begin:"\\b("+e.join("|")+")\\b",className:"selector-tag"
-},s.CSS_NUMBER_MODE,p("selector-tag",d,0),p("selector-id","#"+d),p("selector-class","\\."+d,0),p("selector-tag","&",0),s.ATTRIBUTE_SELECTOR_MODE,{
-className:"selector-pseudo",begin:":("+i.join("|")+")"},{
-className:"selector-pseudo",begin:":(:)?("+r.join("|")+")"},{begin:/\(/,
-end:/\)/,relevance:0,contains:h},{begin:"!important"},s.FUNCTION_DISPATCH]},x={
-begin:`[\\w-]+:(:)?(${l.join("|")})`,returnBegin:!0,contains:[y]}
-;return c.push(a.C_LINE_COMMENT_MODE,a.C_BLOCK_COMMENT_MODE,w,k,x,v,y),{
-name:"Less",case_insensitive:!0,illegal:"[=>'/<($\"]",contains:c}}})()
-;hljs.registerLanguage("less",e)})();
\ No newline at end of file
diff --git a/resources/highlight.js/11.4.0/node-repl.min.jsm b/resources/highlight.js/11.4.0/node-repl.min.jsm
deleted file mode 100644
index 6b263437..00000000
--- a/resources/highlight.js/11.4.0/node-repl.min.jsm
+++ /dev/null
@@ -1,5 +0,0 @@
-/*! `node-repl` grammar compiled for Highlight.js 11.4.0 */
-(()=>{var a=(()=>{"use strict";return a=>({name:"Node REPL",contains:[{
-className:"meta",starts:{end:/ |$/,starts:{end:"$",subLanguage:"javascript"}},
-variants:[{begin:/^>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]})})()
-;hljs.registerLanguage("node-repl",a)})();
\ No newline at end of file
diff --git a/resources/highlight.js/11.4.0/objectivec.min.jsm b/resources/highlight.js/11.4.0/objectivec.min.jsm
deleted file mode 100644
index adad6ef1..00000000
--- a/resources/highlight.js/11.4.0/objectivec.min.jsm
+++ /dev/null
@@ -1,21 +0,0 @@
-/*! `objectivec` grammar compiled for Highlight.js 11.4.0 */
-(()=>{var e=(()=>{"use strict";return e=>{const n=/[a-zA-Z@][a-zA-Z0-9_]*/,_={
-$pattern:n,keyword:["@interface","@class","@protocol","@implementation"]}
-;return{name:"Objective-C",
-aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:{$pattern:n,
-keyword:["int","float","while","char","export","sizeof","typedef","const","struct","for","union","unsigned","long","volatile","static","bool","mutable","if","do","return","goto","void","enum","else","break","extern","asm","case","short","default","double","register","explicit","signed","typename","this","switch","continue","wchar_t","inline","readonly","assign","readwrite","self","@synchronized","id","typeof","nonatomic","super","unichar","IBOutlet","IBAction","strong","weak","copy","in","out","inout","bycopy","byref","oneway","__strong","__weak","__block","__autoreleasing","@private","@protected","@public","@try","@property","@end","@throw","@catch","@finally","@autoreleasepool","@synthesize","@dynamic","@selector","@optional","@required","@encode","@package","@import","@defs","@compatibility_alias","__bridge","__bridge_transfer","__bridge_retained","__bridge_retain","__covariant","__contravariant","__kindof","_Nonnull","_Nullable","_Null_unspecified","__FUNCTION__","__PRETTY_FUNCTION__","__attribute__","getter","setter","retain","unsafe_unretained","nonnull","nullable","null_unspecified","null_resettable","class","instancetype","NS_DESIGNATED_INITIALIZER","NS_UNAVAILABLE","NS_REQUIRES_SUPER","NS_RETURNS_INNER_POINTER","NS_INLINE","NS_AVAILABLE","NS_DEPRECATED","NS_ENUM","NS_OPTIONS","NS_SWIFT_UNAVAILABLE","NS_ASSUME_NONNULL_BEGIN","NS_ASSUME_NONNULL_END","NS_REFINED_FOR_SWIFT","NS_SWIFT_NAME","NS_SWIFT_NOTHROW","NS_DURING","NS_HANDLER","NS_ENDHANDLER","NS_VALUERETURN","NS_VOIDRETURN"],
-literal:["false","true","FALSE","TRUE","nil","YES","NO","NULL"],
-built_in:["BOOL","dispatch_once_t","dispatch_queue_t","dispatch_sync","dispatch_async","dispatch_once"]
-},illegal:"",contains:[{className:"built_in",
-begin:"\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+"
-},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{
-className:"string",variants:[{begin:'@"',end:'"',illegal:"\\n",
-contains:[e.BACKSLASH_ESCAPE]}]},{className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,
-keywords:{
-keyword:"if else elif endif define undef warning error line pragma ifdef ifndef include"
-},contains:[{begin:/\\\n/,relevance:0},e.inherit(e.QUOTE_STRING_MODE,{
-className:"string"}),{className:"string",begin:/<.*?>/,end:/$/,illegal:"\\n"
-},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"class",
-begin:"("+_.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:_,
-contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE,
-relevance:0}]}}})();hljs.registerLanguage("objectivec",e)})();
\ No newline at end of file
diff --git a/resources/highlight.js/11.4.0/php.min.jsm b/resources/highlight.js/11.4.0/php.min.jsm
deleted file mode 100644
index 950ca8f9..00000000
--- a/resources/highlight.js/11.4.0/php.min.jsm
+++ /dev/null
@@ -1,47 +0,0 @@
-/*! `php` grammar compiled for Highlight.js 11.4.0 */
-(()=>{var e=(()=>{"use strict";return e=>{
-const t=e.regex,r="[a-zA-Z0-9_\x7f-\xff]*(?![A-Za-z0-9])(?![$]))",a=t.concat("([a-zA-Z_\\x7f-\\xff]",r),n=t.concat("([A-Z]",r),o={
-scope:"variable",match:"\\$+"+a},c={scope:"subst",variants:[{begin:/\$\w+/},{
-begin:/\{\$/,end:/\}/}]},i=e.inherit(e.APOS_STRING_MODE,{illegal:null
-}),l="[ \t\n]",s={scope:"string",variants:[e.inherit(e.QUOTE_STRING_MODE,{
-illegal:null,contains:e.QUOTE_STRING_MODE.contains.concat(c)
-}),i,e.END_SAME_AS_BEGIN({begin:/<<<[ \t]*(\w+)\n/,end:/[ \t]*(\w+)\b/,
-contains:e.QUOTE_STRING_MODE.contains.concat(c)})]},p={scope:"number",
-variants:[{begin:"\\b0[bB][01]+(?:_[01]+)*\\b"},{
-begin:"\\b0[oO][0-7]+(?:_[0-7]+)*\\b"},{
-begin:"\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b"},{
-begin:"(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?"
-}],relevance:0
-},_=["__CLASS__","__DIR__","__FILE__","__FUNCTION__","__COMPILER_HALT_OFFSET__","__LINE__","__METHOD__","__NAMESPACE__","__TRAIT__","die","echo","exit","include","include_once","print","require","require_once","array","abstract","and","as","binary","bool","boolean","break","callable","case","catch","class","clone","const","continue","declare","default","do","double","else","elseif","empty","enddeclare","endfor","endforeach","endif","endswitch","endwhile","enum","eval","extends","final","finally","float","for","foreach","from","global","goto","if","implements","instanceof","insteadof","int","integer","interface","isset","iterable","list","match|0","mixed","new","never","object","or","private","protected","public","readonly","real","return","string","switch","throw","trait","try","unset","use","var","void","while","xor","yield"],d=["Error|0","AppendIterator","ArgumentCountError","ArithmeticError","ArrayIterator","ArrayObject","AssertionError","BadFunctionCallException","BadMethodCallException","CachingIterator","CallbackFilterIterator","CompileError","Countable","DirectoryIterator","DivisionByZeroError","DomainException","EmptyIterator","ErrorException","Exception","FilesystemIterator","FilterIterator","GlobIterator","InfiniteIterator","InvalidArgumentException","IteratorIterator","LengthException","LimitIterator","LogicException","MultipleIterator","NoRewindIterator","OutOfBoundsException","OutOfRangeException","OuterIterator","OverflowException","ParentIterator","ParseError","RangeException","RecursiveArrayIterator","RecursiveCachingIterator","RecursiveCallbackFilterIterator","RecursiveDirectoryIterator","RecursiveFilterIterator","RecursiveIterator","RecursiveIteratorIterator","RecursiveRegexIterator","RecursiveTreeIterator","RegexIterator","RuntimeException","SeekableIterator","SplDoublyLinkedList","SplFileInfo","SplFileObject","SplFixedArray","SplHeap","SplMaxHeap","SplMinHeap","SplObjectStorage","SplObserver","SplPriorityQueue","SplQueue","SplStack","SplSubject","SplTempFileObject","TypeError","UnderflowException","UnexpectedValueException","UnhandledMatchError","ArrayAccess","BackedEnum","Closure","Fiber","Generator","Iterator","IteratorAggregate","Serializable","Stringable","Throwable","Traversable","UnitEnum","WeakReference","WeakMap","Directory","__PHP_Incomplete_Class","parent","php_user_filter","self","static","stdClass"],b={
-keyword:_,literal:(e=>{const t=[];return["false","null","true"].forEach((e=>{
-t.push(e),e.toLowerCase()===e?t.push(e.toUpperCase()):t.push(e.toLowerCase())
-})),t})(),built_in:d},u=e=>e.map((e=>e.replace(/\|\d+$/,""))),E={variants:[{
-match:[/new/,t.concat(l,"+"),t.concat("(?!",u(d).join("\\b|"),"\\b)"),t.concat(/\\?/,a),t.concat(l,"*",/\(/)],
-scope:{1:"keyword",4:"title.class"}}]},g={relevance:0,
-match:[/\b/,t.concat("(?!fn\\b|function\\b|",u(_).join("\\b|"),"|",u(d).join("\\b|"),"\\b)"),a,t.concat(l,"*"),t.lookahead(/(?=\()/)],
-scope:{3:"title.function.invoke"}},I=t.concat(a,"\\b(?!\\()"),h={variants:[{
-match:[t.concat(/::/,t.lookahead(/(?!class\b)/)),I],scope:{2:"variable.constant"
-}},{match:[/::/,/class/],scope:{2:"variable.language"}},{
-match:[n,t.concat("::",t.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{
-match:[n,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]};return{
-case_insensitive:!1,keywords:b,
-contains:[e.HASH_COMMENT_MODE,e.COMMENT("//","$"),e.COMMENT("/\\*","\\*/",{
-contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,
-keywords:"__halt_compiler",starts:{scope:"comment",end:e.MATCH_NOTHING_RE,
-contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},{scope:"meta",variants:[{
-begin:/<\?php/,relevance:10},{begin:/<\?[=]?/},{begin:/\?>/}]},{
-scope:"variable.language",match:/\$this\b/},o,g,h,{
-match:[/const/,/\s/,a,/\s*=/],scope:{1:"keyword",3:"variable.constant"}},E,{
-scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,
-excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"
-},e.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params",
-begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:b,
-contains:["self",o,h,e.C_BLOCK_COMMENT_MODE,s,p]}]},{scope:"class",variants:[{
-beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",
-illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{
-beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{
-beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,
-contains:[e.inherit(e.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{
-beginKeywords:"use",relevance:0,end:";",contains:[{
-match:/\b(as|const|function)\b/,scope:"keyword"},e.UNDERSCORE_TITLE_MODE]},s,p]}
-}})();hljs.registerLanguage("php",e)})();
\ No newline at end of file
diff --git a/resources/highlight.js/11.4.0/python-repl.min.jsm b/resources/highlight.js/11.4.0/python-repl.min.jsm
deleted file mode 100644
index e7cd439a..00000000
--- a/resources/highlight.js/11.4.0/python-repl.min.jsm
+++ /dev/null
@@ -1,5 +0,0 @@
-/*! `python-repl` grammar compiled for Highlight.js 11.4.0 */
-(()=>{var a=(()=>{"use strict";return a=>({aliases:["pycon"],contains:[{
-className:"meta",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},
-variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]})})()
-;hljs.registerLanguage("python-repl",a)})();
\ No newline at end of file
diff --git a/resources/highlight.js/11.4.0/ruby.min.jsm b/resources/highlight.js/11.4.0/ruby.min.jsm
deleted file mode 100644
index a5a8494a..00000000
--- a/resources/highlight.js/11.4.0/ruby.min.jsm
+++ /dev/null
@@ -1,48 +0,0 @@
-/*! `ruby` grammar compiled for Highlight.js 11.4.0 */
-(()=>{var e=(()=>{"use strict";return e=>{
-const n=e.regex,a="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",i={
-keyword:"and then defined module in return redo if BEGIN retry end for self when next until do begin unless END rescue else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor __FILE__",
-built_in:"proc lambda",literal:"true false nil"},s={className:"doctag",
-begin:"@[A-Za-z]+"},b={begin:"#<",end:">"},r=[e.COMMENT("#","$",{contains:[s]
-}),e.COMMENT("^=begin","^=end",{contains:[s],relevance:10
-}),e.COMMENT("^__END__","\\n$")],c={className:"subst",begin:/#\{/,end:/\}/,
-keywords:i},t={className:"string",contains:[e.BACKSLASH_ESCAPE,c],variants:[{
-begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/,
-end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{
-begin:/%[qQwWx]?,end:/>/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/,
-end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{
-begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{
-begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{
-begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{
-begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{
-begin:n.concat(/<<[-~]?'?/,n.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),
-contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,
-contains:[e.BACKSLASH_ESCAPE,c]})]}]},d="[0-9](_?[0-9])*",g={className:"number",
-relevance:0,variants:[{
-begin:`\\b([1-9](_?[0-9])*|0)(\\.(${d}))?([eE][+-]?(${d})|r)?i?\\b`},{
-begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b"
-},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{
-begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{
-begin:"\\b0(_?[0-7])+r?i?\\b"}]},l={className:"params",begin:"\\(",end:"\\)",
-endsParent:!0,keywords:i},o=[t,{className:"class",beginKeywords:"class module",
-end:"$|;",illegal:/=/,contains:[e.inherit(e.TITLE_MODE,{
-begin:"[A-Za-z_]\\w*(::\\w+)*(\\?|!)?"}),{begin:"<\\s*",contains:[{
-begin:"("+e.IDENT_RE+"::)?"+e.IDENT_RE,relevance:0}]}].concat(r)},{
-className:"function",begin:n.concat(/def\s+/,n.lookahead(a+"\\s*(\\(|;|$)")),
-relevance:0,keywords:"def",end:"$|;",contains:[e.inherit(e.TITLE_MODE,{begin:a
-}),l].concat(r)},{begin:e.IDENT_RE+"::"},{className:"symbol",
-begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",
-begin:":(?!\\s)",contains:[t,{begin:a}],relevance:0},g,{className:"variable",
-begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{
-className:"params",begin:/\|/,end:/\|/,relevance:0,keywords:i},{
-begin:"("+e.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{
-className:"regexp",contains:[e.BACKSLASH_ESCAPE,c],illegal:/\n/,variants:[{
-begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(",
-end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]
-}].concat(b,r),relevance:0}].concat(b,r);c.contains=o,l.contains=o;const _=[{
-begin:/^\s*=>/,starts:{end:"$",contains:o}},{className:"meta",
-begin:"^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+>|(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>)(?=[ ])",
-starts:{end:"$",contains:o}}];return r.unshift(b),{name:"Ruby",
-aliases:["rb","gemspec","podspec","thor","irb"],keywords:i,illegal:/\/\*/,
-contains:[e.SHEBANG({binary:"ruby"})].concat(_).concat(r).concat(o)}}})()
-;hljs.registerLanguage("ruby",e)})();
\ No newline at end of file
diff --git a/resources/highlight.js/11.4.0/scss.min.jsm b/resources/highlight.js/11.4.0/scss.min.jsm
deleted file mode 100644
index 9bc3ae4c..00000000
--- a/resources/highlight.js/11.4.0/scss.min.jsm
+++ /dev/null
@@ -1,33 +0,0 @@
-/*! `scss` grammar compiled for Highlight.js 11.4.0 */
-(()=>{var e=(()=>{"use strict"
-;const e=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],t=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],i=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],r=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],o=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","isolation","justify-content","left","letter-spacing","line-break","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-height","max-width","min-height","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pointer-events","position","quotes","resize","rest","rest-after","rest-before","right","row-gap","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","shape-image-threshold","shape-margin","shape-outside","speak","speak-as","src","tab-size","table-layout","text-align","text-align-all","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index"].reverse()
-;return a=>{const n=(e=>({IMPORTANT:{scope:"meta",begin:"!important"},
-BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",
-begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{
-className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{
-scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",
-contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{
-scope:"number",
-begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",
-relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/}
-}))(a),l=r,s=i,d="@[a-z-]+",c={className:"variable",
-begin:"(\\$[a-zA-Z-][a-zA-Z0-9_-]*)\\b"};return{name:"SCSS",case_insensitive:!0,
-illegal:"[=/|']",
-contains:[a.C_LINE_COMMENT_MODE,a.C_BLOCK_COMMENT_MODE,n.CSS_NUMBER_MODE,{
-className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{
-className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0
-},n.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",
-begin:"\\b("+e.join("|")+")\\b",relevance:0},{className:"selector-pseudo",
-begin:":("+s.join("|")+")"},{className:"selector-pseudo",
-begin:":(:)?("+l.join("|")+")"},c,{begin:/\(/,end:/\)/,
-contains:[n.CSS_NUMBER_MODE]},n.CSS_VARIABLE,{className:"attribute",
-begin:"\\b("+o.join("|")+")\\b"},{
-begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"
-},{begin:/:/,end:/[;}{]/,
-contains:[n.BLOCK_COMMENT,c,n.HEXCOLOR,n.CSS_NUMBER_MODE,a.QUOTE_STRING_MODE,a.APOS_STRING_MODE,n.IMPORTANT]
-},{begin:"@(page|font-face)",keywords:{$pattern:d,keyword:"@page @font-face"}},{
-begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,
-keyword:"and or not only",attribute:t.join(" ")},contains:[{begin:d,
-className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"
-},c,a.QUOTE_STRING_MODE,a.APOS_STRING_MODE,n.HEXCOLOR,n.CSS_NUMBER_MODE]
-},n.FUNCTION_DISPATCH]}}})();hljs.registerLanguage("scss",e)})();
\ No newline at end of file
diff --git a/resources/highlight.js/11.4.0/stylus.min.jsm b/resources/highlight.js/11.4.0/stylus.min.jsm
deleted file mode 100644
index 89152343..00000000
--- a/resources/highlight.js/11.4.0/stylus.min.jsm
+++ /dev/null
@@ -1,36 +0,0 @@
-/*! `stylus` grammar compiled for Highlight.js 11.4.0 */
-(()=>{var e=(()=>{"use strict"
-;const e=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],t=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],i=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],o=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],r=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","isolation","justify-content","left","letter-spacing","line-break","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-height","max-width","min-height","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pointer-events","position","quotes","resize","rest","rest-after","rest-before","right","row-gap","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","shape-image-threshold","shape-margin","shape-outside","speak","speak-as","src","tab-size","table-layout","text-align","text-align-all","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index"].reverse()
-;return a=>{const n=(e=>({IMPORTANT:{scope:"meta",begin:"!important"},
-BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",
-begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{
-className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{
-scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",
-contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{
-scope:"number",
-begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",
-relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/}
-}))(a),s={className:"variable",begin:"\\$"+a.IDENT_RE},l="(?=[.\\s\\n[:,(])"
-;return{name:"Stylus",aliases:["styl"],case_insensitive:!1,
-keywords:"if else for in",
-illegal:"(\\?|(\\bReturn\\b)|(\\bEnd\\b)|(\\bend\\b)|(\\bdef\\b)|;|#\\s|\\*\\s|===\\s|\\||%)",
-contains:[a.QUOTE_STRING_MODE,a.APOS_STRING_MODE,a.C_LINE_COMMENT_MODE,a.C_BLOCK_COMMENT_MODE,n.HEXCOLOR,{
-begin:"\\.[a-zA-Z][a-zA-Z0-9_-]*(?=[.\\s\\n[:,(])",className:"selector-class"},{
-begin:"#[a-zA-Z][a-zA-Z0-9_-]*(?=[.\\s\\n[:,(])",className:"selector-id"},{
-begin:"\\b("+e.join("|")+")"+l,className:"selector-tag"},{
-className:"selector-pseudo",begin:"&?:("+i.join("|")+")"+l},{
-className:"selector-pseudo",begin:"&?:(:)?("+o.join("|")+")"+l
-},n.ATTRIBUTE_SELECTOR_MODE,{className:"keyword",begin:/@media/,starts:{
-end:/[{;}]/,keywords:{$pattern:/[a-z-]+/,keyword:"and or not only",
-attribute:t.join(" ")},contains:[n.CSS_NUMBER_MODE]}},{className:"keyword",
-begin:"@((-(o|moz|ms|webkit)-)?(charset|css|debug|extend|font-face|for|import|include|keyframes|media|mixin|page|warn|while))\\b"
-},s,n.CSS_NUMBER_MODE,{className:"function",
-begin:"^[a-zA-Z][a-zA-Z0-9_-]*\\(.*\\)",illegal:"[\\n]",returnBegin:!0,
-contains:[{className:"title",begin:"\\b[a-zA-Z][a-zA-Z0-9_-]*"},{
-className:"params",begin:/\(/,end:/\)/,
-contains:[n.HEXCOLOR,s,a.APOS_STRING_MODE,n.CSS_NUMBER_MODE,a.QUOTE_STRING_MODE]
-}]},n.CSS_VARIABLE,{className:"attribute",begin:"\\b("+r.join("|")+")\\b",
-starts:{end:/;|$/,
-contains:[n.HEXCOLOR,s,a.APOS_STRING_MODE,a.QUOTE_STRING_MODE,n.CSS_NUMBER_MODE,a.C_BLOCK_COMMENT_MODE,n.IMPORTANT],
-illegal:/\./,relevance:0}},n.FUNCTION_DISPATCH]}}})()
-;hljs.registerLanguage("stylus",e)})();
\ No newline at end of file
diff --git a/resources/highlight.js/11.4.0/twig.min.jsm b/resources/highlight.js/11.4.0/twig.min.jsm
deleted file mode 100644
index 7603496a..00000000
--- a/resources/highlight.js/11.4.0/twig.min.jsm
+++ /dev/null
@@ -1,18 +0,0 @@
-/*! `twig` grammar compiled for Highlight.js 11.4.0 */
-(()=>{var e=(()=>{"use strict";return e=>{
-const a=e.regex,n=["attribute","block","constant","country_timezones","cycle","date","dump","html_classes","include","max","min","parent","random","range","source","template_from_string"]
-;let t=["apply","autoescape","block","cache","deprecated","do","embed","extends","filter","flush","for","from","if","import","include","macro","sandbox","set","use","verbatim","with"]
-;t=t.concat(t.map((e=>"end"+e)));const r={scope:"string",variants:[{begin:/'/,
-end:/'/},{begin:/"/,end:/"/}]},c={scope:"number",match:/\d+/},o={begin:/\(/,
-end:/\)/,excludeBegin:!0,excludeEnd:!0,contains:[r,c]},s={
-beginKeywords:n.join(" "),keywords:{name:n},relevance:0,contains:[o]},i={
-match:/\|(?=[A-Za-z_]+:?)/,beginScope:"punctuation",relevance:0,contains:[{
-match:/[A-Za-z_]+:?/,
-keywords:["abs","batch","capitalize","column","convert_encoding","country_name","currency_name","currency_symbol","data_uri","date","date_modify","default","escape","filter","first","format","format_currency","format_date","format_datetime","format_number","format_time","html_to_markdown","inky_to_html","inline_css","join","json_encode","keys","language_name","last","length","locale_name","lower","map","markdown","markdown_to_html","merge","nl2br","number_format","raw","reduce","replace","reverse","round","slice","slug","sort","spaceless","split","striptags","timezone_name","title","trim","u|0","upper","url_encode"]
-}]},m=(e,{relevance:n})=>({beginScope:{1:"template-tag",3:"name"},
-relevance:n||2,endScope:"template-tag",begin:[/\{%/,/\s*/,a.either(...e)],
-end:/%\}/,keywords:"in",contains:[i,s,r,c]}),l=m(t,{relevance:2
-}),d=m([/[a-z_]+/],{relevance:1});return{name:"Twig",aliases:["craftcms"],
-case_insensitive:!0,subLanguage:"xml",contains:[e.COMMENT(/\{#/,/#\}/),l,d,{
-className:"template-variable",begin:/\{\{/,end:/\}\}/,contains:["self",i,s,r,c]
-}]}}})();hljs.registerLanguage("twig",e)})();
\ No newline at end of file
diff --git a/resources/highlight.js/11.4.0/1c.min.jsm b/resources/highlight.js/11.5.0/1c.min.jsm
similarity index 99%
rename from resources/highlight.js/11.4.0/1c.min.jsm
rename to resources/highlight.js/11.5.0/1c.min.jsm
index 645be855..b06ddfc4 100644
--- a/resources/highlight.js/11.4.0/1c.min.jsm
+++ b/resources/highlight.js/11.5.0/1c.min.jsm
@@ -1,6 +1,6 @@
-/*! `1c` grammar compiled for Highlight.js 11.4.0 */
+/*! `1c` grammar compiled for Highlight.js 11.5.0 */
(()=>{var s=(()=>{"use strict";return s=>{
-var x="[A-Za-z\u0410-\u042f\u0430-\u044f\u0451\u0401_][A-Za-z\u0410-\u042f\u0430-\u044f\u0451\u0401_0-9]+",n="\u0434\u0430\u043b\u0435\u0435 \u0432\u043e\u0437\u0432\u0440\u0430\u0442 \u0432\u044b\u0437\u0432\u0430\u0442\u044c\u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0434\u043b\u044f \u0435\u0441\u043b\u0438 \u0438 \u0438\u0437 \u0438\u043b\u0438 \u0438\u043d\u0430\u0447\u0435 \u0438\u043d\u0430\u0447\u0435\u0435\u0441\u043b\u0438 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043a\u043e\u043d\u0435\u0446\u0435\u0441\u043b\u0438 \u043a\u043e\u043d\u0435\u0446\u043f\u043e\u043f\u044b\u0442\u043a\u0438 \u043a\u043e\u043d\u0435\u0446\u0446\u0438\u043a\u043b\u0430 \u043d\u0435 \u043d\u043e\u0432\u044b\u0439 \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u043f\u0435\u0440\u0435\u043c \u043f\u043e \u043f\u043e\u043a\u0430 \u043f\u043e\u043f\u044b\u0442\u043a\u0430 \u043f\u0440\u0435\u0440\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c \u0442\u043e\u0433\u0434\u0430 \u0446\u0438\u043a\u043b \u044d\u043a\u0441\u043f\u043e\u0440\u0442 ",e="null \u0438\u0441\u0442\u0438\u043d\u0430 \u043b\u043e\u0436\u044c \u043d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e",o=s.inherit(s.NUMBER_MODE),t={
+const x="[A-Za-z\u0410-\u042f\u0430-\u044f\u0451\u0401_][A-Za-z\u0410-\u042f\u0430-\u044f\u0451\u0401_0-9]+",n="\u0434\u0430\u043b\u0435\u0435 \u0432\u043e\u0437\u0432\u0440\u0430\u0442 \u0432\u044b\u0437\u0432\u0430\u0442\u044c\u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0434\u043b\u044f \u0435\u0441\u043b\u0438 \u0438 \u0438\u0437 \u0438\u043b\u0438 \u0438\u043d\u0430\u0447\u0435 \u0438\u043d\u0430\u0447\u0435\u0435\u0441\u043b\u0438 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043a\u043e\u043d\u0435\u0446\u0435\u0441\u043b\u0438 \u043a\u043e\u043d\u0435\u0446\u043f\u043e\u043f\u044b\u0442\u043a\u0438 \u043a\u043e\u043d\u0435\u0446\u0446\u0438\u043a\u043b\u0430 \u043d\u0435 \u043d\u043e\u0432\u044b\u0439 \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u043f\u0435\u0440\u0435\u043c \u043f\u043e \u043f\u043e\u043a\u0430 \u043f\u043e\u043f\u044b\u0442\u043a\u0430 \u043f\u0440\u0435\u0440\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c \u0442\u043e\u0433\u0434\u0430 \u0446\u0438\u043a\u043b \u044d\u043a\u0441\u043f\u043e\u0440\u0442 ",e="null \u0438\u0441\u0442\u0438\u043d\u0430 \u043b\u043e\u0436\u044c \u043d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e",o=s.inherit(s.NUMBER_MODE),t={
className:"string",begin:'"|\\|',end:'"|$',contains:[{begin:'""'}]},a={
begin:"'",end:"'",excludeBegin:!0,excludeEnd:!0,contains:[{className:"number",
begin:"\\d{4}([\\.\\\\/:-]?\\d{2}){0,5}"}]},m=s.inherit(s.C_LINE_COMMENT_MODE)
diff --git a/resources/highlight.js/11.4.0/a11y-dark.min.css b/resources/highlight.js/11.5.0/a11y-dark.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/a11y-dark.min.css
rename to resources/highlight.js/11.5.0/a11y-dark.min.css
diff --git a/resources/highlight.js/11.4.0/a11y-light.min.css b/resources/highlight.js/11.5.0/a11y-light.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/a11y-light.min.css
rename to resources/highlight.js/11.5.0/a11y-light.min.css
diff --git a/resources/highlight.js/11.4.0/abnf.min.jsm b/resources/highlight.js/11.5.0/abnf.min.jsm
similarity index 87%
rename from resources/highlight.js/11.4.0/abnf.min.jsm
rename to resources/highlight.js/11.5.0/abnf.min.jsm
index bd30fbb1..f7529e02 100644
--- a/resources/highlight.js/11.4.0/abnf.min.jsm
+++ b/resources/highlight.js/11.5.0/abnf.min.jsm
@@ -1,4 +1,4 @@
-/*! `abnf` grammar compiled for Highlight.js 11.4.0 */
+/*! `abnf` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const a=e.regex,s=e.COMMENT(/;/,/$/)
;return{name:"Augmented Backus-Naur Form",illegal:/[!@#$^&',?+~`|:]/,
keywords:["ALPHA","BIT","CHAR","CR","CRLF","CTL","DIGIT","DQUOTE","HEXDIG","HTAB","LF","LWSP","OCTET","SP","VCHAR","WSP"],
diff --git a/resources/highlight.js/11.4.0/accesslog.min.jsm b/resources/highlight.js/11.5.0/accesslog.min.jsm
similarity index 88%
rename from resources/highlight.js/11.4.0/accesslog.min.jsm
rename to resources/highlight.js/11.5.0/accesslog.min.jsm
index 61e4de21..bf1b6f50 100644
--- a/resources/highlight.js/11.4.0/accesslog.min.jsm
+++ b/resources/highlight.js/11.5.0/accesslog.min.jsm
@@ -1,4 +1,4 @@
-/*! `accesslog` grammar compiled for Highlight.js 11.4.0 */
+/*! `accesslog` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{
const n=e.regex,a=["GET","POST","HEAD","PUT","DELETE","CONNECT","OPTIONS","PATCH","TRACE"]
;return{name:"Apache Access Log",contains:[{className:"number",
diff --git a/resources/highlight.js/11.4.0/actionscript.min.jsm b/resources/highlight.js/11.5.0/actionscript.min.jsm
similarity index 92%
rename from resources/highlight.js/11.4.0/actionscript.min.jsm
rename to resources/highlight.js/11.5.0/actionscript.min.jsm
index 732e5294..edf81acf 100644
--- a/resources/highlight.js/11.4.0/actionscript.min.jsm
+++ b/resources/highlight.js/11.5.0/actionscript.min.jsm
@@ -1,4 +1,4 @@
-/*! `actionscript` grammar compiled for Highlight.js 11.4.0 */
+/*! `actionscript` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{
const a=e.regex,t=/[a-zA-Z_$][a-zA-Z0-9_$]*/,n=a.concat(t,a.concat("(\\.",t,")*")),s={
className:"rest_arg",begin:/[.]{3}/,end:t,relevance:10};return{
diff --git a/resources/highlight.js/11.4.0/ada.min.jsm b/resources/highlight.js/11.5.0/ada.min.jsm
similarity index 95%
rename from resources/highlight.js/11.4.0/ada.min.jsm
rename to resources/highlight.js/11.5.0/ada.min.jsm
index 4d43047b..ce078234 100644
--- a/resources/highlight.js/11.4.0/ada.min.jsm
+++ b/resources/highlight.js/11.5.0/ada.min.jsm
@@ -1,4 +1,4 @@
-/*! `ada` grammar compiled for Highlight.js 11.4.0 */
+/*! `ada` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{
const n="[A-Za-z](_?[A-Za-z0-9.])*",s="[]\\{\\}%#'\"",a=e.COMMENT("--","$"),r={
begin:"\\s+:\\s+",end:"\\s*(:=|;|\\)|=>|$)",illegal:s,contains:[{
diff --git a/resources/highlight.js/11.4.0/agate.min.css b/resources/highlight.js/11.5.0/agate.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/agate.min.css
rename to resources/highlight.js/11.5.0/agate.min.css
diff --git a/resources/highlight.js/11.4.0/an-old-hope.min.css b/resources/highlight.js/11.5.0/an-old-hope.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/an-old-hope.min.css
rename to resources/highlight.js/11.5.0/an-old-hope.min.css
diff --git a/resources/highlight.js/11.4.0/androidstudio.min.css b/resources/highlight.js/11.5.0/androidstudio.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/androidstudio.min.css
rename to resources/highlight.js/11.5.0/androidstudio.min.css
diff --git a/resources/highlight.js/11.4.0/angelscript.min.jsm b/resources/highlight.js/11.5.0/angelscript.min.jsm
similarity index 86%
rename from resources/highlight.js/11.4.0/angelscript.min.jsm
rename to resources/highlight.js/11.5.0/angelscript.min.jsm
index 497c7fa2..262c38f8 100644
--- a/resources/highlight.js/11.4.0/angelscript.min.jsm
+++ b/resources/highlight.js/11.5.0/angelscript.min.jsm
@@ -1,6 +1,6 @@
-/*! `angelscript` grammar compiled for Highlight.js 11.4.0 */
+/*! `angelscript` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const n={className:"built_in",
-begin:"\\b(void|bool|int|int8|int16|int32|int64|uint|uint8|uint16|uint32|uint64|string|ref|array|double|float|auto|dictionary)"
+begin:"\\b(void|bool|int8|int16|int32|int64|int|uint8|uint16|uint32|uint64|uint|string|ref|array|double|float|auto|dictionary)"
},a={className:"symbol",begin:"[a-zA-Z0-9_]+@"},i={className:"keyword",
begin:"<",end:">",contains:[n,a]};return n.contains=[i],a.contains=[i],{
name:"AngelScript",aliases:["asc"],
diff --git a/resources/highlight.js/11.4.0/apache.min.jsm b/resources/highlight.js/11.5.0/apache.min.jsm
similarity index 90%
rename from resources/highlight.js/11.4.0/apache.min.jsm
rename to resources/highlight.js/11.5.0/apache.min.jsm
index dcea0ab5..01240297 100644
--- a/resources/highlight.js/11.4.0/apache.min.jsm
+++ b/resources/highlight.js/11.5.0/apache.min.jsm
@@ -1,4 +1,4 @@
-/*! `apache` grammar compiled for Highlight.js 11.4.0 */
+/*! `apache` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const n={className:"number",
begin:/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(:\d{1,5})?/};return{
name:"Apache config",aliases:["apacheconf"],case_insensitive:!0,
diff --git a/resources/highlight.js/11.4.0/applescript.min.jsm b/resources/highlight.js/11.5.0/applescript.min.jsm
similarity index 91%
rename from resources/highlight.js/11.4.0/applescript.min.jsm
rename to resources/highlight.js/11.5.0/applescript.min.jsm
index 0d12c1a5..1331249d 100644
--- a/resources/highlight.js/11.4.0/applescript.min.jsm
+++ b/resources/highlight.js/11.5.0/applescript.min.jsm
@@ -1,4 +1,4 @@
-/*! `applescript` grammar compiled for Highlight.js 11.4.0 */
+/*! `applescript` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{
const t=e.regex,r=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),i={
className:"params",begin:/\(/,end:/\)/,contains:["self",e.C_NUMBER_MODE,r]
@@ -7,7 +7,7 @@ className:"params",begin:/\(/,end:/\)/,contains:["self",e.C_NUMBER_MODE,r]
keywords:{
keyword:"about above after against and around as at back before beginning behind below beneath beside between but by considering contain contains continue copy div does eighth else end equal equals error every exit fifth first for fourth from front get given global if ignoring in into is it its last local me middle mod my ninth not of on onto or over prop property put ref reference repeat returning script second set seventh since sixth some tell tenth that the|0 then third through thru timeout times to transaction try until where while whose with without",
literal:"AppleScript false linefeed return pi quote result space tab true",
-built_in:"alias application boolean class constant date file integer list number real record string text activate beep count delay launch log offset read round run say summarize write character characters contents day frontmost id item length month name paragraph paragraphs rest reverse running time version weekday word words year"
+built_in:"alias application boolean class constant date file integer list number real record string text activate beep count delay launch log offset read round run say summarize write character characters contents day frontmost id item length month name|0 paragraph paragraphs rest reverse running time version weekday word words year"
},contains:[r,e.C_NUMBER_MODE,{className:"built_in",
begin:t.concat(/\b/,t.either(/clipboard info/,/the clipboard/,/info for/,/list (disks|folder)/,/mount volume/,/path to/,/(close|open for) access/,/(get|set) eof/,/current date/,/do shell script/,/get volume settings/,/random number/,/set volume/,/system attribute/,/system info/,/time to GMT/,/(load|run|store) script/,/scripting components/,/ASCII (character|number)/,/localized string/,/choose (application|color|file|file name|folder|from list|remote application|URL)/,/display (alert|dialog)/),/\b/)
},{className:"built_in",begin:/^\s*return\b/},{className:"literal",
diff --git a/resources/highlight.js/11.4.0/arcade.min.jsm b/resources/highlight.js/11.5.0/arcade.min.jsm
similarity index 97%
rename from resources/highlight.js/11.4.0/arcade.min.jsm
rename to resources/highlight.js/11.5.0/arcade.min.jsm
index 4a6d4e97..c9ae16e8 100644
--- a/resources/highlight.js/11.4.0/arcade.min.jsm
+++ b/resources/highlight.js/11.5.0/arcade.min.jsm
@@ -1,4 +1,4 @@
-/*! `arcade` grammar compiled for Highlight.js 11.4.0 */
+/*! `arcade` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const n="[A-Za-z_][0-9A-Za-z_]*",a={
keyword:["if","for","while","var","new","function","do","return","void","else","break"],
literal:["BackSlash","DoubleQuote","false","ForwardSlash","Infinity","NaN","NewLine","null","PI","SingleQuote","Tab","TextFormatting","true","undefined"],
diff --git a/resources/highlight.js/11.4.0/arduino-light.min.css b/resources/highlight.js/11.5.0/arduino-light.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/arduino-light.min.css
rename to resources/highlight.js/11.5.0/arduino-light.min.css
diff --git a/resources/highlight.js/11.4.0/arduino.min.jsm b/resources/highlight.js/11.5.0/arduino.min.jsm
similarity index 99%
rename from resources/highlight.js/11.4.0/arduino.min.jsm
rename to resources/highlight.js/11.5.0/arduino.min.jsm
index de0d573d..95037a6d 100644
--- a/resources/highlight.js/11.4.0/arduino.min.jsm
+++ b/resources/highlight.js/11.5.0/arduino.min.jsm
@@ -1,4 +1,4 @@
-/*! `arduino` grammar compiled for Highlight.js 11.4.0 */
+/*! `arduino` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const t={
type:["boolean","byte","word","String"],
built_in:["KeyboardController","MouseController","SoftwareSerial","EthernetServer","EthernetClient","LiquidCrystal","RobotControl","GSMVoiceCall","EthernetUDP","EsploraTFT","HttpClient","RobotMotor","WiFiClient","GSMScanner","FileSystem","Scheduler","GSMServer","YunClient","YunServer","IPAddress","GSMClient","GSMModem","Keyboard","Ethernet","Console","GSMBand","Esplora","Stepper","Process","WiFiUDP","GSM_SMS","Mailbox","USBHost","Firmata","PImage","Client","Server","GSMPIN","FileIO","Bridge","Serial","EEPROM","Stream","Mouse","Audio","Servo","File","Task","GPRS","WiFi","Wire","TFT","GSM","SPI","SD"],
diff --git a/resources/highlight.js/11.4.0/armasm.min.jsm b/resources/highlight.js/11.5.0/armasm.min.jsm
similarity index 97%
rename from resources/highlight.js/11.4.0/armasm.min.jsm
rename to resources/highlight.js/11.5.0/armasm.min.jsm
index fdd079f2..ef18cfc6 100644
--- a/resources/highlight.js/11.4.0/armasm.min.jsm
+++ b/resources/highlight.js/11.5.0/armasm.min.jsm
@@ -1,4 +1,4 @@
-/*! `armasm` grammar compiled for Highlight.js 11.4.0 */
+/*! `armasm` grammar compiled for Highlight.js 11.5.0 */
(()=>{var s=(()=>{"use strict";return s=>{const e={
variants:[s.COMMENT("^[ \\t]*(?=#)","$",{relevance:0,excludeBegin:!0
}),s.COMMENT("[;@]","$",{relevance:0
diff --git a/resources/highlight.js/11.4.0/arta.min.css b/resources/highlight.js/11.5.0/arta.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/arta.min.css
rename to resources/highlight.js/11.5.0/arta.min.css
diff --git a/resources/highlight.js/11.4.0/ascetic.min.css b/resources/highlight.js/11.5.0/ascetic.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/ascetic.min.css
rename to resources/highlight.js/11.5.0/ascetic.min.css
diff --git a/resources/highlight.js/11.4.0/asciidoc.min.jsm b/resources/highlight.js/11.5.0/asciidoc.min.jsm
similarity index 95%
rename from resources/highlight.js/11.4.0/asciidoc.min.jsm
rename to resources/highlight.js/11.5.0/asciidoc.min.jsm
index 6b64309d..17b448e9 100644
--- a/resources/highlight.js/11.4.0/asciidoc.min.jsm
+++ b/resources/highlight.js/11.5.0/asciidoc.min.jsm
@@ -1,4 +1,4 @@
-/*! `asciidoc` grammar compiled for Highlight.js 11.4.0 */
+/*! `asciidoc` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const n=e.regex,a=[{
className:"strong",begin:/\*{2}([^\n]+?)\*{2}/},{className:"strong",
begin:n.concat(/\*\*/,/((\*(?!\*)|\\[^\n]|[^*\n\\])+\n)+/,/(\*(?!\*)|\\[^\n]|[^*\n\\])*/,/\*\*/),
diff --git a/resources/highlight.js/11.4.0/aspectj.min.jsm b/resources/highlight.js/11.5.0/aspectj.min.jsm
similarity index 97%
rename from resources/highlight.js/11.4.0/aspectj.min.jsm
rename to resources/highlight.js/11.5.0/aspectj.min.jsm
index 55c504c6..6ab5833e 100644
--- a/resources/highlight.js/11.4.0/aspectj.min.jsm
+++ b/resources/highlight.js/11.5.0/aspectj.min.jsm
@@ -1,4 +1,4 @@
-/*! `aspectj` grammar compiled for Highlight.js 11.4.0 */
+/*! `aspectj` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{
const n=e.regex,t=["false","synchronized","int","abstract","float","private","char","boolean","static","null","if","const","for","true","while","long","throw","strictfp","finally","protected","import","native","final","return","void","enum","else","extends","implements","break","transient","new","catch","instanceof","byte","super","volatile","case","assert","short","package","default","double","public","try","this","switch","continue","throws","privileged","aspectOf","adviceexecution","proceed","cflowbelow","cflow","initialization","preinitialization","staticinitialization","withincode","target","within","execution","getWithinTypeName","handler","thisJoinPoint","thisJoinPointStaticPart","thisEnclosingJoinPointStaticPart","declare","parents","warning","error","soft","precedence","thisAspectInstance"],i=["get","set","args","call"]
;return{name:"AspectJ",keywords:t,illegal:/<\/|#/,
diff --git a/resources/highlight.js/11.4.0/atom-one-dark-reasonable.min.css b/resources/highlight.js/11.5.0/atom-one-dark-reasonable.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/atom-one-dark-reasonable.min.css
rename to resources/highlight.js/11.5.0/atom-one-dark-reasonable.min.css
diff --git a/resources/highlight.js/11.4.0/atom-one-dark.min.css b/resources/highlight.js/11.5.0/atom-one-dark.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/atom-one-dark.min.css
rename to resources/highlight.js/11.5.0/atom-one-dark.min.css
diff --git a/resources/highlight.js/11.4.0/atom-one-light.min.css b/resources/highlight.js/11.5.0/atom-one-light.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/atom-one-light.min.css
rename to resources/highlight.js/11.5.0/atom-one-light.min.css
diff --git a/resources/highlight.js/11.4.0/autohotkey.min.jsm b/resources/highlight.js/11.5.0/autohotkey.min.jsm
similarity index 89%
rename from resources/highlight.js/11.4.0/autohotkey.min.jsm
rename to resources/highlight.js/11.5.0/autohotkey.min.jsm
index c4e756ac..df010663 100644
--- a/resources/highlight.js/11.4.0/autohotkey.min.jsm
+++ b/resources/highlight.js/11.5.0/autohotkey.min.jsm
@@ -1,4 +1,4 @@
-/*! `autohotkey` grammar compiled for Highlight.js 11.4.0 */
+/*! `autohotkey` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const a={begin:"`[\\s\\S]"};return{
name:"AutoHotkey",case_insensitive:!0,aliases:["ahk"],keywords:{
keyword:"Break Continue Critical Exit ExitApp Gosub Goto New OnExit Pause return SetBatchLines SetTimer Suspend Thread Throw Until ahk_id ahk_class ahk_pid ahk_exe ahk_group",
diff --git a/resources/highlight.js/11.4.0/autoit.min.jsm b/resources/highlight.js/11.5.0/autoit.min.jsm
similarity index 98%
rename from resources/highlight.js/11.4.0/autoit.min.jsm
rename to resources/highlight.js/11.5.0/autoit.min.jsm
index 60d5694d..46f920ff 100644
--- a/resources/highlight.js/11.4.0/autoit.min.jsm
+++ b/resources/highlight.js/11.5.0/autoit.min.jsm
@@ -1,4 +1,4 @@
-/*! `autoit` grammar compiled for Highlight.js 11.4.0 */
+/*! `autoit` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const t={variants:[e.COMMENT(";","$",{
relevance:0
}),e.COMMENT("#cs","#ce"),e.COMMENT("#comments-start","#comments-end")]},r={
diff --git a/resources/highlight.js/11.4.0/avrasm.min.jsm b/resources/highlight.js/11.5.0/avrasm.min.jsm
similarity index 96%
rename from resources/highlight.js/11.4.0/avrasm.min.jsm
rename to resources/highlight.js/11.5.0/avrasm.min.jsm
index c0adc63b..33e8c5cc 100644
--- a/resources/highlight.js/11.4.0/avrasm.min.jsm
+++ b/resources/highlight.js/11.5.0/avrasm.min.jsm
@@ -1,4 +1,4 @@
-/*! `avrasm` grammar compiled for Highlight.js 11.4.0 */
+/*! `avrasm` grammar compiled for Highlight.js 11.5.0 */
(()=>{var r=(()=>{"use strict";return r=>({name:"AVR Assembly",
case_insensitive:!0,keywords:{$pattern:"\\.?"+r.IDENT_RE,
keyword:"adc add adiw and andi asr bclr bld brbc brbs brcc brcs break breq brge brhc brhs brid brie brlo brlt brmi brne brpl brsh brtc brts brvc brvs bset bst call cbi cbr clc clh cli cln clr cls clt clv clz com cp cpc cpi cpse dec eicall eijmp elpm eor fmul fmuls fmulsu icall ijmp in inc jmp ld ldd ldi lds lpm lsl lsr mov movw mul muls mulsu neg nop or ori out pop push rcall ret reti rjmp rol ror sbc sbr sbrc sbrs sec seh sbi sbci sbic sbis sbiw sei sen ser ses set sev sez sleep spm st std sts sub subi swap tst wdr",
diff --git a/resources/highlight.js/11.4.0/awk.min.jsm b/resources/highlight.js/11.5.0/awk.min.jsm
similarity index 87%
rename from resources/highlight.js/11.4.0/awk.min.jsm
rename to resources/highlight.js/11.5.0/awk.min.jsm
index 3ed27bbb..8134f20b 100644
--- a/resources/highlight.js/11.4.0/awk.min.jsm
+++ b/resources/highlight.js/11.5.0/awk.min.jsm
@@ -1,4 +1,4 @@
-/*! `awk` grammar compiled for Highlight.js 11.4.0 */
+/*! `awk` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"Awk",keywords:{
keyword:"BEGIN END if else while do for in break continue delete next nextfile function func exit|10"
},contains:[{className:"variable",variants:[{begin:/\$[\w\d#@][\w\d_]*/},{
diff --git a/resources/highlight.js/11.4.0/axapta.min.jsm b/resources/highlight.js/11.5.0/axapta.min.jsm
similarity index 96%
rename from resources/highlight.js/11.4.0/axapta.min.jsm
rename to resources/highlight.js/11.5.0/axapta.min.jsm
index b4663266..ab7475c2 100644
--- a/resources/highlight.js/11.4.0/axapta.min.jsm
+++ b/resources/highlight.js/11.5.0/axapta.min.jsm
@@ -1,4 +1,4 @@
-/*! `axapta` grammar compiled for Highlight.js 11.4.0 */
+/*! `axapta` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const t=e.UNDERSCORE_IDENT_RE,s={
keyword:["abstract","as","asc","avg","break","breakpoint","by","byref","case","catch","changecompany","class","client","client","common","const","continue","count","crosscompany","delegate","delete_from","desc","display","div","do","edit","else","eventhandler","exists","extends","final","finally","firstfast","firstonly","firstonly1","firstonly10","firstonly100","firstonly1000","flush","for","forceliterals","forcenestedloop","forceplaceholders","forceselectorder","forupdate","from","generateonly","group","hint","if","implements","in","index","insert_recordset","interface","internal","is","join","like","maxof","minof","mod","namespace","new","next","nofetch","notexists","optimisticlock","order","outer","pessimisticlock","print","private","protected","public","readonly","repeatableread","retry","return","reverse","select","server","setting","static","sum","super","switch","this","throw","try","ttsabort","ttsbegin","ttscommit","unchecked","update_recordset","using","validtimestate","void","where","while"],
built_in:["anytype","boolean","byte","char","container","date","double","enum","guid","int","int64","long","real","short","str","utcdatetime","var"],
diff --git a/resources/highlight.js/11.4.0/bash.min.jsm b/resources/highlight.js/11.5.0/bash.min.jsm
similarity index 94%
rename from resources/highlight.js/11.4.0/bash.min.jsm
rename to resources/highlight.js/11.5.0/bash.min.jsm
index ef78f760..4b293c64 100644
--- a/resources/highlight.js/11.4.0/bash.min.jsm
+++ b/resources/highlight.js/11.5.0/bash.min.jsm
@@ -1,4 +1,4 @@
-/*! `bash` grammar compiled for Highlight.js 11.4.0 */
+/*! `bash` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const s=e.regex,t={},n={begin:/\$\{/,
end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]};Object.assign(t,{
className:"variable",variants:[{
@@ -11,7 +11,7 @@ end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,t]
},r=e.SHEBANG({binary:"(fish|bash|zsh|sh|csh|ksh|tcsh|dash|scsh)",relevance:10
}),l={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,
contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{
-name:"Bash",aliases:["sh"],keywords:{$pattern:/\b[a-z._-]+\b/,
+name:"Bash",aliases:["sh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,
keyword:["if","then","else","elif","fi","for","while","in","do","done","case","esac","function"],
literal:["true","false"],
built_in:["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset","alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","type","typeset","ulimit","unalias","set","shopt","autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp","chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"]
diff --git a/resources/highlight.js/11.4.0/basic.min.jsm b/resources/highlight.js/11.5.0/basic.min.jsm
similarity index 95%
rename from resources/highlight.js/11.4.0/basic.min.jsm
rename to resources/highlight.js/11.5.0/basic.min.jsm
index e68c8054..d44df96e 100644
--- a/resources/highlight.js/11.4.0/basic.min.jsm
+++ b/resources/highlight.js/11.5.0/basic.min.jsm
@@ -1,4 +1,4 @@
-/*! `basic` grammar compiled for Highlight.js 11.4.0 */
+/*! `basic` grammar compiled for Highlight.js 11.5.0 */
(()=>{var E=(()=>{"use strict";return E=>({name:"BASIC",case_insensitive:!0,
illegal:"^.",keywords:{$pattern:"[a-zA-Z][a-zA-Z0-9_$%!#]*",
keyword:["ABS","ASC","AND","ATN","AUTO|0","BEEP","BLOAD|10","BSAVE|10","CALL","CALLS","CDBL","CHAIN","CHDIR","CHR$|10","CINT","CIRCLE","CLEAR","CLOSE","CLS","COLOR","COM","COMMON","CONT","COS","CSNG","CSRLIN","CVD","CVI","CVS","DATA","DATE$","DEFDBL","DEFINT","DEFSNG","DEFSTR","DEF|0","SEG","USR","DELETE","DIM","DRAW","EDIT","END","ENVIRON","ENVIRON$","EOF","EQV","ERASE","ERDEV","ERDEV$","ERL","ERR","ERROR","EXP","FIELD","FILES","FIX","FOR|0","FRE","GET","GOSUB|10","GOTO","HEX$","IF","THEN","ELSE|0","INKEY$","INP","INPUT","INPUT#","INPUT$","INSTR","IMP","INT","IOCTL","IOCTL$","KEY","ON","OFF","LIST","KILL","LEFT$","LEN","LET","LINE","LLIST","LOAD","LOC","LOCATE","LOF","LOG","LPRINT","USING","LSET","MERGE","MID$","MKDIR","MKD$","MKI$","MKS$","MOD","NAME","NEW","NEXT","NOISE","NOT","OCT$","ON","OR","PEN","PLAY","STRIG","OPEN","OPTION","BASE","OUT","PAINT","PALETTE","PCOPY","PEEK","PMAP","POINT","POKE","POS","PRINT","PRINT]","PSET","PRESET","PUT","RANDOMIZE","READ","REM","RENUM","RESET|0","RESTORE","RESUME","RETURN|0","RIGHT$","RMDIR","RND","RSET","RUN","SAVE","SCREEN","SGN","SHELL","SIN","SOUND","SPACE$","SPC","SQR","STEP","STICK","STOP","STR$","STRING$","SWAP","SYSTEM","TAB","TAN","TIME$","TIMER","TROFF","TRON","TO","USR","VAL","VARPTR","VARPTR$","VIEW","WAIT","WHILE","WEND","WIDTH","WINDOW","WRITE","XOR"]
diff --git a/resources/highlight.js/11.4.0/bnf.min.jsm b/resources/highlight.js/11.5.0/bnf.min.jsm
similarity index 72%
rename from resources/highlight.js/11.4.0/bnf.min.jsm
rename to resources/highlight.js/11.5.0/bnf.min.jsm
index 7c9b4a65..e8dd8a34 100644
--- a/resources/highlight.js/11.4.0/bnf.min.jsm
+++ b/resources/highlight.js/11.5.0/bnf.min.jsm
@@ -1,4 +1,4 @@
-/*! `bnf` grammar compiled for Highlight.js 11.4.0 */
+/*! `bnf` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"Backus\u2013Naur Form",
contains:[{className:"attribute",begin:/,end:/>/},{begin:/::=/,end:/$/,
contains:[{begin:/,end:/>/
diff --git a/resources/highlight.js/11.5.0/brainfuck.min.jsm b/resources/highlight.js/11.5.0/brainfuck.min.jsm
new file mode 100644
index 00000000..17314aa5
--- /dev/null
+++ b/resources/highlight.js/11.5.0/brainfuck.min.jsm
@@ -0,0 +1,8 @@
+/*! `brainfuck` grammar compiled for Highlight.js 11.5.0 */
+(()=>{var e=(()=>{"use strict";return e=>{const n={className:"literal",
+begin:/[+-]+/,relevance:0};return{name:"Brainfuck",aliases:["bf"],
+contains:[e.COMMENT(/[^\[\]\.,\+\-<> \r\n]/,/[\[\]\.,\+\-<> \r\n]/,{contains:[{
+match:/[ ]+[^\[\]\.,\+\-<> \r\n]/,relevance:0}],returnEnd:!0,relevance:0}),{
+className:"title",begin:"[\\[\\]]",relevance:0},{className:"string",
+begin:"[\\.,]",relevance:0},{begin:/(?=\+\+|--)/,contains:[n]},n]}}})()
+;hljs.registerLanguage("brainfuck",e)})();
\ No newline at end of file
diff --git a/resources/highlight.js/11.4.0/brown-paper.min.css b/resources/highlight.js/11.5.0/brown-paper.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/brown-paper.min.css
rename to resources/highlight.js/11.5.0/brown-paper.min.css
diff --git a/resources/highlight.js/11.4.0/c.min.jsm b/resources/highlight.js/11.5.0/c.min.jsm
similarity index 97%
rename from resources/highlight.js/11.4.0/c.min.jsm
rename to resources/highlight.js/11.5.0/c.min.jsm
index 8f4c0a22..409ad8a2 100644
--- a/resources/highlight.js/11.4.0/c.min.jsm
+++ b/resources/highlight.js/11.5.0/c.min.jsm
@@ -1,4 +1,4 @@
-/*! `c` grammar compiled for Highlight.js 11.4.0 */
+/*! `c` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const n=e.regex,t=e.COMMENT("//","$",{
contains:[{begin:/\\\n/}]
}),s="[a-zA-Z_]\\w*::",a="(decltype\\(auto\\)|"+n.optional(s)+"[a-zA-Z_]\\w*"+n.optional("<[^<>]+>")+")",r={
diff --git a/resources/highlight.js/11.4.0/cal.min.jsm b/resources/highlight.js/11.5.0/cal.min.jsm
similarity index 92%
rename from resources/highlight.js/11.4.0/cal.min.jsm
rename to resources/highlight.js/11.5.0/cal.min.jsm
index 6ba01330..224b5d50 100644
--- a/resources/highlight.js/11.4.0/cal.min.jsm
+++ b/resources/highlight.js/11.5.0/cal.min.jsm
@@ -1,4 +1,4 @@
-/*! `cal` grammar compiled for Highlight.js 11.4.0 */
+/*! `cal` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{
const n=e.regex,a=["div","mod","in","and","or","not","xor","asserterror","begin","case","do","downto","else","end","exit","for","local","if","of","repeat","then","to","until","while","with","var"],r=[e.C_LINE_COMMENT_MODE,e.COMMENT(/\{/,/\}/,{
relevance:0}),e.COMMENT(/\(\*/,/\*\)/,{relevance:10})],t={className:"string",
diff --git a/resources/highlight.js/11.4.0/capnproto.min.jsm b/resources/highlight.js/11.5.0/capnproto.min.jsm
similarity index 92%
rename from resources/highlight.js/11.4.0/capnproto.min.jsm
rename to resources/highlight.js/11.5.0/capnproto.min.jsm
index 0cf0ea73..1ef51271 100644
--- a/resources/highlight.js/11.4.0/capnproto.min.jsm
+++ b/resources/highlight.js/11.5.0/capnproto.min.jsm
@@ -1,4 +1,4 @@
-/*! `capnproto` grammar compiled for Highlight.js 11.4.0 */
+/*! `capnproto` grammar compiled for Highlight.js 11.5.0 */
(()=>{var t=(()=>{"use strict";return t=>{const n={variants:[{
match:[/(struct|enum|interface)/,/\s+/,t.IDENT_RE]},{
match:[/extends/,/\s*\(/,t.IDENT_RE,/\s*\)/]}],scope:{1:"keyword",
diff --git a/resources/highlight.js/11.4.0/ceylon.min.jsm b/resources/highlight.js/11.5.0/ceylon.min.jsm
similarity index 92%
rename from resources/highlight.js/11.4.0/ceylon.min.jsm
rename to resources/highlight.js/11.5.0/ceylon.min.jsm
index 61ce1f67..1ceec6c6 100644
--- a/resources/highlight.js/11.4.0/ceylon.min.jsm
+++ b/resources/highlight.js/11.5.0/ceylon.min.jsm
@@ -1,4 +1,4 @@
-/*! `ceylon` grammar compiled for Highlight.js 11.4.0 */
+/*! `ceylon` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{
const a=["assembly","module","package","import","alias","class","interface","object","given","value","assign","void","function","new","of","extends","satisfies","abstracts","in","out","return","break","continue","throw","assert","dynamic","if","else","switch","case","for","while","try","catch","finally","then","let","this","outer","super","is","exists","nonempty"],s={
className:"subst",excludeBegin:!0,excludeEnd:!0,begin:/``/,end:/``/,keywords:a,
diff --git a/resources/highlight.js/11.4.0/clean.min.jsm b/resources/highlight.js/11.5.0/clean.min.jsm
similarity index 86%
rename from resources/highlight.js/11.4.0/clean.min.jsm
rename to resources/highlight.js/11.5.0/clean.min.jsm
index bf1b93dd..9f23c156 100644
--- a/resources/highlight.js/11.4.0/clean.min.jsm
+++ b/resources/highlight.js/11.5.0/clean.min.jsm
@@ -1,4 +1,4 @@
-/*! `clean` grammar compiled for Highlight.js 11.4.0 */
+/*! `clean` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"Clean",aliases:["icl","dcl"],
keywords:{
keyword:["if","let","in","with","where","case","of","class","instance","otherwise","implementation","definition","system","module","from","import","qualified","as","special","code","inline","foreign","export","ccall","stdcall","generic","derive","infix","infixl","infixr"],
diff --git a/resources/highlight.js/11.5.0/clojure-repl.min.jsm b/resources/highlight.js/11.5.0/clojure-repl.min.jsm
new file mode 100644
index 00000000..8bdafcca
--- /dev/null
+++ b/resources/highlight.js/11.5.0/clojure-repl.min.jsm
@@ -0,0 +1,4 @@
+/*! `clojure-repl` grammar compiled for Highlight.js 11.5.0 */
+(()=>{var e=(()=>{"use strict";return e=>({name:"Clojure REPL",contains:[{
+className:"meta.prompt",begin:/^([\w.-]+|\s*#_)?=>/,starts:{end:/$/,
+subLanguage:"clojure"}}]})})();hljs.registerLanguage("clojure-repl",e)})();
\ No newline at end of file
diff --git a/resources/highlight.js/11.4.0/clojure.min.jsm b/resources/highlight.js/11.5.0/clojure.min.jsm
similarity index 97%
rename from resources/highlight.js/11.4.0/clojure.min.jsm
rename to resources/highlight.js/11.5.0/clojure.min.jsm
index 7b82d913..9786f358 100644
--- a/resources/highlight.js/11.4.0/clojure.min.jsm
+++ b/resources/highlight.js/11.5.0/clojure.min.jsm
@@ -1,4 +1,4 @@
-/*! `clojure` grammar compiled for Highlight.js 11.4.0 */
+/*! `clojure` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{
const t="a-zA-Z_\\-!.?+*=<>&'",n="[#]?["+t+"]["+t+"0-9/;:$#]*",a="def defonce defprotocol defstruct defmulti defmethod defn- defn defmacro deftype defrecord",r={
$pattern:n,
diff --git a/resources/highlight.js/11.4.0/cmake.min.jsm b/resources/highlight.js/11.5.0/cmake.min.jsm
similarity index 96%
rename from resources/highlight.js/11.4.0/cmake.min.jsm
rename to resources/highlight.js/11.5.0/cmake.min.jsm
index 9ebc107d..3b67c630 100644
--- a/resources/highlight.js/11.4.0/cmake.min.jsm
+++ b/resources/highlight.js/11.5.0/cmake.min.jsm
@@ -1,4 +1,4 @@
-/*! `cmake` grammar compiled for Highlight.js 11.4.0 */
+/*! `cmake` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"CMake",aliases:["cmake.in"],
case_insensitive:!0,keywords:{
keyword:"break cmake_host_system_information cmake_minimum_required cmake_parse_arguments cmake_policy configure_file continue elseif else endforeach endfunction endif endmacro endwhile execute_process file find_file find_library find_package find_path find_program foreach function get_cmake_property get_directory_property get_filename_component get_property if include include_guard list macro mark_as_advanced math message option return separate_arguments set_directory_properties set_property set site_name string unset variable_watch while add_compile_definitions add_compile_options add_custom_command add_custom_target add_definitions add_dependencies add_executable add_library add_link_options add_subdirectory add_test aux_source_directory build_command create_test_sourcelist define_property enable_language enable_testing export fltk_wrap_ui get_source_file_property get_target_property get_test_property include_directories include_external_msproject include_regular_expression install link_directories link_libraries load_cache project qt_wrap_cpp qt_wrap_ui remove_definitions set_source_files_properties set_target_properties set_tests_properties source_group target_compile_definitions target_compile_features target_compile_options target_include_directories target_link_directories target_link_libraries target_link_options target_sources try_compile try_run ctest_build ctest_configure ctest_coverage ctest_empty_binary_directory ctest_memcheck ctest_read_custom_files ctest_run_script ctest_sleep ctest_start ctest_submit ctest_test ctest_update ctest_upload build_name exec_program export_library_dependencies install_files install_programs install_targets load_command make_directory output_required_files remove subdir_depends subdirs use_mangled_mesa utility_source variable_requires write_file qt5_use_modules qt5_use_package qt5_wrap_cpp on off true false and or not command policy target test exists is_newer_than is_directory is_symlink is_absolute matches less greater equal less_equal greater_equal strless strgreater strequal strless_equal strgreater_equal version_less version_greater version_equal version_less_equal version_greater_equal in_list defined"
diff --git a/resources/highlight.js/11.4.0/codepen-embed.min.css b/resources/highlight.js/11.5.0/codepen-embed.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/codepen-embed.min.css
rename to resources/highlight.js/11.5.0/codepen-embed.min.css
diff --git a/resources/highlight.js/11.4.0/coffeescript.min.jsm b/resources/highlight.js/11.5.0/coffeescript.min.jsm
similarity index 96%
rename from resources/highlight.js/11.4.0/coffeescript.min.jsm
rename to resources/highlight.js/11.5.0/coffeescript.min.jsm
index 1eda2c1f..594dba53 100644
--- a/resources/highlight.js/11.4.0/coffeescript.min.jsm
+++ b/resources/highlight.js/11.5.0/coffeescript.min.jsm
@@ -1,4 +1,4 @@
-/*! `coffeescript` grammar compiled for Highlight.js 11.4.0 */
+/*! `coffeescript` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict"
;const e=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],n=["true","false","null","undefined","NaN","Infinity"],r=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"])
;return t=>{const a={
diff --git a/resources/highlight.js/11.4.0/color-brewer.min.css b/resources/highlight.js/11.5.0/color-brewer.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/color-brewer.min.css
rename to resources/highlight.js/11.5.0/color-brewer.min.css
diff --git a/resources/highlight.js/11.4.0/coq.min.jsm b/resources/highlight.js/11.5.0/coq.min.jsm
similarity index 97%
rename from resources/highlight.js/11.4.0/coq.min.jsm
rename to resources/highlight.js/11.5.0/coq.min.jsm
index 929f7c88..20a82d92 100644
--- a/resources/highlight.js/11.4.0/coq.min.jsm
+++ b/resources/highlight.js/11.5.0/coq.min.jsm
@@ -1,4 +1,4 @@
-/*! `coq` grammar compiled for Highlight.js 11.4.0 */
+/*! `coq` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"Coq",keywords:{
keyword:["_|0","as","at","cofix","else","end","exists","exists2","fix","for","forall","fun","if","IF","in","let","match","mod","Prop","return","Set","then","Type","using","where","with","Abort","About","Add","Admit","Admitted","All","Arguments","Assumptions","Axiom","Back","BackTo","Backtrack","Bind","Blacklist","Canonical","Cd","Check","Class","Classes","Close","Coercion","Coercions","CoFixpoint","CoInductive","Collection","Combined","Compute","Conjecture","Conjectures","Constant","constr","Constraint","Constructors","Context","Corollary","CreateHintDb","Cut","Declare","Defined","Definition","Delimit","Dependencies","Dependent","Derive","Drop","eauto","End","Equality","Eval","Example","Existential","Existentials","Existing","Export","exporting","Extern","Extract","Extraction","Fact","Field","Fields","File","Fixpoint","Focus","for","From","Function","Functional","Generalizable","Global","Goal","Grab","Grammar","Graph","Guarded","Heap","Hint","HintDb","Hints","Hypotheses","Hypothesis","ident","Identity","If","Immediate","Implicit","Import","Include","Inductive","Infix","Info","Initial","Inline","Inspect","Instance","Instances","Intro","Intros","Inversion","Inversion_clear","Language","Left","Lemma","Let","Libraries","Library","Load","LoadPath","Local","Locate","Ltac","ML","Mode","Module","Modules","Monomorphic","Morphism","Next","NoInline","Notation","Obligation","Obligations","Opaque","Open","Optimize","Options","Parameter","Parameters","Parametric","Path","Paths","pattern","Polymorphic","Preterm","Print","Printing","Program","Projections","Proof","Proposition","Pwd","Qed","Quit","Rec","Record","Recursive","Redirect","Relation","Remark","Remove","Require","Reserved","Reset","Resolve","Restart","Rewrite","Right","Ring","Rings","Save","Scheme","Scope","Scopes","Script","Search","SearchAbout","SearchHead","SearchPattern","SearchRewrite","Section","Separate","Set","Setoid","Show","Solve","Sorted","Step","Strategies","Strategy","Structure","SubClass","Table","Tables","Tactic","Term","Test","Theorem","Time","Timeout","Transparent","Type","Typeclasses","Types","Undelimit","Undo","Unfocus","Unfocused","Unfold","Universe","Universes","Unset","Unshelve","using","Variable","Variables","Variant","Verbose","Visibility","where","with"],
built_in:["abstract","absurd","admit","after","apply","as","assert","assumption","at","auto","autorewrite","autounfold","before","bottom","btauto","by","case","case_eq","cbn","cbv","change","classical_left","classical_right","clear","clearbody","cofix","compare","compute","congruence","constr_eq","constructor","contradict","contradiction","cut","cutrewrite","cycle","decide","decompose","dependent","destruct","destruction","dintuition","discriminate","discrR","do","double","dtauto","eapply","eassumption","eauto","ecase","econstructor","edestruct","ediscriminate","eelim","eexact","eexists","einduction","einjection","eleft","elim","elimtype","enough","equality","erewrite","eright","esimplify_eq","esplit","evar","exact","exactly_once","exfalso","exists","f_equal","fail","field","field_simplify","field_simplify_eq","first","firstorder","fix","fold","fourier","functional","generalize","generalizing","gfail","give_up","has_evar","hnf","idtac","in","induction","injection","instantiate","intro","intro_pattern","intros","intuition","inversion","inversion_clear","is_evar","is_var","lapply","lazy","left","lia","lra","move","native_compute","nia","nsatz","omega","once","pattern","pose","progress","proof","psatz","quote","record","red","refine","reflexivity","remember","rename","repeat","replace","revert","revgoals","rewrite","rewrite_strat","right","ring","ring_simplify","rtauto","set","setoid_reflexivity","setoid_replace","setoid_rewrite","setoid_symmetry","setoid_transitivity","shelve","shelve_unifiable","simpl","simple","simplify_eq","solve","specialize","split","split_Rabs","split_Rmult","stepl","stepr","subst","sum","swap","symmetry","tactic","tauto","time","timeout","top","transitivity","trivial","try","tryif","unfold","unify","until","using","vm_compute","with"]
diff --git a/resources/highlight.js/11.4.0/cos.min.jsm b/resources/highlight.js/11.5.0/cos.min.jsm
similarity index 95%
rename from resources/highlight.js/11.4.0/cos.min.jsm
rename to resources/highlight.js/11.5.0/cos.min.jsm
index 7f3019fb..bbc46ce7 100644
--- a/resources/highlight.js/11.4.0/cos.min.jsm
+++ b/resources/highlight.js/11.5.0/cos.min.jsm
@@ -1,4 +1,4 @@
-/*! `cos` grammar compiled for Highlight.js 11.4.0 */
+/*! `cos` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"Cach\xe9 Object Script",
case_insensitive:!0,aliases:["cls"],
keywords:"property parameter class classmethod clientmethod extends as break catch close continue do d|0 else elseif for goto halt hang h|0 if job j|0 kill k|0 lock l|0 merge new open quit q|0 read r|0 return set s|0 tcommit throw trollback try tstart use view while write w|0 xecute x|0 zkill znspace zn ztrap zwrite zw zzdump zzwrite print zbreak zinsert zload zprint zremove zsave zzprint mv mvcall mvcrt mvdim mvprint zquit zsync ascii",
diff --git a/resources/highlight.js/11.4.0/cpp.min.jsm b/resources/highlight.js/11.5.0/cpp.min.jsm
similarity index 98%
rename from resources/highlight.js/11.4.0/cpp.min.jsm
rename to resources/highlight.js/11.5.0/cpp.min.jsm
index 7e069ce3..ab0c86ad 100644
--- a/resources/highlight.js/11.4.0/cpp.min.jsm
+++ b/resources/highlight.js/11.5.0/cpp.min.jsm
@@ -1,4 +1,4 @@
-/*! `cpp` grammar compiled for Highlight.js 11.4.0 */
+/*! `cpp` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const t=e.regex,a=e.COMMENT("//","$",{
contains:[{begin:/\\\n/}]
}),n="[a-zA-Z_]\\w*::",r="(?!struct)(decltype\\(auto\\)|"+t.optional(n)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",i={
diff --git a/resources/highlight.js/11.4.0/crmsh.min.jsm b/resources/highlight.js/11.5.0/crmsh.min.jsm
similarity index 96%
rename from resources/highlight.js/11.4.0/crmsh.min.jsm
rename to resources/highlight.js/11.5.0/crmsh.min.jsm
index b883372e..c65f41d5 100644
--- a/resources/highlight.js/11.4.0/crmsh.min.jsm
+++ b/resources/highlight.js/11.5.0/crmsh.min.jsm
@@ -1,4 +1,4 @@
-/*! `crmsh` grammar compiled for Highlight.js 11.4.0 */
+/*! `crmsh` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{
const t="group clone ms master location colocation order fencing_topology rsc_ticket acl_target acl_group user role tag xml"
;return{name:"crmsh",aliases:["crm","pcmk"],case_insensitive:!0,keywords:{
diff --git a/resources/highlight.js/11.4.0/crystal.min.jsm b/resources/highlight.js/11.5.0/crystal.min.jsm
similarity index 98%
rename from resources/highlight.js/11.4.0/crystal.min.jsm
rename to resources/highlight.js/11.5.0/crystal.min.jsm
index 9c5949dc..20b44820 100644
--- a/resources/highlight.js/11.4.0/crystal.min.jsm
+++ b/resources/highlight.js/11.5.0/crystal.min.jsm
@@ -1,4 +1,4 @@
-/*! `crystal` grammar compiled for Highlight.js 11.4.0 */
+/*! `crystal` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{
const n="(_?[ui](8|16|32|64|128))?",i="[a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|[=!]~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~|]|//|//=|&[-+*]=?|&\\*\\*|\\[\\][=?]?",s="[A-Za-z_]\\w*(::\\w+)*(\\?|!)?",a={
$pattern:"[a-zA-Z_]\\w*[!?=]?",
diff --git a/resources/highlight.js/11.4.0/csharp.min.jsm b/resources/highlight.js/11.5.0/csharp.min.jsm
similarity index 97%
rename from resources/highlight.js/11.4.0/csharp.min.jsm
rename to resources/highlight.js/11.5.0/csharp.min.jsm
index c29db347..37a2480c 100644
--- a/resources/highlight.js/11.4.0/csharp.min.jsm
+++ b/resources/highlight.js/11.5.0/csharp.min.jsm
@@ -1,4 +1,4 @@
-/*! `csharp` grammar compiled for Highlight.js 11.4.0 */
+/*! `csharp` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const n={
keyword:["abstract","as","base","break","case","catch","class","const","continue","do","else","event","explicit","extern","finally","fixed","for","foreach","goto","if","implicit","in","interface","internal","is","lock","namespace","new","operator","out","override","params","private","protected","public","readonly","record","ref","return","sealed","sizeof","stackalloc","static","struct","switch","this","throw","try","typeof","unchecked","unsafe","using","virtual","void","volatile","while"].concat(["add","alias","and","ascending","async","await","by","descending","equals","from","get","global","group","init","into","join","let","nameof","not","notnull","on","or","orderby","partial","remove","select","set","unmanaged","value|0","var","when","where","with","yield"]),
built_in:["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],
diff --git a/resources/highlight.js/11.4.0/csp.min.jsm b/resources/highlight.js/11.5.0/csp.min.jsm
similarity index 90%
rename from resources/highlight.js/11.4.0/csp.min.jsm
rename to resources/highlight.js/11.5.0/csp.min.jsm
index c3f2ccc3..54130dc3 100644
--- a/resources/highlight.js/11.4.0/csp.min.jsm
+++ b/resources/highlight.js/11.5.0/csp.min.jsm
@@ -1,4 +1,4 @@
-/*! `csp` grammar compiled for Highlight.js 11.4.0 */
+/*! `csp` grammar compiled for Highlight.js 11.5.0 */
(()=>{var s=(()=>{"use strict";return s=>({name:"CSP",case_insensitive:!1,
keywords:{$pattern:"[a-zA-Z][a-zA-Z0-9_-]*",
keyword:["base-uri","child-src","connect-src","default-src","font-src","form-action","frame-ancestors","frame-src","img-src","manifest-src","media-src","object-src","plugin-types","report-uri","sandbox","script-src","style-src","trusted-types","unsafe-hashes","worker-src"]
diff --git a/resources/highlight.js/11.5.0/css.min.jsm b/resources/highlight.js/11.5.0/css.min.jsm
new file mode 100644
index 00000000..aa38430d
--- /dev/null
+++ b/resources/highlight.js/11.5.0/css.min.jsm
@@ -0,0 +1,31 @@
+/*! `css` grammar compiled for Highlight.js 11.5.0 */
+(()=>{var e=(()=>{"use strict"
+;const e=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],i=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],r=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],t=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],o=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inline-size","isolation","justify-content","left","letter-spacing","line-break","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pointer-events","position","quotes","resize","rest","rest-after","rest-before","right","row-gap","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","speak","speak-as","src","tab-size","table-layout","text-align","text-align-all","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index"].reverse()
+;return n=>{const a=n.regex,l=(e=>({IMPORTANT:{scope:"meta",begin:"!important"},
+BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",
+begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{
+className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{
+scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",
+contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{
+scope:"number",
+begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",
+relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/}
+}))(n),s=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE];return{name:"CSS",
+case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},
+classNameAliases:{keyframePosition:"selector-tag"},contains:[l.BLOCK_COMMENT,{
+begin:/-(webkit|moz|ms|o)-(?=[a-z])/},l.CSS_NUMBER_MODE,{
+className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{
+className:"selector-class",begin:"\\.[a-zA-Z-][a-zA-Z0-9_-]*",relevance:0
+},l.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{
+begin:":("+r.join("|")+")"},{begin:":(:)?("+t.join("|")+")"}]},l.CSS_VARIABLE,{
+className:"attribute",begin:"\\b("+o.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,
+contains:[l.BLOCK_COMMENT,l.HEXCOLOR,l.IMPORTANT,l.CSS_NUMBER_MODE,...s,{
+begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"
+},contains:[{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]
+},l.FUNCTION_DISPATCH]},{begin:a.lookahead(/@/),end:"[{;]",relevance:0,
+illegal:/:/,contains:[{className:"keyword",begin:/@-?\w[\w]*(-\w+)*/},{
+begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{
+$pattern:/[a-z-]+/,keyword:"and or not only",attribute:i.join(" ")},contains:[{
+begin:/[a-z-]+(?=:)/,className:"attribute"},...s,l.CSS_NUMBER_MODE]}]},{
+className:"selector-tag",begin:"\\b("+e.join("|")+")\\b"}]}}})()
+;hljs.registerLanguage("css",e)})();
\ No newline at end of file
diff --git a/resources/highlight.js/11.4.0/d.min.jsm b/resources/highlight.js/11.5.0/d.min.jsm
similarity index 97%
rename from resources/highlight.js/11.4.0/d.min.jsm
rename to resources/highlight.js/11.5.0/d.min.jsm
index 84f90ea5..e3deee04 100644
--- a/resources/highlight.js/11.4.0/d.min.jsm
+++ b/resources/highlight.js/11.5.0/d.min.jsm
@@ -1,4 +1,4 @@
-/*! `d` grammar compiled for Highlight.js 11.4.0 */
+/*! `d` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const a={
$pattern:e.UNDERSCORE_IDENT_RE,
keyword:"abstract alias align asm assert auto body break byte case cast catch class const continue debug default delete deprecated do else enum export extern final finally for foreach foreach_reverse|10 goto if immutable import in inout int interface invariant is lazy macro mixin module new nothrow out override package pragma private protected public pure ref return scope shared static struct super switch synchronized template this throw try typedef typeid typeof union unittest version void volatile while with __FILE__ __LINE__ __gshared|10 __thread __traits __DATE__ __EOF__ __TIME__ __TIMESTAMP__ __VENDOR__ __VERSION__",
diff --git a/resources/highlight.js/11.4.0/dark.min.css b/resources/highlight.js/11.5.0/dark.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/dark.min.css
rename to resources/highlight.js/11.5.0/dark.min.css
diff --git a/resources/highlight.js/11.4.0/dart.min.jsm b/resources/highlight.js/11.5.0/dart.min.jsm
similarity index 95%
rename from resources/highlight.js/11.4.0/dart.min.jsm
rename to resources/highlight.js/11.5.0/dart.min.jsm
index 5e01bcba..4c10bcf9 100644
--- a/resources/highlight.js/11.4.0/dart.min.jsm
+++ b/resources/highlight.js/11.5.0/dart.min.jsm
@@ -1,4 +1,4 @@
-/*! `dart` grammar compiled for Highlight.js 11.4.0 */
+/*! `dart` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const n={className:"subst",variants:[{
begin:"\\$[A-Za-z0-9_]+"}]},a={className:"subst",variants:[{begin:/\$\{/,
end:/\}/}],keywords:"true false null this is new super"},t={className:"string",
diff --git a/resources/highlight.js/11.4.0/default.min.css b/resources/highlight.js/11.5.0/default.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/default.min.css
rename to resources/highlight.js/11.5.0/default.min.css
diff --git a/resources/highlight.js/11.4.0/delphi.min.jsm b/resources/highlight.js/11.5.0/delphi.min.jsm
similarity index 95%
rename from resources/highlight.js/11.4.0/delphi.min.jsm
rename to resources/highlight.js/11.5.0/delphi.min.jsm
index b5e56544..abd5107e 100644
--- a/resources/highlight.js/11.4.0/delphi.min.jsm
+++ b/resources/highlight.js/11.5.0/delphi.min.jsm
@@ -1,4 +1,4 @@
-/*! `delphi` grammar compiled for Highlight.js 11.4.0 */
+/*! `delphi` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{
const r=["exports","register","file","shl","array","record","property","for","mod","while","set","ally","label","uses","raise","not","stored","class","safecall","var","interface","or","private","static","exit","index","inherited","to","else","stdcall","override","shr","asm","far","resourcestring","finalization","packed","virtual","out","and","protected","library","do","xorwrite","goto","near","function","end","div","overload","object","unit","begin","string","on","inline","repeat","until","destructor","write","message","program","with","read","initialization","except","default","nil","if","case","cdecl","in","downto","threadvar","of","try","pascal","const","external","constructor","type","public","then","implementation","finally","published","procedure","absolute","reintroduce","operator","as","is","abstract","alias","assembler","bitpacked","break","continue","cppdecl","cvar","enumerator","experimental","platform","deprecated","unimplemented","dynamic","export","far16","forward","generic","helper","implements","interrupt","iochecks","local","name","nodefault","noreturn","nostackframe","oldfpccall","otherwise","saveregisters","softfloat","specialize","strict","unaligned","varargs"],a=[e.C_LINE_COMMENT_MODE,e.COMMENT(/\{/,/\}/,{
relevance:0}),e.COMMENT(/\(\*/,/\*\)/,{relevance:10})],t={className:"meta",
diff --git a/resources/highlight.js/11.4.0/devibeans.min.css b/resources/highlight.js/11.5.0/devibeans.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/devibeans.min.css
rename to resources/highlight.js/11.5.0/devibeans.min.css
diff --git a/resources/highlight.js/11.4.0/diff.min.jsm b/resources/highlight.js/11.5.0/diff.min.jsm
similarity index 82%
rename from resources/highlight.js/11.4.0/diff.min.jsm
rename to resources/highlight.js/11.5.0/diff.min.jsm
index 12b88c18..3f3f2baf 100644
--- a/resources/highlight.js/11.4.0/diff.min.jsm
+++ b/resources/highlight.js/11.5.0/diff.min.jsm
@@ -1,4 +1,4 @@
-/*! `diff` grammar compiled for Highlight.js 11.4.0 */
+/*! `diff` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const a=e.regex;return{name:"Diff",
aliases:["patch"],contains:[{className:"meta",relevance:10,
match:a.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)
diff --git a/resources/highlight.js/11.4.0/django.min.jsm b/resources/highlight.js/11.5.0/django.min.jsm
similarity index 94%
rename from resources/highlight.js/11.4.0/django.min.jsm
rename to resources/highlight.js/11.5.0/django.min.jsm
index a63cbc4e..9e493cc3 100644
--- a/resources/highlight.js/11.4.0/django.min.jsm
+++ b/resources/highlight.js/11.5.0/django.min.jsm
@@ -1,4 +1,4 @@
-/*! `django` grammar compiled for Highlight.js 11.4.0 */
+/*! `django` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const t={begin:/\|[A-Za-z]+:?/,
keywords:{
name:"truncatewords removetags linebreaksbr yesno get_digit timesince random striptags filesizeformat escape linebreaks length_is ljust rjust cut urlize fix_ampersands title floatformat capfirst pprint divisibleby add make_list unordered_list urlencode timeuntil urlizetrunc wordcount stringformat linenumbers slice date dictsort dictsortreversed default_if_none pluralize lower join center default truncatewords_html upper length phone2numeric wordwrap time addslashes slugify first escapejs force_escape iriencode last safe safeseq truncatechars localize unlocalize localtime utc timezone"
diff --git a/resources/highlight.js/11.4.0/dns.min.jsm b/resources/highlight.js/11.5.0/dns.min.jsm
similarity index 95%
rename from resources/highlight.js/11.4.0/dns.min.jsm
rename to resources/highlight.js/11.5.0/dns.min.jsm
index 6b7e1b84..ef7f56d1 100644
--- a/resources/highlight.js/11.4.0/dns.min.jsm
+++ b/resources/highlight.js/11.5.0/dns.min.jsm
@@ -1,4 +1,4 @@
-/*! `dns` grammar compiled for Highlight.js 11.4.0 */
+/*! `dns` grammar compiled for Highlight.js 11.5.0 */
(()=>{var d=(()=>{"use strict";return d=>({name:"DNS Zone",
aliases:["bind","zone"],
keywords:["IN","A","AAAA","AFSDB","APL","CAA","CDNSKEY","CDS","CERT","CNAME","DHCID","DLV","DNAME","DNSKEY","DS","HIP","IPSECKEY","KEY","KX","LOC","MX","NAPTR","NS","NSEC","NSEC3","NSEC3PARAM","PTR","RRSIG","RP","SIG","SOA","SRV","SSHFP","TA","TKEY","TLSA","TSIG","TXT"],
diff --git a/resources/highlight.js/11.4.0/docco.min.css b/resources/highlight.js/11.5.0/docco.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/docco.min.css
rename to resources/highlight.js/11.5.0/docco.min.css
diff --git a/resources/highlight.js/11.4.0/dockerfile.min.jsm b/resources/highlight.js/11.5.0/dockerfile.min.jsm
similarity index 80%
rename from resources/highlight.js/11.4.0/dockerfile.min.jsm
rename to resources/highlight.js/11.5.0/dockerfile.min.jsm
index f91722a7..783369c5 100644
--- a/resources/highlight.js/11.4.0/dockerfile.min.jsm
+++ b/resources/highlight.js/11.5.0/dockerfile.min.jsm
@@ -1,4 +1,4 @@
-/*! `dockerfile` grammar compiled for Highlight.js 11.4.0 */
+/*! `dockerfile` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"Dockerfile",aliases:["docker"],
case_insensitive:!0,
keywords:["from","maintainer","expose","env","arg","user","onbuild","stopsignal"],
diff --git a/resources/highlight.js/11.4.0/dos.min.jsm b/resources/highlight.js/11.5.0/dos.min.jsm
similarity index 93%
rename from resources/highlight.js/11.4.0/dos.min.jsm
rename to resources/highlight.js/11.5.0/dos.min.jsm
index 4802affa..432ec6f4 100644
--- a/resources/highlight.js/11.4.0/dos.min.jsm
+++ b/resources/highlight.js/11.5.0/dos.min.jsm
@@ -1,4 +1,4 @@
-/*! `dos` grammar compiled for Highlight.js 11.4.0 */
+/*! `dos` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const r=e.COMMENT(/^\s*@?rem\b/,/$/,{
relevance:10});return{name:"Batch file (DOS)",aliases:["bat","cmd"],
case_insensitive:!0,illegal:/\/\*/,keywords:{
diff --git a/resources/highlight.js/11.4.0/dsconfig.min.jsm b/resources/highlight.js/11.5.0/dsconfig.min.jsm
similarity index 88%
rename from resources/highlight.js/11.4.0/dsconfig.min.jsm
rename to resources/highlight.js/11.5.0/dsconfig.min.jsm
index 906acbec..b0135a3e 100644
--- a/resources/highlight.js/11.4.0/dsconfig.min.jsm
+++ b/resources/highlight.js/11.5.0/dsconfig.min.jsm
@@ -1,4 +1,4 @@
-/*! `dsconfig` grammar compiled for Highlight.js 11.4.0 */
+/*! `dsconfig` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({keywords:"dsconfig",contains:[{
className:"keyword",begin:"^dsconfig",end:/\s/,excludeEnd:!0,relevance:10},{
className:"built_in",begin:/(list|create|get|set|delete)-(\w+)/,end:/\s/,
diff --git a/resources/highlight.js/11.4.0/dts.min.jsm b/resources/highlight.js/11.5.0/dts.min.jsm
similarity index 89%
rename from resources/highlight.js/11.4.0/dts.min.jsm
rename to resources/highlight.js/11.5.0/dts.min.jsm
index 3b26c8a0..0d17c499 100644
--- a/resources/highlight.js/11.4.0/dts.min.jsm
+++ b/resources/highlight.js/11.5.0/dts.min.jsm
@@ -1,4 +1,4 @@
-/*! `dts` grammar compiled for Highlight.js 11.4.0 */
+/*! `dts` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const a={className:"string",
variants:[e.inherit(e.QUOTE_STRING_MODE,{begin:'((u8?|U)|L)?"'}),{
begin:'(u8?|U)?R"',end:'"',contains:[e.BACKSLASH_ESCAPE]},{begin:"'\\\\?.",
@@ -13,7 +13,7 @@ className:"variable",begin:/&[a-z\d_]*\b/};return{name:"Device Tree",contains:[{
className:"title.class",begin:/^\/(?=\s*\{)/,relevance:10},i,{
className:"keyword",begin:"/[a-z][a-z\\d-]*/"},{className:"symbol",
begin:"^\\s*[a-zA-Z_][a-zA-Z\\d_]*:"},{className:"title.class",
-begin:/[a-zA-Z_][a-zA-Z\d_@-]*(?=\s\{)/},{relevance:0,
+begin:/[a-zA-Z_][a-zA-Z\d_@-]*(?=\s\{)/,relevance:.2},{relevance:0,
match:[/[a-z][a-z-,]+/,/\s*/,/=/],scope:{1:"attr",3:"operator"}},{
match:/[a-z][a-z-,]+(?=;)/,relevance:0,scope:"attr"},{className:"params",
relevance:0,begin:"<",end:">",contains:[n,i]
diff --git a/resources/highlight.js/11.4.0/dust.min.jsm b/resources/highlight.js/11.5.0/dust.min.jsm
similarity index 81%
rename from resources/highlight.js/11.4.0/dust.min.jsm
rename to resources/highlight.js/11.5.0/dust.min.jsm
index b4f4c872..b534fba7 100644
--- a/resources/highlight.js/11.4.0/dust.min.jsm
+++ b/resources/highlight.js/11.5.0/dust.min.jsm
@@ -1,4 +1,4 @@
-/*! `dust` grammar compiled for Highlight.js 11.4.0 */
+/*! `dust` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"Dust",aliases:["dst"],
case_insensitive:!0,subLanguage:"xml",contains:[{className:"template-tag",
begin:/\{[#\/]/,end:/\}/,illegal:/;/,contains:[{className:"name",
diff --git a/resources/highlight.js/11.4.0/ebnf.min.jsm b/resources/highlight.js/11.5.0/ebnf.min.jsm
similarity index 80%
rename from resources/highlight.js/11.4.0/ebnf.min.jsm
rename to resources/highlight.js/11.5.0/ebnf.min.jsm
index 522fdbcb..7448cdc4 100644
--- a/resources/highlight.js/11.4.0/ebnf.min.jsm
+++ b/resources/highlight.js/11.5.0/ebnf.min.jsm
@@ -1,4 +1,4 @@
-/*! `ebnf` grammar compiled for Highlight.js 11.4.0 */
+/*! `ebnf` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const a=e.COMMENT(/\(\*/,/\*\)/)
;return{name:"Extended Backus-Naur Form",illegal:/\S/,contains:[a,{
className:"attribute",begin:/^[ ]*[a-zA-Z]+([\s_-]+[a-zA-Z]+)*/},{begin:/=/,
diff --git a/resources/highlight.js/11.4.0/elixir.min.jsm b/resources/highlight.js/11.5.0/elixir.min.jsm
similarity index 64%
rename from resources/highlight.js/11.4.0/elixir.min.jsm
rename to resources/highlight.js/11.5.0/elixir.min.jsm
index 453545ae..828e4b45 100644
--- a/resources/highlight.js/11.4.0/elixir.min.jsm
+++ b/resources/highlight.js/11.5.0/elixir.min.jsm
@@ -1,9 +1,9 @@
-/*! `elixir` grammar compiled for Highlight.js 11.4.0 */
+/*! `elixir` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{
-const n=e.regex,i="[a-zA-Z_][a-zA-Z0-9_.]*(!|\\?)?",a={$pattern:i,
-keyword:["after","alias","and","case","catch","cond","defstruct","do","else","end","fn","for","if","import","in","not","or","quote","raise","receive","require","reraise","rescue","try","unless","unquote","unquote_splicing","use","when","with|0"],
+const n=e.regex,a="[a-zA-Z_][a-zA-Z0-9_.]*(!|\\?)?",i={$pattern:a,
+keyword:["after","alias","and","case","catch","cond","defstruct","defguard","do","else","end","fn","for","if","import","in","not","or","quote","raise","receive","require","reraise","rescue","try","unless","unquote","unquote_splicing","use","when","with|0"],
literal:["false","nil","true"]},s={className:"subst",begin:/#\{/,end:/\}/,
-keywords:a},c={match:/\\[\s\S]/,scope:"char.escape",relevance:0},r=[{begin:/"/,
+keywords:i},c={match:/\\[\s\S]/,scope:"char.escape",relevance:0},r=[{begin:/"/,
end:/"/},{begin:/'/,end:/'/},{begin:/\//,end:/\//},{begin:/\|/,end:/\|/},{
begin:/\(/,end:/\)/},{begin:/\[/,end:/\]/},{begin:/\{/,end:/\}/},{begin:/,
end:/>/}],t=e=>({scope:"char.escape",begin:n.concat(/\\/,e),relevance:0}),d={
@@ -11,23 +11,24 @@ className:"string",begin:"~[a-z](?=[/|([{<\"'])",
contains:r.map((n=>e.inherit(n,{contains:[t(n.end),c,s]})))},o={
className:"string",begin:"~[A-Z](?=[/|([{<\"'])",
contains:r.map((n=>e.inherit(n,{contains:[t(n.end)]})))},b={className:"regex",
-variants:[{begin:"~r(?=[/|([{<\"'])",contains:r.map((i=>e.inherit(i,{
-end:n.concat(i.end,/[uismxfU]{0,7}/),contains:[t(i.end),c,s]})))},{
-begin:"~R(?=[/|([{<\"'])",contains:r.map((i=>e.inherit(i,{
-end:n.concat(i.end,/[uismxfU]{0,7}/),contains:[t(i.end)]})))}]},g={
+variants:[{begin:"~r(?=[/|([{<\"'])",contains:r.map((a=>e.inherit(a,{
+end:n.concat(a.end,/[uismxfU]{0,7}/),contains:[t(a.end),c,s]})))},{
+begin:"~R(?=[/|([{<\"'])",contains:r.map((a=>e.inherit(a,{
+end:n.concat(a.end,/[uismxfU]{0,7}/),contains:[t(a.end)]})))}]},g={
className:"string",contains:[e.BACKSLASH_ESCAPE,s],variants:[{begin:/"""/,
end:/"""/},{begin:/'''/,end:/'''/},{begin:/~S"""/,end:/"""/,contains:[]},{
begin:/~S"/,end:/"/,contains:[]},{begin:/~S'''/,end:/'''/,contains:[]},{
begin:/~S'/,end:/'/,contains:[]},{begin:/'/,end:/'/},{begin:/"/,end:/"/}]},l={
className:"function",beginKeywords:"def defp defmacro defmacrop",end:/\B\b/,
-contains:[e.inherit(e.TITLE_MODE,{begin:i,endsParent:!0})]},m=e.inherit(l,{
+contains:[e.inherit(e.TITLE_MODE,{begin:a,endsParent:!0})]},m=e.inherit(l,{
className:"class",beginKeywords:"defimpl defmodule defprotocol defrecord",
end:/\bdo\b|$|;/}),u=[g,b,o,d,e.HASH_COMMENT_MODE,m,l,{begin:"::"},{
className:"symbol",begin:":(?![\\s:])",contains:[g,{
begin:"[a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?"
-}],relevance:0},{className:"symbol",begin:i+":(?!:)",relevance:0},{
+}],relevance:0},{className:"symbol",begin:a+":(?!:)",relevance:0},{
+className:"title.class",begin:/(\b[A-Z][a-zA-Z0-9_]+)/,relevance:0},{
className:"number",
begin:"(\\b0o[0-7_]+)|(\\b0b[01_]+)|(\\b0x[0-9a-fA-F_]+)|(-?\\b[0-9][0-9_]*(\\.[0-9_]+([eE][-+]?[0-9]+)?)?)",
relevance:0},{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))"}]
-;return s.contains=u,{name:"Elixir",aliases:["ex","exs"],keywords:a,contains:u}}
+;return s.contains=u,{name:"Elixir",aliases:["ex","exs"],keywords:i,contains:u}}
})();hljs.registerLanguage("elixir",e)})();
\ No newline at end of file
diff --git a/resources/highlight.js/11.4.0/elm.min.jsm b/resources/highlight.js/11.5.0/elm.min.jsm
similarity index 92%
rename from resources/highlight.js/11.4.0/elm.min.jsm
rename to resources/highlight.js/11.5.0/elm.min.jsm
index 7bd361ae..3e115224 100644
--- a/resources/highlight.js/11.4.0/elm.min.jsm
+++ b/resources/highlight.js/11.5.0/elm.min.jsm
@@ -1,4 +1,4 @@
-/*! `elm` grammar compiled for Highlight.js 11.4.0 */
+/*! `elm` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const n={
variants:[e.COMMENT("--","$"),e.COMMENT(/\{-/,/-\}/,{contains:["self"]})]},i={
className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},s={begin:"\\(",end:"\\)",
diff --git a/resources/highlight.js/11.4.0/erb.min.jsm b/resources/highlight.js/11.5.0/erb.min.jsm
similarity index 68%
rename from resources/highlight.js/11.4.0/erb.min.jsm
rename to resources/highlight.js/11.5.0/erb.min.jsm
index e2065196..1dc47ba1 100644
--- a/resources/highlight.js/11.4.0/erb.min.jsm
+++ b/resources/highlight.js/11.5.0/erb.min.jsm
@@ -1,4 +1,4 @@
-/*! `erb` grammar compiled for Highlight.js 11.4.0 */
+/*! `erb` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"ERB",subLanguage:"xml",
contains:[e.COMMENT("<%#","%>"),{begin:"<%[%=-]?",end:"[%-]?%>",
subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0}]})})()
diff --git a/resources/highlight.js/11.4.0/erlang-repl.min.jsm b/resources/highlight.js/11.5.0/erlang-repl.min.jsm
similarity index 80%
rename from resources/highlight.js/11.4.0/erlang-repl.min.jsm
rename to resources/highlight.js/11.5.0/erlang-repl.min.jsm
index 3c183e0b..0e2501f4 100644
--- a/resources/highlight.js/11.4.0/erlang-repl.min.jsm
+++ b/resources/highlight.js/11.5.0/erlang-repl.min.jsm
@@ -1,8 +1,8 @@
-/*! `erlang-repl` grammar compiled for Highlight.js 11.4.0 */
+/*! `erlang-repl` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const n=e.regex;return{
name:"Erlang REPL",keywords:{built_in:"spawn spawn_link self",
keyword:"after and andalso|10 band begin bnot bor bsl bsr bxor case catch cond div end fun if let not of or orelse|10 query receive rem try when xor"
-},contains:[{className:"meta",begin:"^[0-9]+> ",relevance:10
+},contains:[{className:"meta.prompt",begin:"^[0-9]+> ",relevance:10
},e.COMMENT("%","$"),{className:"number",
begin:"\\b(\\d+(_\\d+)*#[a-fA-F0-9]+(_[a-fA-F0-9]+)*|\\d+(_\\d+)*(\\.\\d+(_\\d+)*)?([eE][-+]?\\d+)?)",
relevance:0},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{
diff --git a/resources/highlight.js/11.4.0/erlang.min.jsm b/resources/highlight.js/11.5.0/erlang.min.jsm
similarity index 95%
rename from resources/highlight.js/11.4.0/erlang.min.jsm
rename to resources/highlight.js/11.5.0/erlang.min.jsm
index 6754b39d..0d4b77c5 100644
--- a/resources/highlight.js/11.4.0/erlang.min.jsm
+++ b/resources/highlight.js/11.5.0/erlang.min.jsm
@@ -1,4 +1,4 @@
-/*! `erlang` grammar compiled for Highlight.js 11.4.0 */
+/*! `erlang` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{
const n="[a-z'][a-zA-Z0-9_']*",r="("+n+":"+n+"|"+n+")",a={
keyword:"after and andalso|10 band begin bnot bor bsl bzr bxor case catch cond div end fun if let not of orelse|10 query receive rem try when xor",
diff --git a/resources/highlight.js/11.4.0/excel.min.jsm b/resources/highlight.js/11.5.0/excel.min.jsm
similarity index 98%
rename from resources/highlight.js/11.4.0/excel.min.jsm
rename to resources/highlight.js/11.5.0/excel.min.jsm
index 4c20080c..87bd057b 100644
--- a/resources/highlight.js/11.4.0/excel.min.jsm
+++ b/resources/highlight.js/11.5.0/excel.min.jsm
@@ -1,4 +1,4 @@
-/*! `excel` grammar compiled for Highlight.js 11.4.0 */
+/*! `excel` grammar compiled for Highlight.js 11.5.0 */
(()=>{var E=(()=>{"use strict";return E=>({name:"Excel formulae",
aliases:["xlsx","xls"],case_insensitive:!0,keywords:{$pattern:/[a-zA-Z][\w\.]*/,
built_in:["ABS","ACCRINT","ACCRINTM","ACOS","ACOSH","ACOT","ACOTH","AGGREGATE","ADDRESS","AMORDEGRC","AMORLINC","AND","ARABIC","AREAS","ASC","ASIN","ASINH","ATAN","ATAN2","ATANH","AVEDEV","AVERAGE","AVERAGEA","AVERAGEIF","AVERAGEIFS","BAHTTEXT","BASE","BESSELI","BESSELJ","BESSELK","BESSELY","BETADIST","BETA.DIST","BETAINV","BETA.INV","BIN2DEC","BIN2HEX","BIN2OCT","BINOMDIST","BINOM.DIST","BINOM.DIST.RANGE","BINOM.INV","BITAND","BITLSHIFT","BITOR","BITRSHIFT","BITXOR","CALL","CEILING","CEILING.MATH","CEILING.PRECISE","CELL","CHAR","CHIDIST","CHIINV","CHITEST","CHISQ.DIST","CHISQ.DIST.RT","CHISQ.INV","CHISQ.INV.RT","CHISQ.TEST","CHOOSE","CLEAN","CODE","COLUMN","COLUMNS","COMBIN","COMBINA","COMPLEX","CONCAT","CONCATENATE","CONFIDENCE","CONFIDENCE.NORM","CONFIDENCE.T","CONVERT","CORREL","COS","COSH","COT","COTH","COUNT","COUNTA","COUNTBLANK","COUNTIF","COUNTIFS","COUPDAYBS","COUPDAYS","COUPDAYSNC","COUPNCD","COUPNUM","COUPPCD","COVAR","COVARIANCE.P","COVARIANCE.S","CRITBINOM","CSC","CSCH","CUBEKPIMEMBER","CUBEMEMBER","CUBEMEMBERPROPERTY","CUBERANKEDMEMBER","CUBESET","CUBESETCOUNT","CUBEVALUE","CUMIPMT","CUMPRINC","DATE","DATEDIF","DATEVALUE","DAVERAGE","DAY","DAYS","DAYS360","DB","DBCS","DCOUNT","DCOUNTA","DDB","DEC2BIN","DEC2HEX","DEC2OCT","DECIMAL","DEGREES","DELTA","DEVSQ","DGET","DISC","DMAX","DMIN","DOLLAR","DOLLARDE","DOLLARFR","DPRODUCT","DSTDEV","DSTDEVP","DSUM","DURATION","DVAR","DVARP","EDATE","EFFECT","ENCODEURL","EOMONTH","ERF","ERF.PRECISE","ERFC","ERFC.PRECISE","ERROR.TYPE","EUROCONVERT","EVEN","EXACT","EXP","EXPON.DIST","EXPONDIST","FACT","FACTDOUBLE","FALSE|0","F.DIST","FDIST","F.DIST.RT","FILTERXML","FIND","FINDB","F.INV","F.INV.RT","FINV","FISHER","FISHERINV","FIXED","FLOOR","FLOOR.MATH","FLOOR.PRECISE","FORECAST","FORECAST.ETS","FORECAST.ETS.CONFINT","FORECAST.ETS.SEASONALITY","FORECAST.ETS.STAT","FORECAST.LINEAR","FORMULATEXT","FREQUENCY","F.TEST","FTEST","FV","FVSCHEDULE","GAMMA","GAMMA.DIST","GAMMADIST","GAMMA.INV","GAMMAINV","GAMMALN","GAMMALN.PRECISE","GAUSS","GCD","GEOMEAN","GESTEP","GETPIVOTDATA","GROWTH","HARMEAN","HEX2BIN","HEX2DEC","HEX2OCT","HLOOKUP","HOUR","HYPERLINK","HYPGEOM.DIST","HYPGEOMDIST","IF","IFERROR","IFNA","IFS","IMABS","IMAGINARY","IMARGUMENT","IMCONJUGATE","IMCOS","IMCOSH","IMCOT","IMCSC","IMCSCH","IMDIV","IMEXP","IMLN","IMLOG10","IMLOG2","IMPOWER","IMPRODUCT","IMREAL","IMSEC","IMSECH","IMSIN","IMSINH","IMSQRT","IMSUB","IMSUM","IMTAN","INDEX","INDIRECT","INFO","INT","INTERCEPT","INTRATE","IPMT","IRR","ISBLANK","ISERR","ISERROR","ISEVEN","ISFORMULA","ISLOGICAL","ISNA","ISNONTEXT","ISNUMBER","ISODD","ISREF","ISTEXT","ISO.CEILING","ISOWEEKNUM","ISPMT","JIS","KURT","LARGE","LCM","LEFT","LEFTB","LEN","LENB","LINEST","LN","LOG","LOG10","LOGEST","LOGINV","LOGNORM.DIST","LOGNORMDIST","LOGNORM.INV","LOOKUP","LOWER","MATCH","MAX","MAXA","MAXIFS","MDETERM","MDURATION","MEDIAN","MID","MIDBs","MIN","MINIFS","MINA","MINUTE","MINVERSE","MIRR","MMULT","MOD","MODE","MODE.MULT","MODE.SNGL","MONTH","MROUND","MULTINOMIAL","MUNIT","N","NA","NEGBINOM.DIST","NEGBINOMDIST","NETWORKDAYS","NETWORKDAYS.INTL","NOMINAL","NORM.DIST","NORMDIST","NORMINV","NORM.INV","NORM.S.DIST","NORMSDIST","NORM.S.INV","NORMSINV","NOT","NOW","NPER","NPV","NUMBERVALUE","OCT2BIN","OCT2DEC","OCT2HEX","ODD","ODDFPRICE","ODDFYIELD","ODDLPRICE","ODDLYIELD","OFFSET","OR","PDURATION","PEARSON","PERCENTILE.EXC","PERCENTILE.INC","PERCENTILE","PERCENTRANK.EXC","PERCENTRANK.INC","PERCENTRANK","PERMUT","PERMUTATIONA","PHI","PHONETIC","PI","PMT","POISSON.DIST","POISSON","POWER","PPMT","PRICE","PRICEDISC","PRICEMAT","PROB","PRODUCT","PROPER","PV","QUARTILE","QUARTILE.EXC","QUARTILE.INC","QUOTIENT","RADIANS","RAND","RANDBETWEEN","RANK.AVG","RANK.EQ","RANK","RATE","RECEIVED","REGISTER.ID","REPLACE","REPLACEB","REPT","RIGHT","RIGHTB","ROMAN","ROUND","ROUNDDOWN","ROUNDUP","ROW","ROWS","RRI","RSQ","RTD","SEARCH","SEARCHB","SEC","SECH","SECOND","SERIESSUM","SHEET","SHEETS","SIGN","SIN","SINH","SKEW","SKEW.P","SLN","SLOPE","SMALL","SQL.REQUEST","SQRT","SQRTPI","STANDARDIZE","STDEV","STDEV.P","STDEV.S","STDEVA","STDEVP","STDEVPA","STEYX","SUBSTITUTE","SUBTOTAL","SUM","SUMIF","SUMIFS","SUMPRODUCT","SUMSQ","SUMX2MY2","SUMX2PY2","SUMXMY2","SWITCH","SYD","T","TAN","TANH","TBILLEQ","TBILLPRICE","TBILLYIELD","T.DIST","T.DIST.2T","T.DIST.RT","TDIST","TEXT","TEXTJOIN","TIME","TIMEVALUE","T.INV","T.INV.2T","TINV","TODAY","TRANSPOSE","TREND","TRIM","TRIMMEAN","TRUE|0","TRUNC","T.TEST","TTEST","TYPE","UNICHAR","UNICODE","UPPER","VALUE","VAR","VAR.P","VAR.S","VARA","VARP","VARPA","VDB","VLOOKUP","WEBSERVICE","WEEKDAY","WEEKNUM","WEIBULL","WEIBULL.DIST","WORKDAY","WORKDAY.INTL","XIRR","XNPV","XOR","YEAR","YEARFRAC","YIELD","YIELDDISC","YIELDMAT","Z.TEST","ZTEST"]
diff --git a/resources/highlight.js/11.4.0/far.min.css b/resources/highlight.js/11.5.0/far.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/far.min.css
rename to resources/highlight.js/11.5.0/far.min.css
diff --git a/resources/highlight.js/11.4.0/fix.min.jsm b/resources/highlight.js/11.5.0/fix.min.jsm
similarity index 80%
rename from resources/highlight.js/11.4.0/fix.min.jsm
rename to resources/highlight.js/11.5.0/fix.min.jsm
index 2b29d75b..afc07a6b 100644
--- a/resources/highlight.js/11.4.0/fix.min.jsm
+++ b/resources/highlight.js/11.5.0/fix.min.jsm
@@ -1,4 +1,4 @@
-/*! `fix` grammar compiled for Highlight.js 11.4.0 */
+/*! `fix` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"FIX",contains:[{
begin:/[^\u2401\u0001]+/,end:/[\u2401\u0001]/,excludeEnd:!0,returnBegin:!0,
returnEnd:!1,contains:[{begin:/([^\u2401\u0001=]+)/,end:/=([^\u2401\u0001=]+)/,
diff --git a/resources/highlight.js/11.4.0/flix.min.jsm b/resources/highlight.js/11.5.0/flix.min.jsm
similarity index 83%
rename from resources/highlight.js/11.4.0/flix.min.jsm
rename to resources/highlight.js/11.5.0/flix.min.jsm
index 1ca17999..896ff787 100644
--- a/resources/highlight.js/11.4.0/flix.min.jsm
+++ b/resources/highlight.js/11.5.0/flix.min.jsm
@@ -1,4 +1,4 @@
-/*! `flix` grammar compiled for Highlight.js 11.4.0 */
+/*! `flix` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"Flix",keywords:{
keyword:["case","class","def","else","enum","if","impl","import","in","lat","rel","index","let","match","namespace","switch","type","yield","with"],
literal:["true","false"]},
diff --git a/resources/highlight.js/11.4.0/fortran.min.jsm b/resources/highlight.js/11.5.0/fortran.min.jsm
similarity index 97%
rename from resources/highlight.js/11.4.0/fortran.min.jsm
rename to resources/highlight.js/11.5.0/fortran.min.jsm
index 30fcbf76..157a58f2 100644
--- a/resources/highlight.js/11.4.0/fortran.min.jsm
+++ b/resources/highlight.js/11.5.0/fortran.min.jsm
@@ -1,4 +1,4 @@
-/*! `fortran` grammar compiled for Highlight.js 11.4.0 */
+/*! `fortran` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const n=e.regex,a={
variants:[e.COMMENT("!","$",{relevance:0}),e.COMMENT("^C[ ]","$",{relevance:0
}),e.COMMENT("^C$","$",{relevance:0})]
diff --git a/resources/highlight.js/11.4.0/foundation.min.css b/resources/highlight.js/11.5.0/foundation.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/foundation.min.css
rename to resources/highlight.js/11.5.0/foundation.min.css
diff --git a/resources/highlight.js/11.4.0/fsharp.min.jsm b/resources/highlight.js/11.5.0/fsharp.min.jsm
similarity index 97%
rename from resources/highlight.js/11.4.0/fsharp.min.jsm
rename to resources/highlight.js/11.5.0/fsharp.min.jsm
index a1e2a7cf..21ceda9a 100644
--- a/resources/highlight.js/11.4.0/fsharp.min.jsm
+++ b/resources/highlight.js/11.5.0/fsharp.min.jsm
@@ -1,4 +1,4 @@
-/*! `fsharp` grammar compiled for Highlight.js 11.4.0 */
+/*! `fsharp` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";function e(e){
return RegExp(e.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),"m")}function n(e){
return e?"string"==typeof e?e:e.source:null}function t(e){return i("(?=",e,")")}
diff --git a/resources/highlight.js/11.4.0/gams.min.jsm b/resources/highlight.js/11.5.0/gams.min.jsm
similarity index 96%
rename from resources/highlight.js/11.4.0/gams.min.jsm
rename to resources/highlight.js/11.5.0/gams.min.jsm
index 56ddaf66..7da28270 100644
--- a/resources/highlight.js/11.4.0/gams.min.jsm
+++ b/resources/highlight.js/11.5.0/gams.min.jsm
@@ -1,4 +1,4 @@
-/*! `gams` grammar compiled for Highlight.js 11.4.0 */
+/*! `gams` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const a=e.regex,n={
keyword:"abort acronym acronyms alias all and assign binary card diag display else eq file files for free ge gt if integer le loop lt maximizing minimizing model models ne negative no not option options or ord positive prod put putpage puttl repeat sameas semicont semiint smax smin solve sos1 sos2 sum system table then until using while xor yes",
literal:"eps inf na",
diff --git a/resources/highlight.js/11.4.0/gauss.min.jsm b/resources/highlight.js/11.5.0/gauss.min.jsm
similarity index 99%
rename from resources/highlight.js/11.4.0/gauss.min.jsm
rename to resources/highlight.js/11.5.0/gauss.min.jsm
index 653fde95..a718f045 100644
--- a/resources/highlight.js/11.4.0/gauss.min.jsm
+++ b/resources/highlight.js/11.5.0/gauss.min.jsm
@@ -1,4 +1,4 @@
-/*! `gauss` grammar compiled for Highlight.js 11.4.0 */
+/*! `gauss` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const t={
keyword:"bool break call callexe checkinterrupt clear clearg closeall cls comlog compile continue create debug declare delete disable dlibrary dllcall do dos ed edit else elseif enable end endfor endif endp endo errorlog errorlogat expr external fn for format goto gosub graph if keyword let lib library line load loadarray loadexe loadf loadk loadm loadp loads loadx local locate loopnextindex lprint lpwidth lshow matrix msym ndpclex new open output outwidth plot plotsym pop prcsn print printdos proc push retp return rndcon rndmod rndmult rndseed run save saveall screen scroll setarray show sparse stop string struct system trace trap threadfor threadendfor threadbegin threadjoin threadstat threadend until use while winprint ne ge le gt lt and xor or not eq eqv",
built_in:"abs acf aconcat aeye amax amean AmericanBinomCall AmericanBinomCall_Greeks AmericanBinomCall_ImpVol AmericanBinomPut AmericanBinomPut_Greeks AmericanBinomPut_ImpVol AmericanBSCall AmericanBSCall_Greeks AmericanBSCall_ImpVol AmericanBSPut AmericanBSPut_Greeks AmericanBSPut_ImpVol amin amult annotationGetDefaults annotationSetBkd annotationSetFont annotationSetLineColor annotationSetLineStyle annotationSetLineThickness annualTradingDays arccos arcsin areshape arrayalloc arrayindex arrayinit arraytomat asciiload asclabel astd astds asum atan atan2 atranspose axmargin balance band bandchol bandcholsol bandltsol bandrv bandsolpd bar base10 begwind besselj bessely beta box boxcox cdfBeta cdfBetaInv cdfBinomial cdfBinomialInv cdfBvn cdfBvn2 cdfBvn2e cdfCauchy cdfCauchyInv cdfChic cdfChii cdfChinc cdfChincInv cdfExp cdfExpInv cdfFc cdfFnc cdfFncInv cdfGam cdfGenPareto cdfHyperGeo cdfLaplace cdfLaplaceInv cdfLogistic cdfLogisticInv cdfmControlCreate cdfMvn cdfMvn2e cdfMvnce cdfMvne cdfMvt2e cdfMvtce cdfMvte cdfN cdfN2 cdfNc cdfNegBinomial cdfNegBinomialInv cdfNi cdfPoisson cdfPoissonInv cdfRayleigh cdfRayleighInv cdfTc cdfTci cdfTnc cdfTvn cdfWeibull cdfWeibullInv cdir ceil ChangeDir chdir chiBarSquare chol choldn cholsol cholup chrs close code cols colsf combinate combinated complex con cond conj cons ConScore contour conv convertsatostr convertstrtosa corrm corrms corrvc corrx corrxs cos cosh counts countwts crossprd crout croutp csrcol csrlin csvReadM csvReadSA cumprodc cumsumc curve cvtos datacreate datacreatecomplex datalist dataload dataloop dataopen datasave date datestr datestring datestrymd dayinyr dayofweek dbAddDatabase dbClose dbCommit dbCreateQuery dbExecQuery dbGetConnectOptions dbGetDatabaseName dbGetDriverName dbGetDrivers dbGetHostName dbGetLastErrorNum dbGetLastErrorText dbGetNumericalPrecPolicy dbGetPassword dbGetPort dbGetTableHeaders dbGetTables dbGetUserName dbHasFeature dbIsDriverAvailable dbIsOpen dbIsOpenError dbOpen dbQueryBindValue dbQueryClear dbQueryCols dbQueryExecPrepared dbQueryFetchAllM dbQueryFetchAllSA dbQueryFetchOneM dbQueryFetchOneSA dbQueryFinish dbQueryGetBoundValue dbQueryGetBoundValues dbQueryGetField dbQueryGetLastErrorNum dbQueryGetLastErrorText dbQueryGetLastInsertID dbQueryGetLastQuery dbQueryGetPosition dbQueryIsActive dbQueryIsForwardOnly dbQueryIsNull dbQueryIsSelect dbQueryIsValid dbQueryPrepare dbQueryRows dbQuerySeek dbQuerySeekFirst dbQuerySeekLast dbQuerySeekNext dbQuerySeekPrevious dbQuerySetForwardOnly dbRemoveDatabase dbRollback dbSetConnectOptions dbSetDatabaseName dbSetHostName dbSetNumericalPrecPolicy dbSetPort dbSetUserName dbTransaction DeleteFile delif delrows denseToSp denseToSpRE denToZero design det detl dfft dffti diag diagrv digamma doswin DOSWinCloseall DOSWinOpen dotfeq dotfeqmt dotfge dotfgemt dotfgt dotfgtmt dotfle dotflemt dotflt dotfltmt dotfne dotfnemt draw drop dsCreate dstat dstatmt dstatmtControlCreate dtdate dtday dttime dttodtv dttostr dttoutc dtvnormal dtvtodt dtvtoutc dummy dummybr dummydn eig eigh eighv eigv elapsedTradingDays endwind envget eof eqSolve eqSolvemt eqSolvemtControlCreate eqSolvemtOutCreate eqSolveset erf erfc erfccplx erfcplx error etdays ethsec etstr EuropeanBinomCall EuropeanBinomCall_Greeks EuropeanBinomCall_ImpVol EuropeanBinomPut EuropeanBinomPut_Greeks EuropeanBinomPut_ImpVol EuropeanBSCall EuropeanBSCall_Greeks EuropeanBSCall_ImpVol EuropeanBSPut EuropeanBSPut_Greeks EuropeanBSPut_ImpVol exctsmpl exec execbg exp extern eye fcheckerr fclearerr feq feqmt fflush fft ffti fftm fftmi fftn fge fgemt fgets fgetsa fgetsat fgetst fgt fgtmt fileinfo filesa fle flemt floor flt fltmt fmod fne fnemt fonts fopen formatcv formatnv fputs fputst fseek fstrerror ftell ftocv ftos ftostrC gamma gammacplx gammaii gausset gdaAppend gdaCreate gdaDStat gdaDStatMat gdaGetIndex gdaGetName gdaGetNames gdaGetOrders gdaGetType gdaGetTypes gdaGetVarInfo gdaIsCplx gdaLoad gdaPack gdaRead gdaReadByIndex gdaReadSome gdaReadSparse gdaReadStruct gdaReportVarInfo gdaSave gdaUpdate gdaUpdateAndPack gdaVars gdaWrite gdaWrite32 gdaWriteSome getarray getdims getf getGAUSShome getmatrix getmatrix4D getname getnamef getNextTradingDay getNextWeekDay getnr getorders getpath getPreviousTradingDay getPreviousWeekDay getRow getscalar3D getscalar4D getTrRow getwind glm gradcplx gradMT gradMTm gradMTT gradMTTm gradp graphprt graphset hasimag header headermt hess hessMT hessMTg hessMTgw hessMTm hessMTmw hessMTT hessMTTg hessMTTgw hessMTTm hessMTw hessp hist histf histp hsec imag indcv indexcat indices indices2 indicesf indicesfn indnv indsav integrate1d integrateControlCreate intgrat2 intgrat3 inthp1 inthp2 inthp3 inthp4 inthpControlCreate intquad1 intquad2 intquad3 intrleav intrleavsa intrsect intsimp inv invpd invswp iscplx iscplxf isden isinfnanmiss ismiss key keyav keyw lag lag1 lagn lapEighb lapEighi lapEighvb lapEighvi lapgEig lapgEigh lapgEighv lapgEigv lapgSchur lapgSvdcst lapgSvds lapgSvdst lapSvdcusv lapSvds lapSvdusv ldlp ldlsol linSolve listwise ln lncdfbvn lncdfbvn2 lncdfmvn lncdfn lncdfn2 lncdfnc lnfact lngammacplx lnpdfmvn lnpdfmvt lnpdfn lnpdft loadd loadstruct loadwind loess loessmt loessmtControlCreate log loglog logx logy lower lowmat lowmat1 ltrisol lu lusol machEpsilon make makevars makewind margin matalloc matinit mattoarray maxbytes maxc maxindc maxv maxvec mbesselei mbesselei0 mbesselei1 mbesseli mbesseli0 mbesseli1 meanc median mergeby mergevar minc minindc minv miss missex missrv moment momentd movingave movingaveExpwgt movingaveWgt nextindex nextn nextnevn nextwind ntos null null1 numCombinations ols olsmt olsmtControlCreate olsqr olsqr2 olsqrmt ones optn optnevn orth outtyp pacf packedToSp packr parse pause pdfCauchy pdfChi pdfExp pdfGenPareto pdfHyperGeo pdfLaplace pdfLogistic pdfn pdfPoisson pdfRayleigh pdfWeibull pi pinv pinvmt plotAddArrow plotAddBar plotAddBox plotAddHist plotAddHistF plotAddHistP plotAddPolar plotAddScatter plotAddShape plotAddTextbox plotAddTS plotAddXY plotArea plotBar plotBox plotClearLayout plotContour plotCustomLayout plotGetDefaults plotHist plotHistF plotHistP plotLayout plotLogLog plotLogX plotLogY plotOpenWindow plotPolar plotSave plotScatter plotSetAxesPen plotSetBar plotSetBarFill plotSetBarStacked plotSetBkdColor plotSetFill plotSetGrid plotSetLegend plotSetLineColor plotSetLineStyle plotSetLineSymbol plotSetLineThickness plotSetNewWindow plotSetTitle plotSetWhichYAxis plotSetXAxisShow plotSetXLabel plotSetXRange plotSetXTicInterval plotSetXTicLabel plotSetYAxisShow plotSetYLabel plotSetYRange plotSetZAxisShow plotSetZLabel plotSurface plotTS plotXY polar polychar polyeval polygamma polyint polymake polymat polymroot polymult polyroot pqgwin previousindex princomp printfm printfmt prodc psi putarray putf putvals pvCreate pvGetIndex pvGetParNames pvGetParVector pvLength pvList pvPack pvPacki pvPackm pvPackmi pvPacks pvPacksi pvPacksm pvPacksmi pvPutParVector pvTest pvUnpack QNewton QNewtonmt QNewtonmtControlCreate QNewtonmtOutCreate QNewtonSet QProg QProgmt QProgmtInCreate qqr qqre qqrep qr qre qrep qrsol qrtsol qtyr qtyre qtyrep quantile quantiled qyr qyre qyrep qz rank rankindx readr real reclassify reclassifyCuts recode recserar recsercp recserrc rerun rescale reshape rets rev rfft rffti rfftip rfftn rfftnp rfftp rndBernoulli rndBeta rndBinomial rndCauchy rndChiSquare rndCon rndCreateState rndExp rndGamma rndGeo rndGumbel rndHyperGeo rndi rndKMbeta rndKMgam rndKMi rndKMn rndKMnb rndKMp rndKMu rndKMvm rndLaplace rndLCbeta rndLCgam rndLCi rndLCn rndLCnb rndLCp rndLCu rndLCvm rndLogNorm rndMTu rndMVn rndMVt rndn rndnb rndNegBinomial rndp rndPoisson rndRayleigh rndStateSkip rndu rndvm rndWeibull rndWishart rotater round rows rowsf rref sampleData satostrC saved saveStruct savewind scale scale3d scalerr scalinfnanmiss scalmiss schtoc schur searchsourcepath seekr select selif seqa seqm setdif setdifsa setvars setvwrmode setwind shell shiftr sin singleindex sinh sleep solpd sortc sortcc sortd sorthc sorthcc sortind sortindc sortmc sortr sortrc spBiconjGradSol spChol spConjGradSol spCreate spDenseSubmat spDiagRvMat spEigv spEye spLDL spline spLU spNumNZE spOnes spreadSheetReadM spreadSheetReadSA spreadSheetWrite spScale spSubmat spToDense spTrTDense spTScalar spZeros sqpSolve sqpSolveMT sqpSolveMTControlCreate sqpSolveMTlagrangeCreate sqpSolveMToutCreate sqpSolveSet sqrt statements stdc stdsc stocv stof strcombine strindx strlen strput strrindx strsect strsplit strsplitPad strtodt strtof strtofcplx strtriml strtrimr strtrunc strtruncl strtruncpad strtruncr submat subscat substute subvec sumc sumr surface svd svd1 svd2 svdcusv svds svdusv sysstate tab tan tanh tempname time timedt timestr timeutc title tkf2eps tkf2ps tocart todaydt toeplitz token topolar trapchk trigamma trimr trunc type typecv typef union unionsa uniqindx uniqindxsa unique uniquesa upmat upmat1 upper utctodt utctodtv utrisol vals varCovMS varCovXS varget vargetl varmall varmares varput varputl vartypef vcm vcms vcx vcxs vec vech vecr vector vget view viewxyz vlist vnamecv volume vput vread vtypecv wait waitc walkindex where window writer xlabel xlsGetSheetCount xlsGetSheetSize xlsGetSheetTypes xlsMakeRange xlsReadM xlsReadSA xlsWrite xlsWriteM xlsWriteSA xpnd xtics xy xyz ylabel ytics zeros zeta zlabel ztics cdfEmpirical dot h5create h5open h5read h5readAttribute h5write h5writeAttribute ldl plotAddErrorBar plotAddSurface plotCDFEmpirical plotSetColormap plotSetContourLabels plotSetLegendFont plotSetTextInterpreter plotSetXTicCount plotSetYTicCount plotSetZLevels powerm strjoin sylvester strtrim",
diff --git a/resources/highlight.js/11.4.0/gcode.min.jsm b/resources/highlight.js/11.5.0/gcode.min.jsm
similarity index 89%
rename from resources/highlight.js/11.4.0/gcode.min.jsm
rename to resources/highlight.js/11.5.0/gcode.min.jsm
index dc5c789b..0c11f401 100644
--- a/resources/highlight.js/11.4.0/gcode.min.jsm
+++ b/resources/highlight.js/11.5.0/gcode.min.jsm
@@ -1,4 +1,4 @@
-/*! `gcode` grammar compiled for Highlight.js 11.4.0 */
+/*! `gcode` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const a=e.inherit(e.C_NUMBER_MODE,{
begin:"([-+]?((\\.\\d+)|(\\d+)(\\.\\d*)?))|"+e.C_NUMBER_RE
}),n=[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.COMMENT(/\(/,/\)/),a,e.inherit(e.APOS_STRING_MODE,{
diff --git a/resources/highlight.js/11.4.0/gherkin.min.jsm b/resources/highlight.js/11.5.0/gherkin.min.jsm
similarity index 84%
rename from resources/highlight.js/11.4.0/gherkin.min.jsm
rename to resources/highlight.js/11.5.0/gherkin.min.jsm
index eb446bf1..c0763dba 100644
--- a/resources/highlight.js/11.4.0/gherkin.min.jsm
+++ b/resources/highlight.js/11.5.0/gherkin.min.jsm
@@ -1,4 +1,4 @@
-/*! `gherkin` grammar compiled for Highlight.js 11.4.0 */
+/*! `gherkin` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"Gherkin",aliases:["feature"],
keywords:"Feature Background Ability Business Need Scenario Scenarios Scenario Outline Scenario Template Examples Given And Then But When",
contains:[{className:"symbol",begin:"\\*",relevance:0},{className:"meta",
diff --git a/resources/highlight.js/11.4.0/github-dark-dimmed.min.css b/resources/highlight.js/11.5.0/github-dark-dimmed.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/github-dark-dimmed.min.css
rename to resources/highlight.js/11.5.0/github-dark-dimmed.min.css
diff --git a/resources/highlight.js/11.4.0/github-dark.min.css b/resources/highlight.js/11.5.0/github-dark.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/github-dark.min.css
rename to resources/highlight.js/11.5.0/github-dark.min.css
diff --git a/resources/highlight.js/11.4.0/github.min.css b/resources/highlight.js/11.5.0/github.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/github.min.css
rename to resources/highlight.js/11.5.0/github.min.css
diff --git a/resources/highlight.js/11.4.0/glsl.min.jsm b/resources/highlight.js/11.5.0/glsl.min.jsm
similarity index 99%
rename from resources/highlight.js/11.4.0/glsl.min.jsm
rename to resources/highlight.js/11.5.0/glsl.min.jsm
index ed1f33ae..26f43fa6 100644
--- a/resources/highlight.js/11.4.0/glsl.min.jsm
+++ b/resources/highlight.js/11.5.0/glsl.min.jsm
@@ -1,4 +1,4 @@
-/*! `glsl` grammar compiled for Highlight.js 11.4.0 */
+/*! `glsl` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"GLSL",keywords:{
keyword:"break continue discard do else for if return while switch case default attribute binding buffer ccw centroid centroid varying coherent column_major const cw depth_any depth_greater depth_less depth_unchanged early_fragment_tests equal_spacing flat fractional_even_spacing fractional_odd_spacing highp in index inout invariant invocations isolines layout line_strip lines lines_adjacency local_size_x local_size_y local_size_z location lowp max_vertices mediump noperspective offset origin_upper_left out packed patch pixel_center_integer point_mode points precise precision quads r11f_g11f_b10f r16 r16_snorm r16f r16i r16ui r32f r32i r32ui r8 r8_snorm r8i r8ui readonly restrict rg16 rg16_snorm rg16f rg16i rg16ui rg32f rg32i rg32ui rg8 rg8_snorm rg8i rg8ui rgb10_a2 rgb10_a2ui rgba16 rgba16_snorm rgba16f rgba16i rgba16ui rgba32f rgba32i rgba32ui rgba8 rgba8_snorm rgba8i rgba8ui row_major sample shared smooth std140 std430 stream triangle_strip triangles triangles_adjacency uniform varying vertices volatile writeonly",
type:"atomic_uint bool bvec2 bvec3 bvec4 dmat2 dmat2x2 dmat2x3 dmat2x4 dmat3 dmat3x2 dmat3x3 dmat3x4 dmat4 dmat4x2 dmat4x3 dmat4x4 double dvec2 dvec3 dvec4 float iimage1D iimage1DArray iimage2D iimage2DArray iimage2DMS iimage2DMSArray iimage2DRect iimage3D iimageBuffer iimageCube iimageCubeArray image1D image1DArray image2D image2DArray image2DMS image2DMSArray image2DRect image3D imageBuffer imageCube imageCubeArray int isampler1D isampler1DArray isampler2D isampler2DArray isampler2DMS isampler2DMSArray isampler2DRect isampler3D isamplerBuffer isamplerCube isamplerCubeArray ivec2 ivec3 ivec4 mat2 mat2x2 mat2x3 mat2x4 mat3 mat3x2 mat3x3 mat3x4 mat4 mat4x2 mat4x3 mat4x4 sampler1D sampler1DArray sampler1DArrayShadow sampler1DShadow sampler2D sampler2DArray sampler2DArrayShadow sampler2DMS sampler2DMSArray sampler2DRect sampler2DRectShadow sampler2DShadow sampler3D samplerBuffer samplerCube samplerCubeArray samplerCubeArrayShadow samplerCubeShadow image1D uimage1DArray uimage2D uimage2DArray uimage2DMS uimage2DMSArray uimage2DRect uimage3D uimageBuffer uimageCube uimageCubeArray uint usampler1D usampler1DArray usampler2D usampler2DArray usampler2DMS usampler2DMSArray usampler2DRect usampler3D samplerBuffer usamplerCube usamplerCubeArray uvec2 uvec3 uvec4 vec2 vec3 vec4 void",
diff --git a/resources/highlight.js/11.4.0/gml.min.css b/resources/highlight.js/11.5.0/gml.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/gml.min.css
rename to resources/highlight.js/11.5.0/gml.min.css
diff --git a/resources/highlight.js/11.4.0/gml.min.jsm b/resources/highlight.js/11.5.0/gml.min.jsm
similarity index 99%
rename from resources/highlight.js/11.4.0/gml.min.jsm
rename to resources/highlight.js/11.5.0/gml.min.jsm
index 9dc8b8e1..4ab2b622 100644
--- a/resources/highlight.js/11.4.0/gml.min.jsm
+++ b/resources/highlight.js/11.5.0/gml.min.jsm
@@ -1,4 +1,4 @@
-/*! `gml` grammar compiled for Highlight.js 11.4.0 */
+/*! `gml` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"GML",case_insensitive:!1,
keywords:{
keyword:["begin","end","if","then","else","while","do","for","break","continue","with","until","repeat","exit","and","or","xor","not","return","mod","div","switch","case","default","var","globalvar","enum","function","constructor","delete","#macro","#region","#endregion"],
diff --git a/resources/highlight.js/11.4.0/go.min.jsm b/resources/highlight.js/11.5.0/go.min.jsm
similarity index 92%
rename from resources/highlight.js/11.4.0/go.min.jsm
rename to resources/highlight.js/11.5.0/go.min.jsm
index 5e9a7ac4..f4c58110 100644
--- a/resources/highlight.js/11.4.0/go.min.jsm
+++ b/resources/highlight.js/11.5.0/go.min.jsm
@@ -1,4 +1,4 @@
-/*! `go` grammar compiled for Highlight.js 11.4.0 */
+/*! `go` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const n={
keyword:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],
type:["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],
diff --git a/resources/highlight.js/11.4.0/golo.min.jsm b/resources/highlight.js/11.5.0/golo.min.jsm
similarity index 90%
rename from resources/highlight.js/11.4.0/golo.min.jsm
rename to resources/highlight.js/11.5.0/golo.min.jsm
index 246cce0d..9c1b40a0 100644
--- a/resources/highlight.js/11.4.0/golo.min.jsm
+++ b/resources/highlight.js/11.5.0/golo.min.jsm
@@ -1,4 +1,4 @@
-/*! `golo` grammar compiled for Highlight.js 11.4.0 */
+/*! `golo` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"Golo",keywords:{
keyword:["println","readln","print","import","module","function","local","return","let","var","while","for","foreach","times","in","case","when","match","with","break","continue","augment","augmentation","each","find","filter","reduce","if","then","else","otherwise","try","catch","finally","raise","throw","orIfNull","DynamicObject|10","DynamicVariable","struct","Observable","map","set","vector","list","array"],
literal:["true","false","null"]},
diff --git a/resources/highlight.js/11.4.0/googlecode.min.css b/resources/highlight.js/11.5.0/googlecode.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/googlecode.min.css
rename to resources/highlight.js/11.5.0/googlecode.min.css
diff --git a/resources/highlight.js/11.4.0/gradient-dark.min.css b/resources/highlight.js/11.5.0/gradient-dark.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/gradient-dark.min.css
rename to resources/highlight.js/11.5.0/gradient-dark.min.css
diff --git a/resources/highlight.js/11.4.0/gradient-light.min.css b/resources/highlight.js/11.5.0/gradient-light.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/gradient-light.min.css
rename to resources/highlight.js/11.5.0/gradient-light.min.css
diff --git a/resources/highlight.js/11.4.0/gradle.min.jsm b/resources/highlight.js/11.5.0/gradle.min.jsm
similarity index 94%
rename from resources/highlight.js/11.4.0/gradle.min.jsm
rename to resources/highlight.js/11.5.0/gradle.min.jsm
index e03ce3bb..ffcc11ee 100644
--- a/resources/highlight.js/11.4.0/gradle.min.jsm
+++ b/resources/highlight.js/11.5.0/gradle.min.jsm
@@ -1,4 +1,4 @@
-/*! `gradle` grammar compiled for Highlight.js 11.4.0 */
+/*! `gradle` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"Gradle",case_insensitive:!0,
keywords:["task","project","allprojects","subprojects","artifacts","buildscript","configurations","dependencies","repositories","sourceSets","description","delete","from","into","include","exclude","source","classpath","destinationDir","includes","options","sourceCompatibility","targetCompatibility","group","flatDir","doLast","doFirst","flatten","todir","fromdir","ant","def","abstract","break","case","catch","continue","default","do","else","extends","final","finally","for","if","implements","instanceof","native","new","private","protected","public","return","static","switch","synchronized","throw","throws","transient","try","volatile","while","strictfp","package","import","false","null","super","this","true","antlrtask","checkstyle","codenarc","copy","boolean","byte","char","class","double","float","int","interface","long","short","void","compile","runTime","file","fileTree","abs","any","append","asList","asWritable","call","collect","compareTo","count","div","dump","each","eachByte","eachFile","eachLine","every","find","findAll","flatten","getAt","getErr","getIn","getOut","getText","grep","immutable","inject","inspect","intersect","invokeMethods","isCase","join","leftShift","minus","multiply","newInputStream","newOutputStream","newPrintWriter","newReader","newWriter","next","plus","pop","power","previous","print","println","push","putAt","read","readBytes","readLines","reverse","reverseEach","round","size","sort","splitEachLine","step","subMap","times","toInteger","toList","tokenize","upto","waitForOrKill","withPrintWriter","withReader","withStream","withWriter","withWriterAppend","write","writeLine"],
contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.NUMBER_MODE,e.REGEXP_MODE]
diff --git a/resources/highlight.js/11.4.0/grayscale.min.css b/resources/highlight.js/11.5.0/grayscale.min.css
similarity index 100%
rename from resources/highlight.js/11.4.0/grayscale.min.css
rename to resources/highlight.js/11.5.0/grayscale.min.css
diff --git a/resources/highlight.js/11.4.0/groovy.min.jsm b/resources/highlight.js/11.5.0/groovy.min.jsm
similarity index 92%
rename from resources/highlight.js/11.4.0/groovy.min.jsm
rename to resources/highlight.js/11.5.0/groovy.min.jsm
index 739dc8c5..fe446e45 100644
--- a/resources/highlight.js/11.4.0/groovy.min.jsm
+++ b/resources/highlight.js/11.5.0/groovy.min.jsm
@@ -1,4 +1,4 @@
-/*! `groovy` grammar compiled for Highlight.js 11.4.0 */
+/*! `groovy` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";function e(e,a={}){return a.variants=e,a}
return a=>{
const n=a.regex,t="[A-Za-z0-9_$]+",r=e([a.C_LINE_COMMENT_MODE,a.C_BLOCK_COMMENT_MODE,a.COMMENT("/\\*\\*","\\*/",{
diff --git a/resources/highlight.js/11.4.0/haml.min.jsm b/resources/highlight.js/11.5.0/haml.min.jsm
similarity index 92%
rename from resources/highlight.js/11.4.0/haml.min.jsm
rename to resources/highlight.js/11.5.0/haml.min.jsm
index b08f2726..0521f848 100644
--- a/resources/highlight.js/11.4.0/haml.min.jsm
+++ b/resources/highlight.js/11.5.0/haml.min.jsm
@@ -1,4 +1,4 @@
-/*! `haml` grammar compiled for Highlight.js 11.4.0 */
+/*! `haml` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"HAML",case_insensitive:!0,
contains:[{className:"meta",
begin:"^!!!( (5|1\\.1|Strict|Frameset|Basic|Mobile|RDFa|XML\\b.*))?$",
diff --git a/resources/highlight.js/11.4.0/handlebars.min.jsm b/resources/highlight.js/11.5.0/handlebars.min.jsm
similarity index 95%
rename from resources/highlight.js/11.4.0/handlebars.min.jsm
rename to resources/highlight.js/11.5.0/handlebars.min.jsm
index 2d0ef5c2..76da7679 100644
--- a/resources/highlight.js/11.4.0/handlebars.min.jsm
+++ b/resources/highlight.js/11.5.0/handlebars.min.jsm
@@ -1,4 +1,4 @@
-/*! `handlebars` grammar compiled for Highlight.js 11.4.0 */
+/*! `handlebars` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const a=e.regex,n={
$pattern:/[\w.\/]+/,
built_in:["action","bindattr","collection","component","concat","debugger","each","each-in","get","hash","if","in","input","link-to","loc","log","lookup","mut","outlet","partial","query-params","render","template","textarea","unbound","unless","view","with","yield"]
diff --git a/resources/highlight.js/11.4.0/haskell.min.jsm b/resources/highlight.js/11.5.0/haskell.min.jsm
similarity index 97%
rename from resources/highlight.js/11.4.0/haskell.min.jsm
rename to resources/highlight.js/11.5.0/haskell.min.jsm
index f9a7599c..296c2b1b 100644
--- a/resources/highlight.js/11.4.0/haskell.min.jsm
+++ b/resources/highlight.js/11.5.0/haskell.min.jsm
@@ -1,4 +1,4 @@
-/*! `haskell` grammar compiled for Highlight.js 11.4.0 */
+/*! `haskell` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>{const n={
variants:[e.COMMENT("--","$"),e.COMMENT(/\{-/,/-\}/,{contains:["self"]})]},a={
className:"meta",begin:/\{-#/,end:/#-\}/},i={className:"meta",begin:"^#",end:"$"
diff --git a/resources/highlight.js/11.4.0/haxe.min.jsm b/resources/highlight.js/11.5.0/haxe.min.jsm
similarity index 95%
rename from resources/highlight.js/11.4.0/haxe.min.jsm
rename to resources/highlight.js/11.5.0/haxe.min.jsm
index 879411be..ebec05f7 100644
--- a/resources/highlight.js/11.4.0/haxe.min.jsm
+++ b/resources/highlight.js/11.5.0/haxe.min.jsm
@@ -1,4 +1,4 @@
-/*! `haxe` grammar compiled for Highlight.js 11.4.0 */
+/*! `haxe` grammar compiled for Highlight.js 11.5.0 */
(()=>{var e=(()=>{"use strict";return e=>({name:"Haxe",aliases:["hx"],keywords:{
keyword:"break case cast catch continue default do dynamic else enum extern for function here if import in inline never new override package private get set public return static super switch this throw trace try typedef untyped using var while Int Float String Bool Dynamic Void Array ",
built_in:"trace this",literal:"true false null _"},contains:[{
diff --git a/resources/highlight.js/11.4.0/highlight.min.jsm b/resources/highlight.js/11.5.0/highlight.min.jsm
similarity index 79%
rename from resources/highlight.js/11.4.0/highlight.min.jsm
rename to resources/highlight.js/11.5.0/highlight.min.jsm
index 5c7f06a2..a966f213 100644
--- a/resources/highlight.js/11.4.0/highlight.min.jsm
+++ b/resources/highlight.js/11.5.0/highlight.min.jsm
@@ -1,5 +1,5 @@
/*!
- Highlight.js v11.4.0 (git: 2d0e7c1094)
+ Highlight.js v11.5.0 (git: 7a62552656)
(c) 2006-2022 Ivan Sagalaev and other contributors
License: BSD-3-Clause
*/
@@ -52,30 +52,30 @@ const h=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./
i+=a.substring(0,e.index),
a=a.substring(e.index+e[0].length),"\\"===e[0][0]&&e[1]?i+="\\"+(Number(e[1])+n):(i+=e[0],
"("===e[0]&&t++)}return i})).map((e=>`(${e})`)).join(n)}
-const E="[a-zA-Z]\\w*",y="[a-zA-Z_]\\w*",N="\\b\\d+(\\.\\d+)?",w="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",v="\\b(0b[01]+)",O={
-begin:"\\\\[\\s\\S]",relevance:0},x={scope:"string",begin:"'",end:"'",
-illegal:"\\n",contains:[O]},M={scope:"string",begin:'"',end:'"',illegal:"\\n",
-contains:[O]},k=(e,n,t={})=>{const a=r({scope:"comment",begin:e,end:n,
+const E="[a-zA-Z]\\w*",y="[a-zA-Z_]\\w*",w="\\b\\d+(\\.\\d+)?",N="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",v="\\b(0b[01]+)",k={
+begin:"\\\\[\\s\\S]",relevance:0},O={scope:"string",begin:"'",end:"'",
+illegal:"\\n",contains:[k]},x={scope:"string",begin:'"',end:'"',illegal:"\\n",
+contains:[k]},M=(e,n,t={})=>{const a=r({scope:"comment",begin:e,end:n,
contains:[]},t);a.contains.push({scope:"doctag",
begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",
end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0})
;const i=p("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/)
;return a.contains.push({begin:m(/[ ]+/,"(",i,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),a
-},S=k("//","$"),A=k("/\\*","\\*/"),C=k("#","$");var T=Object.freeze({
+},S=M("//","$"),A=M("/\\*","\\*/"),C=M("#","$");var T=Object.freeze({
__proto__:null,MATCH_NOTHING_RE:/\b\B/,IDENT_RE:E,UNDERSCORE_IDENT_RE:y,
-NUMBER_RE:N,C_NUMBER_RE:w,BINARY_NUMBER_RE:v,
+NUMBER_RE:w,C_NUMBER_RE:N,BINARY_NUMBER_RE:v,
RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",
SHEBANG:(e={})=>{const n=/^#![ ]*\//
;return e.binary&&(e.begin=m(n,/.*\b/,e.binary,/\b.*/)),r({scope:"meta",begin:n,
end:/$/,relevance:0,"on:begin":(e,n)=>{0!==e.index&&n.ignoreMatch()}},e)},
-BACKSLASH_ESCAPE:O,APOS_STRING_MODE:x,QUOTE_STRING_MODE:M,PHRASAL_WORDS_MODE:{
+BACKSLASH_ESCAPE:k,APOS_STRING_MODE:O,QUOTE_STRING_MODE:x,PHRASAL_WORDS_MODE:{
begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/
-},COMMENT:k,C_LINE_COMMENT_MODE:S,C_BLOCK_COMMENT_MODE:A,HASH_COMMENT_MODE:C,
-NUMBER_MODE:{scope:"number",begin:N,relevance:0},C_NUMBER_MODE:{scope:"number",
-begin:w,relevance:0},BINARY_NUMBER_MODE:{scope:"number",begin:v,relevance:0},
+},COMMENT:M,C_LINE_COMMENT_MODE:S,C_BLOCK_COMMENT_MODE:A,HASH_COMMENT_MODE:C,
+NUMBER_MODE:{scope:"number",begin:w,relevance:0},C_NUMBER_MODE:{scope:"number",
+begin:N,relevance:0},BINARY_NUMBER_MODE:{scope:"number",begin:v,relevance:0},
REGEXP_MODE:{begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//,
-end:/\/[gimuy]*/,illegal:/\n/,contains:[O,{begin:/\[/,end:/\]/,relevance:0,
-contains:[O]}]}]},TITLE_MODE:{scope:"title",begin:E,relevance:0},
+end:/\/[gimuy]*/,illegal:/\n/,contains:[k,{begin:/\[/,end:/\]/,relevance:0,
+contains:[k]}]}]},TITLE_MODE:{scope:"title",begin:E,relevance:0},
UNDERSCORE_TITLE_MODE:{scope:"title",begin:y,relevance:0},METHOD_GUARD:{
begin:"\\.\\s*[a-zA-Z_]\\w*",relevance:0},END_SAME_AS_BEGIN:e=>Object.assign(e,{
"on:begin":(e,n)=>{n.data._beginMatch=e[1]},"on:end":(e,n)=>{
@@ -89,20 +89,20 @@ Array.isArray(e.illegal)&&(e.illegal=p(...e.illegal))}function B(e,n){
if(e.match){
if(e.begin||e.end)throw Error("begin & end are not supported with match")
;e.begin=e.match,delete e.match}}function $(e,n){
-void 0===e.relevance&&(e.relevance=1)}const F=(e,n)=>{if(!e.beforeMatch)return
+void 0===e.relevance&&(e.relevance=1)}const z=(e,n)=>{if(!e.beforeMatch)return
;if(e.starts)throw Error("beforeMatch cannot be used with starts")
;const t=Object.assign({},e);Object.keys(e).forEach((n=>{delete e[n]
})),e.keywords=t.keywords,e.begin=m(t.beforeMatch,g(t.begin)),e.starts={
relevance:0,contains:[Object.assign(t,{endsParent:!0})]
},e.relevance=0,delete t.beforeMatch
-},z=["of","and","for","in","not","or","if","then","parent","list","value"]
+},F=["of","and","for","in","not","or","if","then","parent","list","value"]
;function U(e,n,t="keyword"){const a=Object.create(null)
;return"string"==typeof e?i(t,e.split(" ")):Array.isArray(e)?i(t,e):Object.keys(e).forEach((t=>{
Object.assign(a,U(e[t],n,t))})),a;function i(e,t){
n&&(t=t.map((e=>e.toLowerCase()))),t.forEach((n=>{const t=n.split("|")
;a[t[0]]=[e,j(t[0],t[1])]}))}}function j(e,n){
-return n?Number(n):(e=>z.includes(e.toLowerCase()))(e)?0:1}const P={},K=e=>{
-console.error(e)},q=(e,...n)=>{console.log("WARN: "+e,...n)},H=(e,n)=>{
+return n?Number(n):(e=>F.includes(e.toLowerCase()))(e)?0:1}const P={},K=e=>{
+console.error(e)},H=(e,...n)=>{console.log("WARN: "+e,...n)},q=(e,n)=>{
P[`${e}/${n}`]||(console.log(`Deprecated as of ${e}. ${n}`),P[`${e}/${n}`]=!0)
},Z=Error();function G(e,n,{key:t}){let a=0;const i=e[t],r={},s={}
;for(let e=1;e<=n.length;e++)s[e+a]=i[e],r[e+a]=!0,a+=_(n[e-1])
@@ -149,7 +149,7 @@ if(e.compilerExtensions||(e.compilerExtensions=[]),
e.contains&&e.contains.includes("self"))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.")
;return e.classNameAliases=r(e.classNameAliases||{}),function t(i,s){const o=i
;if(i.isCompiled)return o
-;[D,B,W,F].forEach((e=>e(i,s))),e.compilerExtensions.forEach((e=>e(i,s))),
+;[D,B,W,z].forEach((e=>e(i,s))),e.compilerExtensions.forEach((e=>e(i,s))),
i.__beforeBegin=null,[I,L,$].forEach((e=>e(i,s))),i.isCompiled=!0;let l=null
;return"object"==typeof i.keywords&&i.keywords.$pattern&&(i.keywords=Object.assign({},i.keywords),
l=i.keywords.$pattern,
@@ -178,44 +178,44 @@ languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",
cssSelector:"pre code",languages:null,__emitter:c};function _(e){
return d.noHighlightRe.test(e)}function h(e,n,t){let a="",i=""
;"object"==typeof n?(a=e,
-t=n.ignoreIllegals,i=n.language):(H("10.7.0","highlight(lang, code, ...args) has been deprecated."),
-H("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"),
-i=e,a=n),void 0===t&&(t=!0);const r={code:a,language:i};M("before:highlight",r)
+t=n.ignoreIllegals,i=n.language):(q("10.7.0","highlight(lang, code, ...args) has been deprecated."),
+q("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"),
+i=e,a=n),void 0===t&&(t=!0);const r={code:a,language:i};x("before:highlight",r)
;const s=r.result?r.result:f(r.language,r.code,t)
-;return s.code=r.code,M("after:highlight",s),s}function f(e,t,i,r){
-const l=Object.create(null);function c(){if(!x.keywords)return void k.addText(S)
-;let e=0;x.keywordPatternRe.lastIndex=0;let n=x.keywordPatternRe.exec(S),t=""
+;return s.code=r.code,x("after:highlight",s),s}function f(e,t,i,r){
+const l=Object.create(null);function c(){if(!O.keywords)return void M.addText(S)
+;let e=0;O.keywordPatternRe.lastIndex=0;let n=O.keywordPatternRe.exec(S),t=""
;for(;n;){t+=S.substring(e,n.index)
-;const i=N.case_insensitive?n[0].toLowerCase():n[0],r=(a=i,x.keywords[a]);if(r){
+;const i=w.case_insensitive?n[0].toLowerCase():n[0],r=(a=i,O.keywords[a]);if(r){
const[e,a]=r
-;if(k.addText(t),t="",l[i]=(l[i]||0)+1,l[i]<=7&&(A+=a),e.startsWith("_"))t+=n[0];else{
-const t=N.classNameAliases[e]||e;k.addKeyword(n[0],t)}}else t+=n[0]
-;e=x.keywordPatternRe.lastIndex,n=x.keywordPatternRe.exec(S)}var a
-;t+=S.substr(e),k.addText(t)}function g(){null!=x.subLanguage?(()=>{
-if(""===S)return;let e=null;if("string"==typeof x.subLanguage){
-if(!n[x.subLanguage])return void k.addText(S)
-;e=f(x.subLanguage,S,!0,M[x.subLanguage]),M[x.subLanguage]=e._top
-}else e=E(S,x.subLanguage.length?x.subLanguage:null)
-;x.relevance>0&&(A+=e.relevance),k.addSublanguage(e._emitter,e.language)
-})():c(),S=""}function u(e,n){let t=1;for(;void 0!==n[t];){if(!e._emit[t]){t++
-;continue}const a=N.classNameAliases[e[t]]||e[t],i=n[t]
-;a?k.addKeyword(i,a):(S=i,c(),S=""),t++}}function b(e,n){
-return e.scope&&"string"==typeof e.scope&&k.openNode(N.classNameAliases[e.scope]||e.scope),
-e.beginScope&&(e.beginScope._wrap?(k.addKeyword(S,N.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap),
-S=""):e.beginScope._multi&&(u(e.beginScope,n),S="")),x=Object.create(e,{parent:{
-value:x}}),x}function m(e,n,t){let i=((e,n)=>{const t=e&&e.exec(n)
+;if(M.addText(t),t="",l[i]=(l[i]||0)+1,l[i]<=7&&(A+=a),e.startsWith("_"))t+=n[0];else{
+const t=w.classNameAliases[e]||e;M.addKeyword(n[0],t)}}else t+=n[0]
+;e=O.keywordPatternRe.lastIndex,n=O.keywordPatternRe.exec(S)}var a
+;t+=S.substr(e),M.addText(t)}function g(){null!=O.subLanguage?(()=>{
+if(""===S)return;let e=null;if("string"==typeof O.subLanguage){
+if(!n[O.subLanguage])return void M.addText(S)
+;e=f(O.subLanguage,S,!0,x[O.subLanguage]),x[O.subLanguage]=e._top
+}else e=E(S,O.subLanguage.length?O.subLanguage:null)
+;O.relevance>0&&(A+=e.relevance),M.addSublanguage(e._emitter,e.language)
+})():c(),S=""}function u(e,n){let t=1;const a=n.length-1;for(;t<=a;){
+if(!e._emit[t]){t++;continue}const a=w.classNameAliases[e[t]]||e[t],i=n[t]
+;a?M.addKeyword(i,a):(S=i,c(),S=""),t++}}function b(e,n){
+return e.scope&&"string"==typeof e.scope&&M.openNode(w.classNameAliases[e.scope]||e.scope),
+e.beginScope&&(e.beginScope._wrap?(M.addKeyword(S,w.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap),
+S=""):e.beginScope._multi&&(u(e.beginScope,n),S="")),O=Object.create(e,{parent:{
+value:O}}),O}function m(e,n,t){let i=((e,n)=>{const t=e&&e.exec(n)
;return t&&0===t.index})(e.endRe,t);if(i){if(e["on:end"]){const t=new a(e)
;e["on:end"](n,t),t.isMatchIgnored&&(i=!1)}if(i){
for(;e.endsParent&&e.parent;)e=e.parent;return e}}
if(e.endsWithParent)return m(e.parent,n,t)}function p(e){
-return 0===x.matcher.regexIndex?(S+=e[0],1):(R=!0,0)}function _(e){
-const n=e[0],a=t.substr(e.index),i=m(x,e,a);if(!i)return ee;const r=x
-;x.endScope&&x.endScope._wrap?(g(),
-k.addKeyword(n,x.endScope._wrap)):x.endScope&&x.endScope._multi?(g(),
-u(x.endScope,e)):r.skip?S+=n:(r.returnEnd||r.excludeEnd||(S+=n),
+return 0===O.matcher.regexIndex?(S+=e[0],1):(R=!0,0)}function _(e){
+const n=e[0],a=t.substr(e.index),i=m(O,e,a);if(!i)return ee;const r=O
+;O.endScope&&O.endScope._wrap?(g(),
+M.addKeyword(n,O.endScope._wrap)):O.endScope&&O.endScope._multi?(g(),
+u(O.endScope,e)):r.skip?S+=n:(r.returnEnd||r.excludeEnd||(S+=n),
g(),r.excludeEnd&&(S=n));do{
-x.scope&&k.closeNode(),x.skip||x.subLanguage||(A+=x.relevance),x=x.parent
-}while(x!==i.parent);return i.starts&&b(i.starts,e),r.returnEnd?0:n.length}
+O.scope&&M.closeNode(),O.skip||O.subLanguage||(A+=O.relevance),O=O.parent
+}while(O!==i.parent);return i.starts&&b(i.starts,e),r.returnEnd?0:n.length}
let h={};function y(n,r){const o=r&&r[0];if(S+=n,null==o)return g(),0
;if("begin"===h.type&&"end"===r.type&&h.index===r.index&&""===o){
if(S+=t.slice(r.index,r.index+1),!s){const n=Error(`0 width match regex (${e})`)
@@ -226,27 +226,27 @@ const n=e[0],t=e.rule,i=new a(t),r=[t.__beforeBegin,t["on:begin"]]
;return t.skip?S+=n:(t.excludeBegin&&(S+=n),
g(),t.returnBegin||t.excludeBegin||(S=n)),b(t,e),t.returnBegin?0:n.length})(r)
;if("illegal"===r.type&&!i){
-const e=Error('Illegal lexeme "'+o+'" for mode "'+(x.scope||"")+'"')
-;throw e.mode=x,e}if("end"===r.type){const e=_(r);if(e!==ee)return e}
+const e=Error('Illegal lexeme "'+o+'" for mode "'+(O.scope||"")+'"')
+;throw e.mode=O,e}if("end"===r.type){const e=_(r);if(e!==ee)return e}
if("illegal"===r.type&&""===o)return 1
;if(T>1e5&&T>3*r.index)throw Error("potential infinite loop, way more iterations than matches")
-;return S+=o,o.length}const N=v(e)
-;if(!N)throw K(o.replace("{}",e)),Error('Unknown language: "'+e+'"')
-;const w=Q(N);let O="",x=r||w;const M={},k=new d.__emitter(d);(()=>{const e=[]
-;for(let n=x;n!==N;n=n.parent)n.scope&&e.unshift(n.scope)
-;e.forEach((e=>k.openNode(e)))})();let S="",A=0,C=0,T=0,R=!1;try{
-for(x.matcher.considerAll();;){
-T++,R?R=!1:x.matcher.considerAll(),x.matcher.lastIndex=C
-;const e=x.matcher.exec(t);if(!e)break;const n=y(t.substring(C,e.index),e)
-;C=e.index+n}return y(t.substr(C)),k.closeAllNodes(),k.finalize(),O=k.toHTML(),{
-language:e,value:O,relevance:A,illegal:!1,_emitter:k,_top:x}}catch(n){
+;return S+=o,o.length}const w=v(e)
+;if(!w)throw K(o.replace("{}",e)),Error('Unknown language: "'+e+'"')
+;const N=Q(w);let k="",O=r||N;const x={},M=new d.__emitter(d);(()=>{const e=[]
+;for(let n=O;n!==w;n=n.parent)n.scope&&e.unshift(n.scope)
+;e.forEach((e=>M.openNode(e)))})();let S="",A=0,C=0,T=0,R=!1;try{
+for(O.matcher.considerAll();;){
+T++,R?R=!1:O.matcher.considerAll(),O.matcher.lastIndex=C
+;const e=O.matcher.exec(t);if(!e)break;const n=y(t.substring(C,e.index),e)
+;C=e.index+n}return y(t.substr(C)),M.closeAllNodes(),M.finalize(),k=M.toHTML(),{
+language:e,value:k,relevance:A,illegal:!1,_emitter:M,_top:O}}catch(n){
if(n.message&&n.message.includes("Illegal"))return{language:e,value:J(t),
illegal:!0,relevance:0,_illegalBy:{message:n.message,index:C,
-context:t.slice(C-100,C+100),mode:n.mode,resultSoFar:O},_emitter:k};if(s)return{
-language:e,value:J(t),illegal:!1,relevance:0,errorRaised:n,_emitter:k,_top:x}
+context:t.slice(C-100,C+100),mode:n.mode,resultSoFar:k},_emitter:M};if(s)return{
+language:e,value:J(t),illegal:!1,relevance:0,errorRaised:n,_emitter:M,_top:O}
;throw n}}function E(e,t){t=t||d.languages||Object.keys(n);const a=(e=>{
const n={value:J(e),illegal:!1,relevance:0,_top:l,_emitter:new d.__emitter(d)}
-;return n._emitter.addText(e),n})(e),i=t.filter(v).filter(x).map((n=>f(n,e,!1)))
+;return n._emitter.addText(e),n})(e),i=t.filter(v).filter(O).map((n=>f(n,e,!1)))
;i.unshift(a);const r=i.sort(((e,n)=>{
if(e.relevance!==n.relevance)return n.relevance-e.relevance
;if(e.language&&n.language){if(v(e.language).supersetOf===n.language)return 1
@@ -254,10 +254,10 @@ if(e.relevance!==n.relevance)return n.relevance-e.relevance
;return c.secondBest=o,c}function y(e){let n=null;const t=(e=>{
let n=e.className+" ";n+=e.parentNode?e.parentNode.className:""
;const t=d.languageDetectRe.exec(n);if(t){const n=v(t[1])
-;return n||(q(o.replace("{}",t[1])),
-q("Falling back to no-highlight mode for this block.",e)),n?t[1]:"no-highlight"}
+;return n||(H(o.replace("{}",t[1])),
+H("Falling back to no-highlight mode for this block.",e)),n?t[1]:"no-highlight"}
return n.split(/\s+/).find((e=>_(e)||v(e)))})(e);if(_(t))return
-;if(M("before:highlightElement",{el:e,language:t
+;if(x("before:highlightElement",{el:e,language:t
}),e.children.length>0&&(d.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),
console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),
console.warn("The element with unescaped HTML:"),
@@ -268,36 +268,36 @@ console.warn(e)),d.throwUnescapedHTML))throw new V("One of your code blocks incl
})(e,t,r.language),e.result={language:r.language,re:r.relevance,
relevance:r.relevance},r.secondBest&&(e.secondBest={
language:r.secondBest.language,relevance:r.secondBest.relevance
-}),M("after:highlightElement",{el:e,result:r,text:a})}let N=!1;function w(){
-"loading"!==document.readyState?document.querySelectorAll(d.cssSelector).forEach(y):N=!0
+}),x("after:highlightElement",{el:e,result:r,text:a})}let w=!1;function N(){
+"loading"!==document.readyState?document.querySelectorAll(d.cssSelector).forEach(y):w=!0
}function v(e){return e=(e||"").toLowerCase(),n[e]||n[i[e]]}
-function O(e,{languageName:n}){"string"==typeof e&&(e=[e]),e.forEach((e=>{
-i[e.toLowerCase()]=n}))}function x(e){const n=v(e)
-;return n&&!n.disableAutodetect}function M(e,n){const t=e;r.forEach((e=>{
+function k(e,{languageName:n}){"string"==typeof e&&(e=[e]),e.forEach((e=>{
+i[e.toLowerCase()]=n}))}function O(e){const n=v(e)
+;return n&&!n.disableAutodetect}function x(e,n){const t=e;r.forEach((e=>{
e[t]&&e[t](n)}))}
"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("DOMContentLoaded",(()=>{
-N&&w()}),!1),Object.assign(e,{highlight:h,highlightAuto:E,highlightAll:w,
+w&&N()}),!1),Object.assign(e,{highlight:h,highlightAuto:E,highlightAll:N,
highlightElement:y,
-highlightBlock:e=>(H("10.7.0","highlightBlock will be removed entirely in v12.0"),
-H("10.7.0","Please use highlightElement now."),y(e)),configure:e=>{d=Y(d,e)},
+highlightBlock:e=>(q("10.7.0","highlightBlock will be removed entirely in v12.0"),
+q("10.7.0","Please use highlightElement now."),y(e)),configure:e=>{d=Y(d,e)},
initHighlighting:()=>{
-w(),H("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")},
+N(),q("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")},
initHighlightingOnLoad:()=>{
-w(),H("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")
+N(),q("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")
},registerLanguage:(t,a)=>{let i=null;try{i=a(e)}catch(e){
if(K("Language definition for '{}' could not be registered.".replace("{}",t)),
!s)throw e;K(e),i=l}
-i.name||(i.name=t),n[t]=i,i.rawDefinition=a.bind(null,e),i.aliases&&O(i.aliases,{
+i.name||(i.name=t),n[t]=i,i.rawDefinition=a.bind(null,e),i.aliases&&k(i.aliases,{
languageName:t})},unregisterLanguage:e=>{delete n[e]
;for(const n of Object.keys(i))i[n]===e&&delete i[n]},
-listLanguages:()=>Object.keys(n),getLanguage:v,registerAliases:O,
-autoDetection:x,inherit:Y,addPlugin:e=>{(e=>{
+listLanguages:()=>Object.keys(n),getLanguage:v,registerAliases:k,
+autoDetection:O,inherit:Y,addPlugin:e=>{(e=>{
e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=n=>{
e["before:highlightBlock"](Object.assign({block:n.el},n))
}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=n=>{
e["after:highlightBlock"](Object.assign({block:n.el},n))})})(e),r.push(e)}
}),e.debugMode=()=>{s=!1},e.safeMode=()=>{s=!0
-},e.versionString="11.4.0",e.regex={concat:m,lookahead:g,either:p,optional:b,
+},e.versionString="11.5.0",e.regex={concat:m,lookahead:g,either:p,optional:b,
anyNumberOfTimes:u};for(const e in T)"object"==typeof T[e]&&t(T[e])
;return Object.assign(e,T),e})({});const te=e=>({IMPORTANT:{scope:"meta",
begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{
@@ -308,7 +308,7 @@ contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{
scope:"number",
begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",
relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/}
-}),ae=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],ie=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],re=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],se=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],oe=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","isolation","justify-content","left","letter-spacing","line-break","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-height","max-width","min-height","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pointer-events","position","quotes","resize","rest","rest-after","rest-before","right","row-gap","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","shape-image-threshold","shape-margin","shape-outside","speak","speak-as","src","tab-size","table-layout","text-align","text-align-all","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index"].reverse(),le=re.concat(se)
+}),ae=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],ie=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],re=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],se=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],oe=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inline-size","isolation","justify-content","left","letter-spacing","line-break","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pointer-events","position","quotes","resize","rest","rest-after","rest-before","right","row-gap","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","speak","speak-as","src","tab-size","table-layout","text-align","text-align-all","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index"].reverse(),le=re.concat(se)
;var ce="\\.([0-9](_*[0-9])*)",de="[0-9a-fA-F](_*[0-9a-fA-F])*",ge={
className:"number",variants:[{
begin:`(\\b([0-9](_*[0-9])*)((${ce})|\\.)?|(${ce}))[eE][+-]?([0-9](_*[0-9])*)[fFdD]?\\b`
@@ -319,7 +319,7 @@ begin:`\\b0[xX]((${de})\\.?|(${de})?\\.(${de}))[pP][+-]?([0-9](_*[0-9])*)[fFdD]?
begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],
relevance:0};function ue(e,n,t){return-1===t?"":e.replace(n,(a=>ue(e,n,t-1)))}
const be="[A-Za-z$_][0-9A-Za-z$_]*",me=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],pe=["true","false","null","undefined","NaN","Infinity"],_e=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],he=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],fe=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Ee=["arguments","this","super","console","window","document","localStorage","module","global"],ye=[].concat(fe,_e,he)
-;function Ne(e){const n=e.regex,t=be,a={begin:/<[A-Za-z0-9\\._:-]+/,
+;function we(e){const n=e.regex,t=be,a={begin:/<[A-Za-z0-9\\._:-]+/,
end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,n)=>{
const t=e[0].length+e.index,a=e.input[t]
;if("<"===a||","===a)return void n.ignoreMatch();let i
@@ -359,14 +359,14 @@ className:"title.class",keywords:{_:[..._e,...he]}},E={variants:[{
match:[/function/,/\s+/,t,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],
className:{1:"keyword",3:"title.function"},label:"func.def",contains:[_],
illegal:/%/},y={
-match:n.concat(/\b/,(N=[...fe,"super"],n.concat("(?!",N.join("|"),")")),t,n.lookahead(/\(/)),
-className:"title.function",relevance:0};var N;const w={
+match:n.concat(/\b/,(w=[...fe,"super"],n.concat("(?!",w.join("|"),")")),t,n.lookahead(/\(/)),
+className:"title.function",relevance:0};var w;const N={
begin:n.concat(/\./,n.lookahead(n.concat(t,/(?![0-9A-Za-z$_(])/))),end:t,
excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},v={
match:[/get|set/,/\s+/,t,/(?=\()/],className:{1:"keyword",3:"title.function"},
contains:[{begin:/\(\)/},_]
-},O="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",x={
-match:[/const|var|let/,/\s+/,t,/\s*/,/=\s*/,/(async\s*)?/,n.lookahead(O)],
+},k="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",O={
+match:[/const|var|let/,/\s+/,t,/\s*/,/=\s*/,/(async\s*)?/,n.lookahead(k)],
keywords:"async",className:{1:"keyword",3:"title.function"},contains:[_]}
;return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:i,exports:{
PARAMS_CONTAINS:p,CLASS_REFERENCE:f},illegal:/#(?![$_A-z])/,
@@ -374,10 +374,10 @@ contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),{
label:"use_strict",className:"meta",relevance:10,
begin:/^\s*['"]use (strict|asm)['"]/
},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,c,d,g,u,o,f,{className:"attr",
-begin:t+n.lookahead(":"),relevance:0},x,{
+begin:t+n.lookahead(":"),relevance:0},O,{
begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",
keywords:"return throw case",relevance:0,contains:[u,e.REGEXP_MODE,{
-className:"function",begin:O,returnBegin:!0,end:"\\s*=>",contains:[{
+className:"function",begin:k,returnBegin:!0,end:"\\s*=>",contains:[{
className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{
className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,
excludeEnd:!0,keywords:i,contains:p}]}]},{begin:/,/,relevance:0},{match:/\s+/,
@@ -388,11 +388,11 @@ begin:a.begin,end:a.end,skip:!0,contains:["self"]}]}]},E,{
beginKeywords:"while if switch catch for"},{
begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",
returnBegin:!0,label:"func.def",contains:[_,e.inherit(e.TITLE_MODE,{begin:t,
-className:"title.function"})]},{match:/\.\.\./,relevance:0},w,{match:"\\$"+t,
+className:"title.function"})]},{match:/\.\.\./,relevance:0},N,{match:"\\$"+t,
relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},
contains:[_]},y,{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,
className:"variable.constant"},h,v,{match:/\$[(.]/}]}}
-const we=e=>m(/\b/,e,/\w$/.test(e)?/\b/:/\B/),ve=["Protocol","Type"].map(we),Oe=["init","self"].map(we),xe=["Any","Self"],Me=["actor","associatedtype","async","await",/as\?/,/as!/,"as","break","case","catch","class","continue","convenience","default","defer","deinit","didSet","do","dynamic","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","isolated","nonisolated","lazy","let","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],ke=["false","nil","true"],Se=["assignment","associativity","higherThan","left","lowerThan","none","right"],Ae=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warn_unqualified_access","#warning"],Ce=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],Te=p(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),Re=p(Te,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),De=m(Te,Re,"*"),Ie=p(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),Le=p(Ie,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),Be=m(Ie,Le,"*"),$e=m(/[A-Z]/,Le,"*"),Fe=["autoclosure",m(/convention\(/,p("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",m(/objc\(/,Be,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","testable","UIApplicationMain","unknown","usableFromInline"],ze=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"]
+const Ne=e=>m(/\b/,e,/\w$/.test(e)?/\b/:/\B/),ve=["Protocol","Type"].map(Ne),ke=["init","self"].map(Ne),Oe=["Any","Self"],xe=["actor","associatedtype","async","await",/as\?/,/as!/,"as","break","case","catch","class","continue","convenience","default","defer","deinit","didSet","do","dynamic","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","isolated","nonisolated","lazy","let","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],Me=["false","nil","true"],Se=["assignment","associativity","higherThan","left","lowerThan","none","right"],Ae=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warn_unqualified_access","#warning"],Ce=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],Te=p(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),Re=p(Te,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),De=m(Te,Re,"*"),Ie=p(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),Le=p(Ie,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),Be=m(Ie,Le,"*"),$e=m(/[A-Z]/,Le,"*"),ze=["autoclosure",m(/convention\(/,p("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",m(/objc\(/,Be,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","testable","UIApplicationMain","unknown","usableFromInline"],Fe=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"]
;var Ue=Object.freeze({__proto__:null,grmr_bash:e=>{const n=e.regex,t={},a={
begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]}
;Object.assign(t,{className:"variable",variants:[{
@@ -405,7 +405,7 @@ end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,t]
},l=e.SHEBANG({binary:"(fish|bash|zsh|sh|csh|ksh|tcsh|dash|scsh)",relevance:10
}),c={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,
contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{
-name:"Bash",aliases:["sh"],keywords:{$pattern:/\b[a-z._-]+\b/,
+name:"Bash",aliases:["sh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,
keyword:["if","then","else","elif","fi","for","while","in","do","done","case","esac","function"],
literal:["true","false"],
built_in:["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset","alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","type","typeset","ulimit","unalias","set","shopt","autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp","chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"]
@@ -589,32 +589,31 @@ name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,
contains:[a,{className:"section",begin:/\[+/,end:/\]+/},{
begin:n.concat(l,"(\\s*\\.\\s*",l,")*",n.lookahead(/\s*=\s*[^#\s]/)),
className:"attr",starts:{end:/$/,contains:[a,o,r,i,s,t]}}]}},grmr_java:e=>{
-e.regex
-;const n="[\xc0-\u02b8a-zA-Z_$][\xc0-\u02b8a-zA-Z_$0-9]*",t=n+ue("(?:<"+n+"~~~(?:\\s*,\\s*"+n+"~~~)*>)?",/~~~/g,2),a={
+const n=e.regex,t="[\xc0-\u02b8a-zA-Z_$][\xc0-\u02b8a-zA-Z_$0-9]*",a=t+ue("(?:<"+t+"~~~(?:\\s*,\\s*"+t+"~~~)*>)?",/~~~/g,2),i={
keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed"],
literal:["false","true","null"],
type:["char","boolean","long","float","int","byte","short","double"],
-built_in:["super","this"]},i={className:"meta",begin:"@"+n,contains:[{
-begin:/\(/,end:/\)/,contains:["self"]}]},r={className:"params",begin:/\(/,
-end:/\)/,keywords:a,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0}
-;return{name:"Java",aliases:["jsp"],keywords:a,illegal:/<\/|#/,
+built_in:["super","this"]},r={className:"meta",begin:"@"+t,contains:[{
+begin:/\(/,end:/\)/,contains:["self"]}]},s={className:"params",begin:/\(/,
+end:/\)/,keywords:i,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0}
+;return{name:"Java",aliases:["jsp"],keywords:i,illegal:/<\/|#/,
contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,
relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{
begin:/import java\.[a-z]+\./,keywords:"import",relevance:2
},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,
className:"string",contains:[e.BACKSLASH_ESCAPE]
},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{
-match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,n],className:{
+match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,t],className:{
1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{
-begin:[n,/\s+/,n,/\s+/,/=/],className:{1:"type",3:"variable",5:"operator"}},{
-begin:[/record/,/\s+/,n],className:{1:"keyword",3:"title.class"},
-contains:[r,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{
+begin:[n.concat(/(?!else)/,t),/\s+/,t,/\s+/,/=/],className:{1:"type",
+3:"variable",5:"operator"}},{begin:[/record/,/\s+/,t],className:{1:"keyword",
+3:"title.class"},contains:[s,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{
beginKeywords:"new throw return else",relevance:0},{
-begin:["(?:"+t+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{
-2:"title.function"},keywords:a,contains:[{className:"params",begin:/\(/,
-end:/\)/,keywords:a,relevance:0,
-contains:[i,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,ge,e.C_BLOCK_COMMENT_MODE]
-},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},ge,i]}},grmr_javascript:Ne,
+begin:["(?:"+a+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{
+2:"title.function"},keywords:i,contains:[{className:"params",begin:/\(/,
+end:/\)/,keywords:i,relevance:0,
+contains:[r,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,ge,e.C_BLOCK_COMMENT_MODE]
+},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},ge,r]}},grmr_javascript:we,
grmr_json:e=>({name:"JSON",contains:[{className:"attr",
begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},{match:/[{}[\],:]/,
className:"punctuation",relevance:0},e.QUOTE_STRING_MODE,{
@@ -724,12 +723,13 @@ case_insensitive:!0,contains:[{className:"meta",begin://,
relevance:10,contains:[i,o,s,r,{begin:/\[/,end:/\]/,contains:[{className:"meta",
begin://,contains:[i,r,o,s]}]}]},e.COMMENT(//,{
relevance:10}),{begin://,relevance:10},a,{
-className:"meta",begin:/<\?xml/,end:/\?>/,relevance:10},{className:"tag",
-begin:/