You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nlpcraft.apache.org by ar...@apache.org on 2022/08/20 18:50:03 UTC

[incubator-nlpcraft] 01/04: WIP on refactoring.

This is an automated email from the ASF dual-hosted git repository.

aradzinski pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nlpcraft.git

commit 1752a7236caef9db42dd4b84bfd98e5fed8884bd
Author: Aaron Radzinski <ar...@datalingvo.com>
AuthorDate: Fri Aug 19 11:46:50 2022 -0700

    WIP on refactoring.
---
 javadoc/resources/sh/scripts/XRegExp.js            |  652 --------
 javadoc/resources/sh/scripts/shAutoloader.js       |  114 --
 javadoc/resources/sh/scripts/shBrushAS3.js         |   43 -
 javadoc/resources/sh/scripts/shBrushAppleScript.js |   59 -
 javadoc/resources/sh/scripts/shBrushBash.js        |   43 -
 javadoc/resources/sh/scripts/shBrushCSharp.js      |   49 -
 javadoc/resources/sh/scripts/shBrushColdFusion.js  |   84 -
 javadoc/resources/sh/scripts/shBrushCpp.js         |   81 -
 javadoc/resources/sh/scripts/shBrushCss.js         |   75 -
 javadoc/resources/sh/scripts/shBrushDelphi.js      |   39 -
 javadoc/resources/sh/scripts/shBrushDiff.js        |   25 -
 javadoc/resources/sh/scripts/shBrushErlang.js      |   36 -
 javadoc/resources/sh/scripts/shBrushGroovy.js      |   51 -
 javadoc/resources/sh/scripts/shBrushJScript.js     |   36 -
 javadoc/resources/sh/scripts/shBrushJava.js        |   41 -
 javadoc/resources/sh/scripts/shBrushJavaFX.js      |   42 -
 javadoc/resources/sh/scripts/shBrushPerl.js        |   56 -
 javadoc/resources/sh/scripts/shBrushPhp.js         |   72 -
 javadoc/resources/sh/scripts/shBrushPlain.js       |   17 -
 javadoc/resources/sh/scripts/shBrushPowerShell.js  |   58 -
 javadoc/resources/sh/scripts/shBrushPython.js      |   48 -
 javadoc/resources/sh/scripts/shBrushRuby.js        |   39 -
 javadoc/resources/sh/scripts/shBrushSass.js        |   78 -
 javadoc/resources/sh/scripts/shBrushScala.js       |   35 -
 javadoc/resources/sh/scripts/shBrushSql.js         |   50 -
 javadoc/resources/sh/scripts/shBrushVb.js          |   40 -
 javadoc/resources/sh/scripts/shBrushXml.js         |   53 -
 javadoc/resources/sh/scripts/shCore.js             | 1702 --------------------
 javadoc/resources/sh/scripts/shLegacy.js           |  141 --
 javadoc/resources/sh/styles/shCore.css             |  210 ---
 javadoc/resources/sh/styles/shCoreDefault.css      |  312 ----
 javadoc/resources/sh/styles/shCoreDjango.css       |  315 ----
 javadoc/resources/sh/styles/shCoreEclipse.css      |  323 ----
 javadoc/resources/sh/styles/shCoreEmacs.css        |  308 ----
 javadoc/resources/sh/styles/shCoreFadeToGrey.css   |  312 ----
 javadoc/resources/sh/styles/shCoreMDUltra.css      |  308 ----
 javadoc/resources/sh/styles/shCoreMidnight.css     |  308 ----
 javadoc/resources/sh/styles/shCoreNLPCraft.css     |  312 ----
 javadoc/resources/sh/styles/shCoreRDark.css        |  308 ----
 javadoc/resources/sh/styles/shThemeDefault.css     |  101 --
 javadoc/resources/sh/styles/shThemeDjango.css      |  104 --
 javadoc/resources/sh/styles/shThemeEclipse.css     |  112 --
 javadoc/resources/sh/styles/shThemeEmacs.css       |   97 --
 javadoc/resources/sh/styles/shThemeFadeToGrey.css  |  101 --
 javadoc/resources/sh/styles/shThemeMDUltra.css     |   97 --
 javadoc/resources/sh/styles/shThemeMidnight.css    |   97 --
 javadoc/resources/sh/styles/shThemeNLPCraft.css    |  101 --
 javadoc/resources/sh/styles/shThemeRDark.css       |   97 --
 javadoc/stylesheet.css                             | 1011 ------------
 .../examples/lightswitch/LightSwitchFrModel.scala  |    4 +-
 .../entity/parser/NCFrSemanticEntityParser.scala   |    3 +-
 .../examples/lightswitch/LightSwitchRuModel.scala  |    6 +-
 .../entity/parser/NCRuSemanticEntityParser.scala   |    3 +-
 .../lightswitch/LightSwitchScalaModel.scala        |    6 +-
 .../components/PizzeriaModelPipeline.scala         |    5 +-
 .../apache/nlpcraft/examples/time/TimeModel.scala  |    2 +-
 nlpcraft/pom.xml                                   |  110 --
 .../org/apache/nlpcraft/NCPipelineBuilder.scala    |    5 +-
 .../NCEnBracketsTokenEnricher.scala                |    2 +-
 .../NCEnDictionaryTokenEnricher.scala              |    2 +-
 .../NCEnQuotesTokenEnricher.scala                  |    2 +-
 .../NCEnStopWordsTokenEnricher.scala               |    7 +-
 .../NCEnSwearWordsTokenEnricher.scala              |    2 +-
 .../NCOpenNLPLemmaPosTokenEnricher.scala           |    2 +-
 .../tools/NCEnStopWordGenerator.scala              |    2 +-
 .../parser => parsers}/NCNLPEntityParser.scala     |    4 +-
 .../parser => parsers}/NCOpenNLPEntityParser.scala |    3 +-
 .../parser => parsers}/NCOpenNLPTokenParser.scala  |    2 +-
 .../semantic => parsers}/NCSemanticElement.scala   |   16 +-
 .../NCSemanticEntityParser.scala                   |    8 +-
 .../semantic => parsers}/NCSemanticStemmer.scala   |   16 +-
 .../impl/NCSemanticSourceReader.scala              |   15 +-
 .../impl/NCSemanticSynonym.scala                   |    4 +-
 .../impl/NCSemanticSynonymsProcessor.scala         |   12 +-
 .../conversation/NCConversationManagerSpec.scala   |    2 +-
 .../internal/conversation/NCConversationSpec.scala |    8 +-
 .../conversation/NCConversationTimeoutSpec.scala   |    8 +-
 .../internal/impl/NCModelCallbacksSpec.scala       |    4 +-
 .../nlpcraft/internal/impl/NCModelClientSpec.scala |    4 +-
 .../internal/impl/NCModelClientSpec2.scala         |    4 +-
 .../internal/impl/NCModelClientSpec3.scala         |    4 +-
 .../internal/impl/NCModelPingPongSpec.scala        |    4 +-
 .../internal/impl/NCPipelineManagerSpec.scala      |    4 +-
 .../impl/scan/NCModelIntentsInvalidArgsSpec.scala  |    1 -
 .../scan/NCModelIntentsInvalidIntentsSpec.scala    |    1 -
 .../impl/scan/NCModelIntentsNestedSpec.scala       |    1 -
 .../internal/impl/scan/NCTestModelScala.scala      |    5 +-
 .../intent/compiler/NCIDLCompilerSpec.scala        |    1 -
 .../intent/compiler/functions/NCIDLFunctions.scala |    1 -
 .../compiler/functions/NCIDLFunctionsModel.scala   |    1 -
 .../apache/nlpcraft/nlp/NCEntityEnricherSpec.scala |    4 +-
 .../apache/nlpcraft/nlp/NCEntityMapperSpec.scala   |    4 +-
 .../nlpcraft/nlp/NCEntityValidatorSpec.scala       |    4 +-
 .../apache/nlpcraft/nlp/NCTokenEnricherSpec.scala  |    4 +-
 .../apache/nlpcraft/nlp/NCTokenValidatorSpec.scala |    9 +-
 .../apache/nlpcraft/nlp/NCVariantFilterSpec.scala  |   11 +-
 .../NCBracketsTokenEnricherSpec.scala              |    6 +-
 .../NCDictionaryTokenEnricherSpec.scala            |    5 +-
 .../NCQuotesTokenEnricherSpec.scala                |    5 +-
 .../NCStopWordsEnricherSpec.scala                  |    5 +-
 .../NCSwearWordsTokenEnricherSpec.scala            |    5 +-
 .../impl/NCStopWordsImplSpec.scala                 |    4 +-
 .../parser => parsers}/NCNLPEntityParserSpec.scala |    5 +-
 .../NCOpenNLPEntityParserSpec.scala                |    5 +-
 .../NCOpenNLPTokenParserSpec.scala                 |    4 +-
 .../NCSemanticEntityParserJsonSpec.scala           |    6 +-
 .../NCSemanticEntityParserLemmaSpec.scala          |    8 +-
 .../NCSemanticEntityParserSpec.scala               |    7 +-
 .../NCSemanticEntityParserYamlSpec.scala           |    5 +-
 .../NCSemanticTestElement.scala                    |    4 +-
 .../apache/nlpcraft/nlp/util/NCTestConfig.scala    |    5 +-
 .../apache/nlpcraft/nlp/util/NCTestPipeline.scala  |    2 +-
 .../org/apache/nlpcraft/nlp/util/NCTestUtils.scala |   11 +-
 113 files changed, 149 insertions(+), 9068 deletions(-)

diff --git a/javadoc/resources/sh/scripts/XRegExp.js b/javadoc/resources/sh/scripts/XRegExp.js
deleted file mode 100755
index b2b706d1..00000000
--- a/javadoc/resources/sh/scripts/XRegExp.js
+++ /dev/null
@@ -1,652 +0,0 @@
-// XRegExp 1.5.0
-// (c) 2007-2010 Steven Levithan
-// MIT License
-// <http://xregexp.com>
-// Provides an augmented, extensible, cross-browser implementation of regular expressions,
-// including support for additional syntax, flags, and methods
-
-var XRegExp;
-
-if (XRegExp) {
-    // Avoid running twice, since that would break references to native globals
-    throw Error("can't load XRegExp twice in the same frame");
-}
-
-// Run within an anonymous function to protect variables and avoid new globals
-(function () {
-
-    //---------------------------------
-    //  Constructor
-    //---------------------------------
-
-    // Accepts a pattern and flags; returns a new, extended `RegExp` object. Differs from a native
-    // regular expression in that additional syntax and flags are supported and cross-browser
-    // syntax inconsistencies are ameliorated
-    XRegExp = function (pattern, flags) {
-        var output = [],
-            currScope = XRegExp.OUTSIDE_CLASS,
-            pos = 0,
-            context, tokenResult, match, chr, regex;
-
-        if (XRegExp.isRegExp(pattern)) {
-            if (flags !== undefined)
-                throw TypeError("can't supply flags when constructing one RegExp from another");
-            return clone(pattern);
-        }
-        // Tokens become part of the regex construction process, so protect against infinite
-        // recursion when an XRegExp is constructed within a token handler or trigger
-        if (isInsideConstructor)
-            throw Error("can't call the XRegExp constructor within token definition functions");
-
-        flags = flags || "";
-        context = { // `this` object for custom tokens
-            hasNamedCapture: false,
-            captureNames: [],
-            hasFlag: function (flag) {return flags.indexOf(flag) > -1;},
-            setFlag: function (flag) {flags += flag;}
-        };
-
-        while (pos < pattern.length) {
-            // Check for custom tokens at the current position
-            tokenResult = runTokens(pattern, pos, currScope, context);
-
-            if (tokenResult) {
-                output.push(tokenResult.output);
-                pos += (tokenResult.match[0].length || 1);
-            } else {
-                // Check for native multicharacter metasequences (excluding character classes) at
-                // the current position
-                if (match = real.exec.call(nativeTokens[currScope], pattern.slice(pos))) {
-                    output.push(match[0]);
-                    pos += match[0].length;
-                } else {
-                    chr = pattern.charAt(pos);
-                    if (chr === "[")
-                        currScope = XRegExp.INSIDE_CLASS;
-                    else if (chr === "]")
-                        currScope = XRegExp.OUTSIDE_CLASS;
-                    // Advance position one character
-                    output.push(chr);
-                    pos++;
-                }
-            }
-        }
-
-        regex = RegExp(output.join(""), real.replace.call(flags, flagClip, ""));
-        regex._xregexp = {
-            source: pattern,
-            captureNames: context.hasNamedCapture ? context.captureNames : null
-        };
-        return regex;
-    };
-
-
-    //---------------------------------
-    //  Public properties
-    //---------------------------------
-
-    XRegExp.version = "1.5.0";
-
-    // Token scope bitflags
-    XRegExp.INSIDE_CLASS = 1;
-    XRegExp.OUTSIDE_CLASS = 2;
-
-
-    //---------------------------------
-    //  Private variables
-    //---------------------------------
-
-    var replacementToken = /\$(?:(\d\d?|[$&`'])|{([$\w]+)})/g,
-        flagClip = /[^gimy]+|([\s\S])(?=[\s\S]*\1)/g, // Nonnative and duplicate flags
-        quantifier = /^(?:[?*+]|{\d+(?:,\d*)?})\??/,
-        isInsideConstructor = false,
-        tokens = [],
-        // Copy native globals for reference ("native" is an ES3 reserved keyword)
-        real = {
-            exec: RegExp.prototype.exec,
-            test: RegExp.prototype.test,
-            match: String.prototype.match,
-            replace: String.prototype.replace,
-            split: String.prototype.split
-        },
-        compliantExecNpcg = real.exec.call(/()??/, "")[1] === undefined, // check `exec` handling of nonparticipating capturing groups
-        compliantLastIndexIncrement = function () {
-            var x = /^/g;
-            real.test.call(x, "");
-            return !x.lastIndex;
-        }(),
-        compliantLastIndexReset = function () {
-            var x = /x/g;
-            real.replace.call("x", x, "");
-            return !x.lastIndex;
-        }(),
-        hasNativeY = RegExp.prototype.sticky !== undefined,
-        nativeTokens = {};
-
-    // `nativeTokens` match native multicharacter metasequences only (including deprecated octals,
-    // excluding character classes)
-    nativeTokens[XRegExp.INSIDE_CLASS] = /^(?:\\(?:[0-3][0-7]{0,2}|[4-7][0-7]?|x[\dA-Fa-f]{2}|u[\dA-Fa-f]{4}|c[A-Za-z]|[\s\S]))/;
-    nativeTokens[XRegExp.OUTSIDE_CLASS] = /^(?:\\(?:0(?:[0-3][0-7]{0,2}|[4-7][0-7]?)?|[1-9]\d*|x[\dA-Fa-f]{2}|u[\dA-Fa-f]{4}|c[A-Za-z]|[\s\S])|\(\?[:=!]|[?*+]\?|{\d+(?:,\d*)?}\??)/;
-
-
-    //---------------------------------
-    //  Public methods
-    //---------------------------------
-
-    // Lets you extend or change XRegExp syntax and create custom flags. This is used internally by
-    // the XRegExp library and can be used to create XRegExp plugins. This function is intended for
-    // users with advanced knowledge of JavaScript's regular expression syntax and behavior. It can
-    // be disabled by `XRegExp.freezeTokens`
-    XRegExp.addToken = function (regex, handler, scope, trigger) {
-        tokens.push({
-            pattern: clone(regex, "g" + (hasNativeY ? "y" : "")),
-            handler: handler,
-            scope: scope || XRegExp.OUTSIDE_CLASS,
-            trigger: trigger || null
-        });
-    };
-
-    // Accepts a pattern and flags; returns an extended `RegExp` object. If the pattern and flag
-    // combination has previously been cached, the cached copy is returned; otherwise the newly
-    // created regex is cached
-    XRegExp.cache = function (pattern, flags) {
-        var key = pattern + "/" + (flags || "");
-        return XRegExp.cache[key] || (XRegExp.cache[key] = XRegExp(pattern, flags));
-    };
-
-    // Accepts a `RegExp` instance; returns a copy with the `/g` flag set. The copy has a fresh
-    // `lastIndex` (set to zero). If you want to copy a regex without forcing the `global`
-    // property, use `XRegExp(regex)`. Do not use `RegExp(regex)` because it will not preserve
-    // special properties required for named capture
-    XRegExp.copyAsGlobal = function (regex) {
-        return clone(regex, "g");
-    };
-
-    // Accepts a string; returns the string with regex metacharacters escaped. The returned string
-    // can safely be used at any point within a regex to match the provided literal string. Escaped
-    // characters are [ ] { } ( ) * + ? - . , \ ^ $ | # and whitespace
-    XRegExp.escape = function (str) {
-        return str.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
-    };
-
-    // Accepts a string to search, regex to search with, position to start the search within the
-    // string (default: 0), and an optional Boolean indicating whether matches must start at-or-
-    // after the position or at the specified position only. This function ignores the `lastIndex`
-    // property of the provided regex
-    XRegExp.execAt = function (str, regex, pos, anchored) {
-        regex = clone(regex, "g" + ((anchored && hasNativeY) ? "y" : ""));
-        regex.lastIndex = pos = pos || 0;
-        var match = regex.exec(str);
-        if (anchored)
-            return (match && match.index === pos) ? match : null;
-        else
-            return match;
-    };
-
-    // Breaks the unrestorable link to XRegExp's private list of tokens, thereby preventing
-    // syntax and flag changes. Should be run after XRegExp and any plugins are loaded
-    XRegExp.freezeTokens = function () {
-        XRegExp.addToken = function () {
-            throw Error("can't run addToken after freezeTokens");
-        };
-    };
-
-    // Accepts any value; returns a Boolean indicating whether the argument is a `RegExp` object.
-    // Note that this is also `true` for regex literals and regexes created by the `XRegExp`
-    // constructor. This works correctly for variables created in another frame, when `instanceof`
-    // and `constructor` checks would fail to work as intended
-    XRegExp.isRegExp = function (o) {
-        return Object.prototype.toString.call(o) === "[object RegExp]";
-    };
-
-    // Executes `callback` once per match within `str`. Provides a simpler and cleaner way to
-    // iterate over regex matches compared to the traditional approaches of subverting
-    // `String.prototype.replace` or repeatedly calling `exec` within a `while` loop
-    XRegExp.iterate = function (str, origRegex, callback, context) {
-        var regex = clone(origRegex, "g"),
-            i = -1, match;
-        while (match = regex.exec(str)) {
-            callback.call(context, match, ++i, str, regex);
-            if (regex.lastIndex === match.index)
-                regex.lastIndex++;
-        }
-        if (origRegex.global)
-            origRegex.lastIndex = 0;
-    };
-
-    // Accepts a string and an array of regexes; returns the result of using each successive regex
-    // to search within the matches of the previous regex. The array of regexes can also contain
-    // objects with `regex` and `backref` properties, in which case the named or numbered back-
-    // references specified are passed forward to the next regex or returned. E.g.:
-    // var xregexpImgFileNames = XRegExp.matchChain(html, [
-    //     {regex: /<img\b([^>]+)>/i, backref: 1}, // <img> tag attributes
-    //     {regex: XRegExp('(?ix) \\s src=" (?<src> [^"]+ )'), backref: "src"}, // src attribute values
-    //     {regex: XRegExp("^http://xregexp\\.com(/[^#?]+)", "i"), backref: 1}, // xregexp.com paths
-    //     /[^\/]+$/ // filenames (strip directory paths)
-    // ]);
-    XRegExp.matchChain = function (str, chain) {
-        return function recurseChain (values, level) {
-            var item = chain[level].regex ? chain[level] : {regex: chain[level]},
-                regex = clone(item.regex, "g"),
-                matches = [], i;
-            for (i = 0; i < values.length; i++) {
-                XRegExp.iterate(values[i], regex, function (match) {
-                    matches.push(item.backref ? (match[item.backref] || "") : match[0]);
-                });
-            }
-            return ((level === chain.length - 1) || !matches.length) ?
-                matches : recurseChain(matches, level + 1);
-        }([str], 0);
-    };
-
-
-    //---------------------------------
-    //  New RegExp prototype methods
-    //---------------------------------
-
-    // Accepts a context object and arguments array; returns the result of calling `exec` with the
-    // first value in the arguments array. the context is ignored but is accepted for congruity
-    // with `Function.prototype.apply`
-    RegExp.prototype.apply = function (context, args) {
-        return this.exec(args[0]);
-    };
-
-    // Accepts a context object and string; returns the result of calling `exec` with the provided
-    // string. the context is ignored but is accepted for congruity with `Function.prototype.call`
-    RegExp.prototype.call = function (context, str) {
-        return this.exec(str);
-    };
-
-
-    //---------------------------------
-    //  Overriden native methods
-    //---------------------------------
-
-    // Adds named capture support (with backreferences returned as `result.name`), and fixes two
-    // cross-browser issues per ES3:
-    // - Captured values for nonparticipating capturing groups should be returned as `undefined`,
-    //   rather than the empty string.
-    // - `lastIndex` should not be incremented after zero-length matches.
-    RegExp.prototype.exec = function (str) {
-        var match = real.exec.apply(this, arguments),
-            name, r2;
-        if (match) {
-            // Fix browsers whose `exec` methods don't consistently return `undefined` for
-            // nonparticipating capturing groups
-            if (!compliantExecNpcg && match.length > 1 && indexOf(match, "") > -1) {
-                r2 = RegExp(this.source, real.replace.call(getNativeFlags(this), "g", ""));
-                // Using `str.slice(match.index)` rather than `match[0]` in case lookahead allowed
-                // matching due to characters outside the match
-                real.replace.call(str.slice(match.index), r2, function () {
-                    for (var i = 1; i < arguments.length - 2; i++) {
-                        if (arguments[i] === undefined)
-                            match[i] = undefined;
-                    }
-                });
-            }
-            // Attach named capture properties
-            if (this._xregexp && this._xregexp.captureNames) {
-                for (var i = 1; i < match.length; i++) {
-                    name = this._xregexp.captureNames[i - 1];
-                    if (name)
-                       match[name] = match[i];
-                }
-            }
-            // Fix browsers that increment `lastIndex` after zero-length matches
-            if (!compliantLastIndexIncrement && this.global && !match[0].length && (this.lastIndex > match.index))
-                this.lastIndex--;
-        }
-        return match;
-    };
-
-    // Don't override `test` if it won't change anything
-    if (!compliantLastIndexIncrement) {
-        // Fix browser bug in native method
-        RegExp.prototype.test = function (str) {
-            // Use the native `exec` to skip some processing overhead, even though the overriden
-            // `exec` would take care of the `lastIndex` fix
-            var match = real.exec.call(this, str);
-            // Fix browsers that increment `lastIndex` after zero-length matches
-            if (match && this.global && !match[0].length && (this.lastIndex > match.index))
-                this.lastIndex--;
-            return !!match;
-        };
-    }
-
-    // Adds named capture support and fixes browser bugs in native method
-    String.prototype.match = function (regex) {
-        if (!XRegExp.isRegExp(regex))
-            regex = RegExp(regex); // Native `RegExp`
-        if (regex.global) {
-            var result = real.match.apply(this, arguments);
-            regex.lastIndex = 0; // Fix IE bug
-            return result;
-        }
-        return regex.exec(this); // Run the altered `exec`
-    };
-
-    // Adds support for `${n}` tokens for named and numbered backreferences in replacement text,
-    // and provides named backreferences to replacement functions as `arguments[0].name`. Also
-    // fixes cross-browser differences in replacement text syntax when performing a replacement
-    // using a nonregex search value, and the value of replacement regexes' `lastIndex` property
-    // during replacement iterations. Note that this doesn't support SpiderMonkey's proprietary
-    // third (`flags`) parameter
-    String.prototype.replace = function (search, replacement) {
-        var isRegex = XRegExp.isRegExp(search),
-            captureNames, result, str;
-
-        // There are many combinations of search/replacement types/values and browser bugs that
-        // preclude passing to native `replace`, so just keep this check relatively simple
-        if (isRegex && typeof replacement.valueOf() === "string" && replacement.indexOf("${") === -1 && compliantLastIndexReset)
-            return real.replace.apply(this, arguments);
-
-        if (!isRegex)
-            search = search + ""; // Type conversion
-        else if (search._xregexp)
-            captureNames = search._xregexp.captureNames; // Array or `null`
-
-        if (typeof replacement === "function") {
-            result = real.replace.call(this, search, function () {
-                if (captureNames) {
-                    // Change the `arguments[0]` string primitive to a String object which can store properties
-                    arguments[0] = new String(arguments[0]);
-                    // Store named backreferences on `arguments[0]`
-                    for (var i = 0; i < captureNames.length; i++) {
-                        if (captureNames[i])
-                            arguments[0][captureNames[i]] = arguments[i + 1];
-                    }
-                }
-                // Update `lastIndex` before calling `replacement`
-                if (isRegex && search.global)
-                    search.lastIndex = arguments[arguments.length - 2] + arguments[0].length;
-                return replacement.apply(null, arguments);
-            });
-        } else {
-            str = this + ""; // Type conversion, so `args[args.length - 1]` will be a string (given nonstring `this`)
-            result = real.replace.call(str, search, function () {
-                var args = arguments; // Keep this function's `arguments` available through closure
-                return real.replace.call(replacement, replacementToken, function ($0, $1, $2) {
-                    // Numbered backreference (without delimiters) or special variable
-                    if ($1) {
-                        switch ($1) {
-                            case "$": return "$";
-                            case "&": return args[0];
-                            case "`": return args[args.length - 1].slice(0, args[args.length - 2]);
-                            case "'": return args[args.length - 1].slice(args[args.length - 2] + args[0].length);
-                            // Numbered backreference
-                            default:
-                                // What does "$10" mean?
-                                // - Backreference 10, if 10 or more capturing groups exist
-                                // - Backreference 1 followed by "0", if 1-9 capturing groups exist
-                                // - Otherwise, it's the string "$10"
-                                // Also note:
-                                // - Backreferences cannot be more than two digits (enforced by `replacementToken`)
-                                // - "$01" is equivalent to "$1" if a capturing group exists, otherwise it's the string "$01"
-                                // - There is no "$0" token ("$&" is the entire match)
-                                var literalNumbers = "";
-                                $1 = +$1; // Type conversion; drop leading zero
-                                if (!$1) // `$1` was "0" or "00"
-                                    return $0;
-                                while ($1 > args.length - 3) {
-                                    literalNumbers = String.prototype.slice.call($1, -1) + literalNumbers;
-                                    $1 = Math.floor($1 / 10); // Drop the last digit
-                                }
-                                return ($1 ? args[$1] || "" : "$") + literalNumbers;
-                        }
-                    // Named backreference or delimited numbered backreference
-                    } else {
-                        // What does "${n}" mean?
-                        // - Backreference to numbered capture n. Two differences from "$n":
-                        //   - n can be more than two digits
-                        //   - Backreference 0 is allowed, and is the entire match
-                        // - Backreference to named capture n, if it exists and is not a number overridden by numbered capture
-                        // - Otherwise, it's the string "${n}"
-                        var n = +$2; // Type conversion; drop leading zeros
-                        if (n <= args.length - 3)
-                            return args[n];
-                        n = captureNames ? indexOf(captureNames, $2) : -1;
-                        return n > -1 ? args[n + 1] : $0;
-                    }
-                });
-            });
-        }
-
-        if (isRegex && search.global)
-            search.lastIndex = 0; // Fix IE bug
-
-        return result;
-    };
-
-    // A consistent cross-browser, ES3 compliant `split`
-    String.prototype.split = function (s /* separator */, limit) {
-        // If separator `s` is not a regex, use the native `split`
-        if (!XRegExp.isRegExp(s))
-            return real.split.apply(this, arguments);
-
-        var str = this + "", // Type conversion
-            output = [],
-            lastLastIndex = 0,
-            match, lastLength;
-
-        // Behavior for `limit`: if it's...
-        // - `undefined`: No limit
-        // - `NaN` or zero: Return an empty array
-        // - A positive number: Use `Math.floor(limit)`
-        // - A negative number: No limit
-        // - Other: Type-convert, then use the above rules
-        if (limit === undefined || +limit < 0) {
-            limit = Infinity;
-        } else {
-            limit = Math.floor(+limit);
-            if (!limit)
-                return [];
-        }
-
-        // This is required if not `s.global`, and it avoids needing to set `s.lastIndex` to zero
-        // and restore it to its original value when we're done using the regex
-        s = XRegExp.copyAsGlobal(s);
-
-        while (match = s.exec(str)) { // Run the altered `exec` (required for `lastIndex` fix, etc.)
-            if (s.lastIndex > lastLastIndex) {
-                output.push(str.slice(lastLastIndex, match.index));
-
-                if (match.length > 1 && match.index < str.length)
-                    Array.prototype.push.apply(output, match.slice(1));
-
-                lastLength = match[0].length;
-                lastLastIndex = s.lastIndex;
-
-                if (output.length >= limit)
-                    break;
-            }
-
-            if (s.lastIndex === match.index)
-                s.lastIndex++;
-        }
-
-        if (lastLastIndex === str.length) {
-            if (!real.test.call(s, "") || lastLength)
-                output.push("");
-        } else {
-            output.push(str.slice(lastLastIndex));
-        }
-
-        return output.length > limit ? output.slice(0, limit) : output;
-    };
-
-
-    //---------------------------------
-    //  Private helper functions
-    //---------------------------------
-
-    // Supporting function for `XRegExp`, `XRegExp.copyAsGlobal`, etc. Returns a copy of a `RegExp`
-    // instance with a fresh `lastIndex` (set to zero), preserving properties required for named
-    // capture. Also allows adding new flags in the process of copying the regex
-    function clone (regex, additionalFlags) {
-        if (!XRegExp.isRegExp(regex))
-            throw TypeError("type RegExp expected");
-        var x = regex._xregexp;
-        regex = XRegExp(regex.source, getNativeFlags(regex) + (additionalFlags || ""));
-        if (x) {
-            regex._xregexp = {
-                source: x.source,
-                captureNames: x.captureNames ? x.captureNames.slice(0) : null
-            };
-        }
-        return regex;
-    };
-
-    function getNativeFlags (regex) {
-        return (regex.global     ? "g" : "") +
-               (regex.ignoreCase ? "i" : "") +
-               (regex.multiline  ? "m" : "") +
-               (regex.extended   ? "x" : "") + // Proposed for ES4; included in AS3
-               (regex.sticky     ? "y" : "");
-    };
-
-    function runTokens (pattern, index, scope, context) {
-        var i = tokens.length,
-            result, match, t;
-        // Protect against constructing XRegExps within token handler and trigger functions
-        isInsideConstructor = true;
-        // Must reset `isInsideConstructor`, even if a `trigger` or `handler` throws
-        try {
-            while (i--) { // Run in reverse order
-                t = tokens[i];
-                if ((scope & t.scope) && (!t.trigger || t.trigger.call(context))) {
-                    t.pattern.lastIndex = index;
-                    match = t.pattern.exec(pattern); // Running the altered `exec` here allows use of named backreferences, etc.
-                    if (match && match.index === index) {
-                        result = {
-                            output: t.handler.call(context, match, scope),
-                            match: match
-                        };
-                        break;
-                    }
-                }
-            }
-        } catch (err) {
-            throw err;
-        } finally {
-            isInsideConstructor = false;
-        }
-        return result;
-    };
-
-    function indexOf (array, item, from) {
-        if (Array.prototype.indexOf) // Use the native array method if available
-            return array.indexOf(item, from);
-        for (var i = from || 0; i < array.length; i++) {
-            if (array[i] === item)
-                return i;
-        }
-        return -1;
-    };
-
-
-    //---------------------------------
-    //  Built-in tokens
-    //---------------------------------
-
-    // Augment XRegExp's regular expression syntax and flags. Note that when adding tokens, the
-    // third (`scope`) argument defaults to `XRegExp.OUTSIDE_CLASS`
-
-    // Comment pattern: (?# )
-    XRegExp.addToken(
-        /\(\?#[^)]*\)/,
-        function (match) {
-            // Keep tokens separated unless the following token is a quantifier
-            return real.test.call(quantifier, match.input.slice(match.index + match[0].length)) ? "" : "(?:)";
-        }
-    );
-
-    // Capturing group (match the opening parenthesis only).
-    // Required for support of named capturing groups
-    XRegExp.addToken(
-        /\((?!\?)/,
-        function () {
-            this.captureNames.push(null);
-            return "(";
-        }
-    );
-
-    // Named capturing group (match the opening delimiter only): (?<name>
-    XRegExp.addToken(
-        /\(\?<([$\w]+)>/,
-        function (match) {
-            this.captureNames.push(match[1]);
-            this.hasNamedCapture = true;
-            return "(";
-        }
-    );
-
-    // Named backreference: \k<name>
-    XRegExp.addToken(
-        /\\k<([\w$]+)>/,
-        function (match) {
-            var index = indexOf(this.captureNames, match[1]);
-            // Keep backreferences separate from subsequent literal numbers. Preserve back-
-            // references to named groups that are undefined at this point as literal strings
-            return index > -1 ?
-                "\\" + (index + 1) + (isNaN(match.input.charAt(match.index + match[0].length)) ? "" : "(?:)") :
-                match[0];
-        }
-    );
-
-    // Empty character class: [] or [^]
-    XRegExp.addToken(
-        /\[\^?]/,
-        function (match) {
-            // For cross-browser compatibility with ES3, convert [] to \b\B and [^] to [\s\S].
-            // (?!) should work like \b\B, but is unreliable in Firefox
-            return match[0] === "[]" ? "\\b\\B" : "[\\s\\S]";
-        }
-    );
-
-    // Mode modifier at the start of the pattern only, with any combination of flags imsx: (?imsx)
-    // Does not support x(?i), (?-i), (?i-m), (?i: ), (?i)(?m), etc.
-    XRegExp.addToken(
-        /^\(\?([imsx]+)\)/,
-        function (match) {
-            this.setFlag(match[1]);
-            return "";
-        }
-    );
-
-    // Whitespace and comments, in free-spacing (aka extended) mode only
-    XRegExp.addToken(
-        /(?:\s+|#.*)+/,
-        function (match) {
-            // Keep tokens separated unless the following token is a quantifier
-            return real.test.call(quantifier, match.input.slice(match.index + match[0].length)) ? "" : "(?:)";
-        },
-        XRegExp.OUTSIDE_CLASS,
-        function () {return this.hasFlag("x");}
-    );
-
-    // Dot, in dotall (aka singleline) mode only
-    XRegExp.addToken(
-        /\./,
-        function () {return "[\\s\\S]";},
-        XRegExp.OUTSIDE_CLASS,
-        function () {return this.hasFlag("s");}
-    );
-
-
-    //---------------------------------
-    //  Backward compatibility
-    //---------------------------------
-
-    // Uncomment the following block for compatibility with XRegExp 1.0-1.2:
-    /*
-    XRegExp.matchWithinChain = XRegExp.matchChain;
-    RegExp.prototype.addFlags = function (s) {return clone(this, s);};
-    RegExp.prototype.execAll = function (s) {var r = []; XRegExp.iterate(s, this, function (m) {r.push(m);}); return r;};
-    RegExp.prototype.forEachExec = function (s, f, c) {return XRegExp.iterate(s, this, f, c);};
-    RegExp.prototype.validate = function (s) {var r = RegExp("^(?:" + this.source + ")$(?!\\s)", getNativeFlags(this)); if (this.global) this.lastIndex = 0; return s.search(r) === 0;};
-    */
-
-})();
-
-// CommonJS
-typeof(exports) != 'undefined' ? exports.XRegExp = XRegExp : null;
diff --git a/javadoc/resources/sh/scripts/shAutoloader.js b/javadoc/resources/sh/scripts/shAutoloader.js
deleted file mode 100755
index 7465f3bd..00000000
--- a/javadoc/resources/sh/scripts/shAutoloader.js
+++ /dev/null
@@ -1,114 +0,0 @@
-(function() {
-
-var sh = SyntaxHighlighter;
-
-/**
- * Provides functionality to dynamically load only the brushes that a needed to render the current page.
- *
- * There are two syntaxes that autoload understands. For example:
- * 
- * SyntaxHighlighter.autoloader(
- *     [ 'applescript',          'Scripts/shBrushAppleScript.js' ],
- *     [ 'actionscript3', 'as3', 'Scripts/shBrushAS3.js' ]
- * );
- *
- * or a more easily comprehendable one:
- *
- * SyntaxHighlighter.autoloader(
- *     'applescript       Scripts/shBrushAppleScript.js',
- *     'actionscript3 as3 Scripts/shBrushAS3.js'
- * );
- */
-sh.autoloader = function()
-{
-	var list = arguments,
-		elements = sh.findElements(),
-		brushes = {},
-		scripts = {},
-		all = SyntaxHighlighter.all,
-		allCalled = false,
-		allParams = null,
-		i
-		;
-		
-	SyntaxHighlighter.all = function(params)
-	{
-		allParams = params;
-		allCalled = true;
-	};
-	
-	function addBrush(aliases, url)
-	{
-		for (var i = 0; i < aliases.length; i++)
-			brushes[aliases[i]] = url;
-	};
-	
-	function getAliases(item)
-	{
-		return item.pop
-			? item
-			: item.split(/\s+/)
-			;
-	}
-	
-	// create table of aliases and script urls
-	for (i = 0; i < list.length; i++)
-	{
-		var aliases = getAliases(list[i]),
-			url = aliases.pop()
-			;
-			
-		addBrush(aliases, url);
-	}
-	
-	// dynamically add <script /> tags to the document body
-	for (i = 0; i < elements.length; i++)
-	{
-		var url = brushes[elements[i].params.brush];
-		
-		if (!url)
-			continue;
-		
-		scripts[url] = false;
-		loadScript(url);
-	}
-	
-	function loadScript(url)
-	{
-		var script = document.createElement('script'),
-			done = false
-			;
-		
-		script.src = url;
-		script.type = 'text/javascript';
-		script.language = 'javascript';
-		script.onload = script.onreadystatechange = function()
-		{
-			if (!done && (!this.readyState || this.readyState == 'loaded' || this.readyState == 'complete'))
-			{
-				done = true;
-				scripts[url] = true;
-				checkAll();
-				
-				// Handle memory leak in IE
-				script.onload = script.onreadystatechange = null;
-				script.parentNode.removeChild(script);
-			}
-		};
-		
-		// sync way of adding script tags to the page
-		document.body.appendChild(script);
-	};
-	
-	function checkAll()
-	{
-		for(var url in scripts)
-			if (scripts[url] == false)
-				return;
-		
-		if (allCalled)
-			SyntaxHighlighter.highlight(allParams);
-	};
-};
-
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushAS3.js b/javadoc/resources/sh/scripts/shBrushAS3.js
deleted file mode 100755
index 8e92a4bd..00000000
--- a/javadoc/resources/sh/scripts/shBrushAS3.js
+++ /dev/null
@@ -1,43 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		// Created by Peter Atoria @ http://iAtoria.com
-	
-		var inits 	 =  'class interface function package';
-	
-		var keywords =	'-Infinity ...rest Array as AS3 Boolean break case catch const continue Date decodeURI ' + 
-						'decodeURIComponent default delete do dynamic each else encodeURI encodeURIComponent escape ' + 
-						'extends false final finally flash_proxy for get if implements import in include Infinity ' + 
-						'instanceof int internal is isFinite isNaN isXMLName label namespace NaN native new null ' + 
-						'Null Number Object object_proxy override parseFloat parseInt private protected public ' + 
-						'return set static String super switch this throw true try typeof uint undefined unescape ' + 
-						'use void while with'
-						;
-	
-		this.regexList = [
-			{ regex: SyntaxHighlighter.regexLib.singleLineCComments,	css: 'comments' },		// one line comments
-			{ regex: SyntaxHighlighter.regexLib.multiLineCComments,		css: 'comments' },		// multiline comments
-			{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,		css: 'string' },		// double quoted strings
-			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,		css: 'string' },		// single quoted strings
-			{ regex: /\b([\d]+(\.[\d]+)?|0x[a-f0-9]+)\b/gi,				css: 'value' },			// numbers
-			{ regex: new RegExp(this.getKeywords(inits), 'gm'),			css: 'color3' },		// initializations
-			{ regex: new RegExp(this.getKeywords(keywords), 'gm'),		css: 'keyword' },		// keywords
-			{ regex: new RegExp('var', 'gm'),							css: 'variable' },		// variable
-			{ regex: new RegExp('trace', 'gm'),							css: 'color1' }			// trace
-			];
-	
-		this.forHtmlScript(SyntaxHighlighter.regexLib.scriptScriptTags);
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['actionscript3', 'as3'];
-
-	SyntaxHighlighter.brushes.AS3 = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushAppleScript.js b/javadoc/resources/sh/scripts/shBrushAppleScript.js
deleted file mode 100755
index 7785b45c..00000000
--- a/javadoc/resources/sh/scripts/shBrushAppleScript.js
+++ /dev/null
@@ -1,59 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		// AppleScript brush by David Chambers
-		// http://davidchambersdesign.com/
-		var keywords   = 'after before beginning continue copy each end every from return get global in local named of set some that the then times to where whose with without';
-		var ordinals   = 'first second third fourth fifth sixth seventh eighth ninth tenth last front back middle';
-		var specials   = 'activate add alias AppleScript ask attachment boolean class constant delete duplicate empty exists false id integer list make message modal modified new no paragraph pi properties quit real record remove rest result reveal reverse run running save string true word yes';
-
-		this.regexList = [
-
-			{ regex: /(--|#).*$/gm,
-			    css: 'comments' },
-
-			{ regex: /\(\*(?:[\s\S]*?\(\*[\s\S]*?\*\))*[\s\S]*?\*\)/gm, // support nested comments
-			    css: 'comments' },
-
-			{ regex: /"[\s\S]*?"/gm,
-			    css: 'string' },
-
-			{ regex: /(?:,|:|¬|'s\b|\(|\)|\{|\}|«|\b\w*»)/g,
-			    css: 'color1' },
-
-			{ regex: /(-)?(\d)+(\.(\d)?)?(E\+(\d)+)?/g, // numbers
-			    css: 'color1' },
-
-			{ regex: /(?:&(amp;|gt;|lt;)?|=|� |>|<|≥|>=|≤|<=|\*|\+|-|\/|÷|\^)/g,
-			    css: 'color2' },
-
-			{ regex: /\b(?:and|as|div|mod|not|or|return(?!\s&)(ing)?|equals|(is(n't| not)? )?equal( to)?|does(n't| not) equal|(is(n't| not)? )?(greater|less) than( or equal( to)?)?|(comes|does(n't| not) come) (after|before)|is(n't| not)?( in)? (back|front) of|is(n't| not)? behind|is(n't| not)?( (in|contained by))?|does(n't| not) contain|contain(s)?|(start|begin|end)(s)? with|((but|end) )?(consider|ignor)ing|prop(erty)?|(a )?ref(erence)?( to)?|repeat (until|while|with)|((end|exit) )?repeat|((else| [...]
-			    css: 'keyword' },
-
-			{ regex: /\b\d+(st|nd|rd|th)\b/g, // ordinals
-			    css: 'keyword' },
-
-			{ regex: /\b(?:about|above|against|around|at|below|beneath|beside|between|by|(apart|aside) from|(instead|out) of|into|on(to)?|over|since|thr(ough|u)|under)\b/g,
-			    css: 'color3' },
-
-			{ regex: /\b(?:adding folder items to|after receiving|choose( ((remote )?application|color|folder|from list|URL))?|clipboard info|set the clipboard to|(the )?clipboard|entire contents|display(ing| (alert|dialog|mode))?|document( (edited|file|nib name))?|file( (name|type))?|(info )?for|giving up after|(name )?extension|quoted form|return(ed)?|second(?! item)(s)?|list (disks|folder)|text item(s| delimiters)?|(Unicode )?text|(disk )?item(s)?|((current|list) )?view|((container|key) )?wind [...]
-			    css: 'color3' },
-
-			{ regex: new RegExp(this.getKeywords(specials), 'gm'), css: 'color3' },
-			{ regex: new RegExp(this.getKeywords(keywords), 'gm'), css: 'keyword' },
-			{ regex: new RegExp(this.getKeywords(ordinals), 'gm'), css: 'keyword' }
-		];
-	};
-
-	Brush.prototype = new SyntaxHighlighter.Highlighter();
-	Brush.aliases = ['applescript'];
-
-	SyntaxHighlighter.brushes.AppleScript = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushBash.js b/javadoc/resources/sh/scripts/shBrushBash.js
deleted file mode 100755
index 8e11618d..00000000
--- a/javadoc/resources/sh/scripts/shBrushBash.js
+++ /dev/null
@@ -1,43 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		var keywords =	'if fi then elif else for do done until while break continue case function return in eq ne ge le';
-		var commands =  'alias apropos awk basename bash bc bg builtin bzip2 cal cat cd cfdisk chgrp chmod chown chroot' +
-						'cksum clear cmp comm command cp cron crontab csplit cut date dc dd ddrescue declare df ' +
-						'diff diff3 dig dir dircolors dirname dirs du echo egrep eject enable env ethtool eval ' +
-						'exec exit expand export expr false fdformat fdisk fg fgrep file find fmt fold format ' +
-						'free fsck ftp gawk getopts grep groups gzip hash head history hostname id ifconfig ' +
-						'import install join kill less let ln local locate logname logout look lpc lpr lprint ' +
-						'lprintd lprintq lprm ls lsof make man mkdir mkfifo mkisofs mknod more mount mtools ' +
-						'mv netstat nice nl nohup nslookup open op passwd paste pathchk ping popd pr printcap ' +
-						'printenv printf ps pushd pwd quota quotacheck quotactl ram rcp read readonly renice ' +
-						'remsync rm rmdir rsync screen scp sdiff sed select seq set sftp shift shopt shutdown ' +
-						'sleep sort source split ssh strace su sudo sum symlink sync tail tar tee test time ' +
-						'times touch top traceroute trap tr true tsort tty type ulimit umask umount unalias ' +
-						'uname unexpand uniq units unset unshar useradd usermod users uuencode uudecode v vdir ' +
-						'vi watch wc whereis which who whoami Wget xargs yes'
-						;
-
-		this.regexList = [
-			{ regex: /^#!.*$/gm,											css: 'preprocessor bold' },
-			{ regex: /\/[\w-\/]+/gm,										css: 'plain' },
-			{ regex: SyntaxHighlighter.regexLib.singleLinePerlComments,		css: 'comments' },		// one line comments
-			{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,			css: 'string' },		// double quoted strings
-			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,			css: 'string' },		// single quoted strings
-			{ regex: new RegExp(this.getKeywords(keywords), 'gm'),			css: 'keyword' },		// keywords
-			{ regex: new RegExp(this.getKeywords(commands), 'gm'),			css: 'functions' }		// commands
-			];
-	}
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['bash', 'shell'];
-
-	SyntaxHighlighter.brushes.Bash = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushCSharp.js b/javadoc/resources/sh/scripts/shBrushCSharp.js
deleted file mode 100755
index 92eb5bad..00000000
--- a/javadoc/resources/sh/scripts/shBrushCSharp.js
+++ /dev/null
@@ -1,49 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		var keywords =	'abstract as base bool break byte case catch char checked class const ' +
-						'continue decimal default delegate do double else enum event explicit ' +
-						'extern false finally fixed float for foreach get goto if implicit in int ' +
-						'interface internal is lock long namespace new null object operator out ' +
-						'override params private protected public readonly ref return sbyte sealed set ' +
-						'short sizeof stackalloc static string struct switch this throw true try ' +
-						'typeof uint ulong unchecked unsafe ushort using virtual void while';
-
-		function fixComments(match, regexInfo)
-		{
-			var css = (match[0].indexOf("///") == 0)
-				? 'color1'
-				: 'comments'
-				;
-			
-			return [new SyntaxHighlighter.Match(match[0], match.index, css)];
-		}
-
-		this.regexList = [
-			{ regex: SyntaxHighlighter.regexLib.singleLineCComments,	func : fixComments },		// one line comments
-			{ regex: SyntaxHighlighter.regexLib.multiLineCComments,		css: 'comments' },			// multiline comments
-			{ regex: /@"(?:[^"]|"")*"/g,								css: 'string' },			// @-quoted strings
-			{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,		css: 'string' },			// strings
-			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,		css: 'string' },			// strings
-			{ regex: /^\s*#.*/gm,										css: 'preprocessor' },		// preprocessor tags like #region and #endregion
-			{ regex: new RegExp(this.getKeywords(keywords), 'gm'),		css: 'keyword' },			// c# keyword
-			{ regex: /\bpartial(?=\s+(?:class|interface|struct)\b)/g,	css: 'keyword' },			// contextual keyword: 'partial'
-			{ regex: /\byield(?=\s+(?:return|break)\b)/g,				css: 'keyword' }			// contextual keyword: 'yield'
-			];
-		
-		this.forHtmlScript(SyntaxHighlighter.regexLib.aspScriptTags);
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['c#', 'c-sharp', 'csharp'];
-
-	SyntaxHighlighter.brushes.CSharp = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
-
diff --git a/javadoc/resources/sh/scripts/shBrushColdFusion.js b/javadoc/resources/sh/scripts/shBrushColdFusion.js
deleted file mode 100755
index 5b939014..00000000
--- a/javadoc/resources/sh/scripts/shBrushColdFusion.js
+++ /dev/null
@@ -1,84 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		// Contributed by Jen
-		// http://www.jensbits.com/2009/05/14/coldfusion-brush-for-syntaxhighlighter-plus
-	
-		var funcs	=	'Abs ACos AddSOAPRequestHeader AddSOAPResponseHeader AjaxLink AjaxOnLoad ArrayAppend ArrayAvg ArrayClear ArrayDeleteAt ' + 
-						'ArrayInsertAt ArrayIsDefined ArrayIsEmpty ArrayLen ArrayMax ArrayMin ArraySet ArraySort ArraySum ArraySwap ArrayToList ' + 
-						'Asc ASin Atn BinaryDecode BinaryEncode BitAnd BitMaskClear BitMaskRead BitMaskSet BitNot BitOr BitSHLN BitSHRN BitXor ' + 
-						'Ceiling CharsetDecode CharsetEncode Chr CJustify Compare CompareNoCase Cos CreateDate CreateDateTime CreateObject ' + 
-						'CreateODBCDate CreateODBCDateTime CreateODBCTime CreateTime CreateTimeSpan CreateUUID DateAdd DateCompare DateConvert ' + 
-						'DateDiff DateFormat DatePart Day DayOfWeek DayOfWeekAsString DayOfYear DaysInMonth DaysInYear DE DecimalFormat DecrementValue ' + 
-						'Decrypt DecryptBinary DeleteClientVariable DeserializeJSON DirectoryExists DollarFormat DotNetToCFType Duplicate Encrypt ' + 
-						'EncryptBinary Evaluate Exp ExpandPath FileClose FileCopy FileDelete FileExists FileIsEOF FileMove FileOpen FileRead ' + 
-						'FileReadBinary FileReadLine FileSetAccessMode FileSetAttribute FileSetLastModified FileWrite Find FindNoCase FindOneOf ' + 
-						'FirstDayOfMonth Fix FormatBaseN GenerateSecretKey GetAuthUser GetBaseTagData GetBaseTagList GetBaseTemplatePath ' + 
-						'GetClientVariablesList GetComponentMetaData GetContextRoot GetCurrentTemplatePath GetDirectoryFromPath GetEncoding ' + 
-						'GetException GetFileFromPath GetFileInfo GetFunctionList GetGatewayHelper GetHttpRequestData GetHttpTimeString ' + 
-						'GetK2ServerDocCount GetK2ServerDocCountLimit GetLocale GetLocaleDisplayName GetLocalHostIP GetMetaData GetMetricData ' + 
-						'GetPageContext GetPrinterInfo GetProfileSections GetProfileString GetReadableImageFormats GetSOAPRequest GetSOAPRequestHeader ' + 
-						'GetSOAPResponse GetSOAPResponseHeader GetTempDirectory GetTempFile GetTemplatePath GetTickCount GetTimeZoneInfo GetToken ' + 
-						'GetUserRoles GetWriteableImageFormats Hash Hour HTMLCodeFormat HTMLEditFormat IIf ImageAddBorder ImageBlur ImageClearRect ' + 
-						'ImageCopy ImageCrop ImageDrawArc ImageDrawBeveledRect ImageDrawCubicCurve ImageDrawLine ImageDrawLines ImageDrawOval ' + 
-						'ImageDrawPoint ImageDrawQuadraticCurve ImageDrawRect ImageDrawRoundRect ImageDrawText ImageFlip ImageGetBlob ImageGetBufferedImage ' + 
-						'ImageGetEXIFTag ImageGetHeight ImageGetIPTCTag ImageGetWidth ImageGrayscale ImageInfo ImageNegative ImageNew ImageOverlay ImagePaste ' + 
-						'ImageRead ImageReadBase64 ImageResize ImageRotate ImageRotateDrawingAxis ImageScaleToFit ImageSetAntialiasing ImageSetBackgroundColor ' + 
-						'ImageSetDrawingColor ImageSetDrawingStroke ImageSetDrawingTransparency ImageSharpen ImageShear ImageShearDrawingAxis ImageTranslate ' + 
-						'ImageTranslateDrawingAxis ImageWrite ImageWriteBase64 ImageXORDrawingMode IncrementValue InputBaseN Insert Int IsArray IsBinary ' + 
-						'IsBoolean IsCustomFunction IsDate IsDDX IsDebugMode IsDefined IsImage IsImageFile IsInstanceOf IsJSON IsLeapYear IsLocalHost ' + 
-						'IsNumeric IsNumericDate IsObject IsPDFFile IsPDFObject IsQuery IsSimpleValue IsSOAPRequest IsStruct IsUserInAnyRole IsUserInRole ' + 
-						'IsUserLoggedIn IsValid IsWDDX IsXML IsXmlAttribute IsXmlDoc IsXmlElem IsXmlNode IsXmlRoot JavaCast JSStringFormat LCase Left Len ' + 
-						'ListAppend ListChangeDelims ListContains ListContainsNoCase ListDeleteAt ListFind ListFindNoCase ListFirst ListGetAt ListInsertAt ' + 
-						'ListLast ListLen ListPrepend ListQualify ListRest ListSetAt ListSort ListToArray ListValueCount ListValueCountNoCase LJustify Log ' + 
-						'Log10 LSCurrencyFormat LSDateFormat LSEuroCurrencyFormat LSIsCurrency LSIsDate LSIsNumeric LSNumberFormat LSParseCurrency LSParseDateTime ' + 
-						'LSParseEuroCurrency LSParseNumber LSTimeFormat LTrim Max Mid Min Minute Month MonthAsString Now NumberFormat ParagraphFormat ParseDateTime ' + 
-						'Pi PrecisionEvaluate PreserveSingleQuotes Quarter QueryAddColumn QueryAddRow QueryConvertForGrid QueryNew QuerySetCell QuotedValueList Rand ' + 
-						'Randomize RandRange REFind REFindNoCase ReleaseComObject REMatch REMatchNoCase RemoveChars RepeatString Replace ReplaceList ReplaceNoCase ' + 
-						'REReplace REReplaceNoCase Reverse Right RJustify Round RTrim Second SendGatewayMessage SerializeJSON SetEncoding SetLocale SetProfileString ' + 
-						'SetVariable Sgn Sin Sleep SpanExcluding SpanIncluding Sqr StripCR StructAppend StructClear StructCopy StructCount StructDelete StructFind ' + 
-						'StructFindKey StructFindValue StructGet StructInsert StructIsEmpty StructKeyArray StructKeyExists StructKeyList StructKeyList StructNew ' + 
-						'StructSort StructUpdate Tan TimeFormat ToBase64 ToBinary ToScript ToString Trim UCase URLDecode URLEncodedFormat URLSessionFormat Val ' + 
-						'ValueList VerifyClient Week Wrap Wrap WriteOutput XmlChildPos XmlElemNew XmlFormat XmlGetNodeType XmlNew XmlParse XmlSearch XmlTransform ' + 
-						'XmlValidate Year YesNoFormat';
-
-		var keywords =	'cfabort cfajaximport cfajaxproxy cfapplet cfapplication cfargument cfassociate cfbreak cfcache cfcalendar ' + 
-						'cfcase cfcatch cfchart cfchartdata cfchartseries cfcol cfcollection cfcomponent cfcontent cfcookie cfdbinfo ' + 
-						'cfdefaultcase cfdirectory cfdiv cfdocument cfdocumentitem cfdocumentsection cfdump cfelse cfelseif cferror ' + 
-						'cfexchangecalendar cfexchangeconnection cfexchangecontact cfexchangefilter cfexchangemail cfexchangetask ' + 
-						'cfexecute cfexit cffeed cffile cfflush cfform cfformgroup cfformitem cfftp cffunction cfgrid cfgridcolumn ' + 
-						'cfgridrow cfgridupdate cfheader cfhtmlhead cfhttp cfhttpparam cfif cfimage cfimport cfinclude cfindex ' + 
-						'cfinput cfinsert cfinterface cfinvoke cfinvokeargument cflayout cflayoutarea cfldap cflocation cflock cflog ' + 
-						'cflogin cfloginuser cflogout cfloop cfmail cfmailparam cfmailpart cfmenu cfmenuitem cfmodule cfNTauthenticate ' + 
-						'cfobject cfobjectcache cfoutput cfparam cfpdf cfpdfform cfpdfformparam cfpdfparam cfpdfsubform cfpod cfpop ' + 
-						'cfpresentation cfpresentationslide cfpresenter cfprint cfprocessingdirective cfprocparam cfprocresult ' + 
-						'cfproperty cfquery cfqueryparam cfregistry cfreport cfreportparam cfrethrow cfreturn cfsavecontent cfschedule ' + 
-						'cfscript cfsearch cfselect cfset cfsetting cfsilent cfslider cfsprydataset cfstoredproc cfswitch cftable ' + 
-						'cftextarea cfthread cfthrow cftimer cftooltip cftrace cftransaction cftree cftreeitem cftry cfupdate cfwddx ' + 
-						'cfwindow cfxml cfzip cfzipparam';
-
-		var operators =	'all and any between cross in join like not null or outer some';
-
-		this.regexList = [
-			{ regex: new RegExp('--(.*)$', 'gm'),						css: 'comments' },  // one line and multiline comments
-			{ regex: SyntaxHighlighter.regexLib.xmlComments,			css: 'comments' },    // single quoted strings
-			{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,		css: 'string' },    // double quoted strings
-			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,		css: 'string' },    // single quoted strings
-			{ regex: new RegExp(this.getKeywords(funcs), 'gmi'),		css: 'functions' }, // functions
-			{ regex: new RegExp(this.getKeywords(operators), 'gmi'),	css: 'color1' },    // operators and such
-			{ regex: new RegExp(this.getKeywords(keywords), 'gmi'),		css: 'keyword' }    // keyword
-			];
-	}
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['coldfusion','cf'];
-	
-	SyntaxHighlighter.brushes.ColdFusion = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushCpp.js b/javadoc/resources/sh/scripts/shBrushCpp.js
deleted file mode 100755
index 2a2ed8f0..00000000
--- a/javadoc/resources/sh/scripts/shBrushCpp.js
+++ /dev/null
@@ -1,81 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		// Copyright 2006 Shin, YoungJin
-	
-		var datatypes =	'ATOM BOOL BOOLEAN BYTE CHAR COLORREF DWORD DWORDLONG DWORD_PTR ' +
-						'DWORD32 DWORD64 FLOAT HACCEL HALF_PTR HANDLE HBITMAP HBRUSH ' +
-						'HCOLORSPACE HCONV HCONVLIST HCURSOR HDC HDDEDATA HDESK HDROP HDWP ' +
-						'HENHMETAFILE HFILE HFONT HGDIOBJ HGLOBAL HHOOK HICON HINSTANCE HKEY ' +
-						'HKL HLOCAL HMENU HMETAFILE HMODULE HMONITOR HPALETTE HPEN HRESULT ' +
-						'HRGN HRSRC HSZ HWINSTA HWND INT INT_PTR INT32 INT64 LANGID LCID LCTYPE ' +
-						'LGRPID LONG LONGLONG LONG_PTR LONG32 LONG64 LPARAM LPBOOL LPBYTE LPCOLORREF ' +
-						'LPCSTR LPCTSTR LPCVOID LPCWSTR LPDWORD LPHANDLE LPINT LPLONG LPSTR LPTSTR ' +
-						'LPVOID LPWORD LPWSTR LRESULT PBOOL PBOOLEAN PBYTE PCHAR PCSTR PCTSTR PCWSTR ' +
-						'PDWORDLONG PDWORD_PTR PDWORD32 PDWORD64 PFLOAT PHALF_PTR PHANDLE PHKEY PINT ' +
-						'PINT_PTR PINT32 PINT64 PLCID PLONG PLONGLONG PLONG_PTR PLONG32 PLONG64 POINTER_32 ' +
-						'POINTER_64 PSHORT PSIZE_T PSSIZE_T PSTR PTBYTE PTCHAR PTSTR PUCHAR PUHALF_PTR ' +
-						'PUINT PUINT_PTR PUINT32 PUINT64 PULONG PULONGLONG PULONG_PTR PULONG32 PULONG64 ' +
-						'PUSHORT PVOID PWCHAR PWORD PWSTR SC_HANDLE SC_LOCK SERVICE_STATUS_HANDLE SHORT ' +
-						'SIZE_T SSIZE_T TBYTE TCHAR UCHAR UHALF_PTR UINT UINT_PTR UINT32 UINT64 ULONG ' +
-						'ULONGLONG ULONG_PTR ULONG32 ULONG64 USHORT USN VOID WCHAR WORD WPARAM WPARAM WPARAM ' +
-						'char bool short int __int32 __int64 __int8 __int16 long float double __wchar_t ' +
-						'clock_t _complex _dev_t _diskfree_t div_t ldiv_t _exception _EXCEPTION_POINTERS ' +
-						'FILE _finddata_t _finddatai64_t _wfinddata_t _wfinddatai64_t __finddata64_t ' +
-						'__wfinddata64_t _FPIEEE_RECORD fpos_t _HEAPINFO _HFILE lconv intptr_t ' +
-						'jmp_buf mbstate_t _off_t _onexit_t _PNH ptrdiff_t _purecall_handler ' +
-						'sig_atomic_t size_t _stat __stat64 _stati64 terminate_function ' +
-						'time_t __time64_t _timeb __timeb64 tm uintptr_t _utimbuf ' +
-						'va_list wchar_t wctrans_t wctype_t wint_t signed';
-
-		var keywords =	'break case catch class const __finally __exception __try ' +
-						'const_cast continue private public protected __declspec ' +
-						'default delete deprecated dllexport dllimport do dynamic_cast ' +
-						'else enum explicit extern if for friend goto inline ' +
-						'mutable naked namespace new noinline noreturn nothrow ' +
-						'register reinterpret_cast return selectany ' +
-						'sizeof static static_cast struct switch template this ' +
-						'thread throw true false try typedef typeid typename union ' +
-						'using uuid virtual void volatile whcar_t while';
-					
-		var functions =	'assert isalnum isalpha iscntrl isdigit isgraph islower isprint' +
-						'ispunct isspace isupper isxdigit tolower toupper errno localeconv ' +
-						'setlocale acos asin atan atan2 ceil cos cosh exp fabs floor fmod ' +
-						'frexp ldexp log log10 modf pow sin sinh sqrt tan tanh jmp_buf ' +
-						'longjmp setjmp raise signal sig_atomic_t va_arg va_end va_start ' +
-						'clearerr fclose feof ferror fflush fgetc fgetpos fgets fopen ' +
-						'fprintf fputc fputs fread freopen fscanf fseek fsetpos ftell ' +
-						'fwrite getc getchar gets perror printf putc putchar puts remove ' +
-						'rename rewind scanf setbuf setvbuf sprintf sscanf tmpfile tmpnam ' +
-						'ungetc vfprintf vprintf vsprintf abort abs atexit atof atoi atol ' +
-						'bsearch calloc div exit free getenv labs ldiv malloc mblen mbstowcs ' +
-						'mbtowc qsort rand realloc srand strtod strtol strtoul system ' +
-						'wcstombs wctomb memchr memcmp memcpy memmove memset strcat strchr ' +
-						'strcmp strcoll strcpy strcspn strerror strlen strncat strncmp ' +
-						'strncpy strpbrk strrchr strspn strstr strtok strxfrm asctime ' +
-						'clock ctime difftime gmtime localtime mktime strftime time';
-
-		this.regexList = [
-			{ regex: SyntaxHighlighter.regexLib.singleLineCComments,	css: 'comments' },			// one line comments
-			{ regex: SyntaxHighlighter.regexLib.multiLineCComments,		css: 'comments' },			// multiline comments
-			{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,		css: 'string' },			// strings
-			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,		css: 'string' },			// strings
-			{ regex: /^ *#.*/gm,										css: 'preprocessor' },
-			{ regex: new RegExp(this.getKeywords(datatypes), 'gm'),		css: 'color1 bold' },
-			{ regex: new RegExp(this.getKeywords(functions), 'gm'),		css: 'functions bold' },
-			{ regex: new RegExp(this.getKeywords(keywords), 'gm'),		css: 'keyword bold' }
-			];
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['cpp', 'c'];
-
-	SyntaxHighlighter.brushes.Cpp = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushCss.js b/javadoc/resources/sh/scripts/shBrushCss.js
deleted file mode 100755
index 70a56a67..00000000
--- a/javadoc/resources/sh/scripts/shBrushCss.js
+++ /dev/null
@@ -1,75 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		function getKeywordsCSS(str)
-		{
-			return '\\b([a-z_]|)' + str.replace(/ /g, '(?=:)\\b|\\b([a-z_\\*]|\\*|)') + '(?=:)\\b';
-		};
-	
-		function getValuesCSS(str)
-		{
-			return '\\b' + str.replace(/ /g, '(?!-)(?!:)\\b|\\b()') + '\:\\b';
-		};
-
-		var keywords =	'ascent azimuth background-attachment background-color background-image background-position ' +
-						'background-repeat background baseline bbox border-collapse border-color border-spacing border-style border-top ' +
-						'border-right border-bottom border-left border-top-color border-right-color border-bottom-color border-left-color ' +
-						'border-top-style border-right-style border-bottom-style border-left-style border-top-width border-right-width ' +
-						'border-bottom-width border-left-width border-width border bottom cap-height caption-side centerline clear clip color ' +
-						'content counter-increment counter-reset cue-after cue-before cue cursor definition-src descent direction display ' +
-						'elevation empty-cells float font-size-adjust font-family font-size font-stretch font-style font-variant font-weight font ' +
-						'height left letter-spacing line-height list-style-image list-style-position list-style-type list-style margin-top ' +
-						'margin-right margin-bottom margin-left margin marker-offset marks mathline max-height max-width min-height min-width orphans ' +
-						'outline-color outline-style outline-width outline overflow padding-top padding-right padding-bottom padding-left padding page ' +
-						'page-break-after page-break-before page-break-inside pause pause-after pause-before pitch pitch-range play-during position ' +
-						'quotes right richness size slope src speak-header speak-numeral speak-punctuation speak speech-rate stemh stemv stress ' +
-						'table-layout text-align top text-decoration text-indent text-shadow text-transform unicode-bidi unicode-range units-per-em ' +
-						'vertical-align visibility voice-family volume white-space widows width widths word-spacing x-height z-index';
-
-		var values =	'above absolute all always aqua armenian attr aural auto avoid baseline behind below bidi-override black blink block blue bold bolder '+
-						'both bottom braille capitalize caption center center-left center-right circle close-quote code collapse compact condensed '+
-						'continuous counter counters crop cross crosshair cursive dashed decimal decimal-leading-zero default digits disc dotted double '+
-						'embed embossed e-resize expanded extra-condensed extra-expanded fantasy far-left far-right fast faster fixed format fuchsia '+
-						'gray green groove handheld hebrew help hidden hide high higher icon inline-table inline inset inside invert italic '+
-						'justify landscape large larger left-side left leftwards level lighter lime line-through list-item local loud lower-alpha '+
-						'lowercase lower-greek lower-latin lower-roman lower low ltr marker maroon medium message-box middle mix move narrower '+
-						'navy ne-resize no-close-quote none no-open-quote no-repeat normal nowrap n-resize nw-resize oblique olive once open-quote outset '+
-						'outside overline pointer portrait pre print projection purple red relative repeat repeat-x repeat-y rgb ridge right right-side '+
-						'rightwards rtl run-in screen scroll semi-condensed semi-expanded separate se-resize show silent silver slower slow '+
-						'small small-caps small-caption smaller soft solid speech spell-out square s-resize static status-bar sub super sw-resize '+
-						'table-caption table-cell table-column table-column-group table-footer-group table-header-group table-row table-row-group teal '+
-						'text-bottom text-top thick thin top transparent tty tv ultra-condensed ultra-expanded underline upper-alpha uppercase upper-latin '+
-						'upper-roman url visible wait white wider w-resize x-fast x-high x-large x-loud x-low x-slow x-small x-soft xx-large xx-small yellow';
-
-		var fonts =		'[mM]onospace [tT]ahoma [vV]erdana [aA]rial [hH]elvetica [sS]ans-serif [sS]erif [cC]ourier mono sans serif';
-	
-		this.regexList = [
-			{ regex: SyntaxHighlighter.regexLib.multiLineCComments,		css: 'comments' },	// multiline comments
-			{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,		css: 'string' },	// double quoted strings
-			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,		css: 'string' },	// single quoted strings
-			{ regex: /\#[a-fA-F0-9]{3,6}/g,								css: 'value' },		// html colors
-			{ regex: /(-?\d+)(\.\d+)?(px|em|pt|\:|\%|)/g,				css: 'value' },		// sizes
-			{ regex: /!important/g,										css: 'color3' },	// !important
-			{ regex: new RegExp(getKeywordsCSS(keywords), 'gm'),		css: 'keyword' },	// keywords
-			{ regex: new RegExp(getValuesCSS(values), 'g'),				css: 'value' },		// values
-			{ regex: new RegExp(this.getKeywords(fonts), 'g'),			css: 'color1' }		// fonts
-			];
-
-		this.forHtmlScript({ 
-			left: /(&lt;|<)\s*style.*?(&gt;|>)/gi, 
-			right: /(&lt;|<)\/\s*style\s*(&gt;|>)/gi 
-			});
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['css'];
-
-	SyntaxHighlighter.brushes.CSS = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushDelphi.js b/javadoc/resources/sh/scripts/shBrushDelphi.js
deleted file mode 100755
index 7ff08ff3..00000000
--- a/javadoc/resources/sh/scripts/shBrushDelphi.js
+++ /dev/null
@@ -1,39 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		var keywords =	'abs addr and ansichar ansistring array as asm begin boolean byte cardinal ' +
-						'case char class comp const constructor currency destructor div do double ' +
-						'downto else end except exports extended false file finalization finally ' +
-						'for function goto if implementation in inherited int64 initialization ' +
-						'integer interface is label library longint longword mod nil not object ' +
-						'of on or packed pansichar pansistring pchar pcurrency pdatetime pextended ' +
-						'pint64 pointer private procedure program property pshortstring pstring ' +
-						'pvariant pwidechar pwidestring protected public published raise real real48 ' +
-						'record repeat set shl shortint shortstring shr single smallint string then ' +
-						'threadvar to true try type unit until uses val var varirnt while widechar ' +
-						'widestring with word write writeln xor';
-
-		this.regexList = [
-			{ regex: /\(\*[\s\S]*?\*\)/gm,								css: 'comments' },  	// multiline comments (* *)
-			{ regex: /{(?!\$)[\s\S]*?}/gm,								css: 'comments' },  	// multiline comments { }
-			{ regex: SyntaxHighlighter.regexLib.singleLineCComments,	css: 'comments' },  	// one line
-			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,		css: 'string' },		// strings
-			{ regex: /\{\$[a-zA-Z]+ .+\}/g,								css: 'color1' },		// compiler Directives and Region tags
-			{ regex: /\b[\d\.]+\b/g,									css: 'value' },			// numbers 12345
-			{ regex: /\$[a-zA-Z0-9]+\b/g,								css: 'value' },			// numbers $F5D3
-			{ regex: new RegExp(this.getKeywords(keywords), 'gmi'),		css: 'keyword' }		// keyword
-			];
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['delphi', 'pascal', 'pas'];
-
-	SyntaxHighlighter.brushes.Delphi = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushDiff.js b/javadoc/resources/sh/scripts/shBrushDiff.js
deleted file mode 100755
index b7345d36..00000000
--- a/javadoc/resources/sh/scripts/shBrushDiff.js
+++ /dev/null
@@ -1,25 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		this.regexList = [
-			{ regex: /^\+\+\+.*$/gm,		css: 'color2' },
-			{ regex: /^\-\-\-.*$/gm,		css: 'color2' },
-			{ regex: /^\s.*$/gm,			css: 'color1' },
-			{ regex: /^@@.*@@$/gm,			css: 'variable' },
-			{ regex: /^\+[^\+]{1}.*$/gm,	css: 'string' },
-			{ regex: /^\-[^\-]{1}.*$/gm,	css: 'comments' }
-			];
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['diff', 'patch'];
-
-	SyntaxHighlighter.brushes.Diff = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushErlang.js b/javadoc/resources/sh/scripts/shBrushErlang.js
deleted file mode 100755
index 3f240d35..00000000
--- a/javadoc/resources/sh/scripts/shBrushErlang.js
+++ /dev/null
@@ -1,36 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		// Contributed by Jean-Lou Dupont
-		// http://jldupont.blogspot.com/2009/06/erlang-syntax-highlighter.html  
-
-		// According to: http://erlang.org/doc/reference_manual/introduction.html#1.5
-		var keywords = 'after and andalso band begin bnot bor bsl bsr bxor '+
-			'case catch cond div end fun if let not of or orelse '+
-			'query receive rem try when xor'+
-			// additional
-			' module export import define';
-
-		this.regexList = [
-			{ regex: new RegExp("[A-Z][A-Za-z0-9_]+", 'g'), 			css: 'constants' },
-			{ regex: new RegExp("\\%.+", 'gm'), 						css: 'comments' },
-			{ regex: new RegExp("\\?[A-Za-z0-9_]+", 'g'), 				css: 'preprocessor' },
-			{ regex: new RegExp("[a-z0-9_]+:[a-z0-9_]+", 'g'), 			css: 'functions' },
-			{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,		css: 'string' },
-			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,		css: 'string' },
-			{ regex: new RegExp(this.getKeywords(keywords),	'gm'),		css: 'keyword' }
-			];
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['erl', 'erlang'];
-
-	SyntaxHighlighter.brushes.Erland = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushGroovy.js b/javadoc/resources/sh/scripts/shBrushGroovy.js
deleted file mode 100755
index d20cca16..00000000
--- a/javadoc/resources/sh/scripts/shBrushGroovy.js
+++ /dev/null
@@ -1,51 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		// Contributed by Andres Almiray
-		// http://jroller.com/aalmiray/entry/nice_source_code_syntax_highlighter
-
-		var keywords =	'as assert break case catch class continue def default do else extends finally ' +
-						'if in implements import instanceof interface new package property return switch ' +
-						'throw throws try while public protected private static';
-		var types    =  'void boolean byte char short int long float double';
-		var constants = 'null';
-		var methods   = 'allProperties count get size '+
-						'collect each eachProperty eachPropertyName eachWithIndex find findAll ' +
-						'findIndexOf grep inject max min reverseEach sort ' +
-						'asImmutable asSynchronized flatten intersect join pop reverse subMap toList ' +
-						'padRight padLeft contains eachMatch toCharacter toLong toUrl tokenize ' +
-						'eachFile eachFileRecurse eachB yte eachLine readBytes readLine getText ' +
-						'splitEachLine withReader append encodeBase64 decodeBase64 filterLine ' +
-						'transformChar transformLine withOutputStream withPrintWriter withStream ' +
-						'withStreams withWriter withWriterAppend write writeLine '+
-						'dump inspect invokeMethod print println step times upto use waitForOrKill '+
-						'getText';
-
-		this.regexList = [
-			{ regex: SyntaxHighlighter.regexLib.singleLineCComments,				css: 'comments' },		// one line comments
-			{ regex: SyntaxHighlighter.regexLib.multiLineCComments,					css: 'comments' },		// multiline comments
-			{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,					css: 'string' },		// strings
-			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,					css: 'string' },		// strings
-			{ regex: /""".*"""/g,													css: 'string' },		// GStrings
-			{ regex: new RegExp('\\b([\\d]+(\\.[\\d]+)?|0x[a-f0-9]+)\\b', 'gi'),	css: 'value' },			// numbers
-			{ regex: new RegExp(this.getKeywords(keywords), 'gm'),					css: 'keyword' },		// goovy keyword
-			{ regex: new RegExp(this.getKeywords(types), 'gm'),						css: 'color1' },		// goovy/java type
-			{ regex: new RegExp(this.getKeywords(constants), 'gm'),					css: 'constants' },		// constants
-			{ regex: new RegExp(this.getKeywords(methods), 'gm'),					css: 'functions' }		// methods
-			];
-
-		this.forHtmlScript(SyntaxHighlighter.regexLib.aspScriptTags);
-	}
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['groovy'];
-
-	SyntaxHighlighter.brushes.Groovy = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushJScript.js b/javadoc/resources/sh/scripts/shBrushJScript.js
deleted file mode 100755
index d6f2574a..00000000
--- a/javadoc/resources/sh/scripts/shBrushJScript.js
+++ /dev/null
@@ -1,36 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		var keywords =	'break case catch continue ' +
-						'default delete do else false  ' +
-						'for function if in instanceof ' +
-						'new null return super switch ' +
-						'this throw true try typeof var while with'
-						;
-
-		var r = SyntaxHighlighter.regexLib;
-		
-		this.regexList = [
-			{ regex: r.multiLineDoubleQuotedString,					css: 'string' },			// double quoted strings
-			{ regex: r.multiLineSingleQuotedString,					css: 'string' },			// single quoted strings
-			{ regex: r.singleLineCComments,							css: 'comments' },			// one line comments
-			{ regex: r.multiLineCComments,							css: 'comments' },			// multiline comments
-			{ regex: /\s*#.*/gm,									css: 'preprocessor' },		// preprocessor tags like #region and #endregion
-			{ regex: new RegExp(this.getKeywords(keywords), 'gm'),	css: 'keyword' }			// keywords
-			];
-	
-		this.forHtmlScript(r.scriptScriptTags);
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['js', 'jscript', 'javascript'];
-
-	SyntaxHighlighter.brushes.JScript = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushJava.js b/javadoc/resources/sh/scripts/shBrushJava.js
deleted file mode 100755
index 3594d7ae..00000000
--- a/javadoc/resources/sh/scripts/shBrushJava.js
+++ /dev/null
@@ -1,41 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		var keywords =	'abstract assert boolean break byte case catch char class const ' +
-						'continue default do double else enum extends ' +
-						'false final finally float for goto if implements import ' +
-						'instanceof int interface long native new null ' +
-						'package private protected public return ' +
-						'short static strictfp super switch synchronized this throw throws true ' +
-						'transient try void volatile while';
-
-		this.regexList = [
-			{ regex: SyntaxHighlighter.regexLib.singleLineCComments,	css: 'comments' },		// one line comments
-			{ regex: /\/\*([^\*][\s\S]*)?\*\//gm,						css: 'comments' },	 	// multiline comments
-			{ regex: /\/\*(?!\*\/)\*[\s\S]*?\*\//gm,					css: 'preprocessor' },	// documentation comments
-			{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,		css: 'string' },		// strings
-			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,		css: 'string' },		// strings
-			{ regex: /\b([\d]+(\.[\d]+)?|0x[a-f0-9]+)\b/gi,				css: 'value' },			// numbers
-			{ regex: /(?!\@interface\b)\@[\$\w]+\b/g,					css: 'color1' },		// annotation @anno
-			{ regex: /\@interface\b/g,									css: 'color2' },		// @interface keyword
-			{ regex: new RegExp(this.getKeywords(keywords), 'gm'),		css: 'keyword' }		// java keyword
-			];
-
-		this.forHtmlScript({
-			left	: /(&lt;|<)%[@!=]?/g, 
-			right	: /%(&gt;|>)/g 
-		});
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['java'];
-
-	SyntaxHighlighter.brushes.Java = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushJavaFX.js b/javadoc/resources/sh/scripts/shBrushJavaFX.js
deleted file mode 100755
index 2220b7d8..00000000
--- a/javadoc/resources/sh/scripts/shBrushJavaFX.js
+++ /dev/null
@@ -1,42 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		// Contributed by Patrick Webster
-		// http://patrickwebster.blogspot.com/2009/04/javafx-brush-for-syntaxhighlighter.html
-		var datatypes =	'Boolean Byte Character Double Duration '
-						+ 'Float Integer Long Number Short String Void'
-						;
-
-		var keywords = 'abstract after and as assert at before bind bound break catch class '
-						+ 'continue def delete else exclusive extends false finally first for from '
-						+ 'function if import in indexof init insert instanceof into inverse last '
-						+ 'lazy mixin mod nativearray new not null on or override package postinit '
-						+ 'protected public public-init public-read replace return reverse sizeof '
-						+ 'step super then this throw true try tween typeof var where while with '
-						+ 'attribute let private readonly static trigger'
-						;
-
-		this.regexList = [
-			{ regex: SyntaxHighlighter.regexLib.singleLineCComments,	css: 'comments' },
-			{ regex: SyntaxHighlighter.regexLib.multiLineCComments,		css: 'comments' },
-			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,		css: 'string' },
-			{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,		css: 'string' },
-			{ regex: /(-?\.?)(\b(\d*\.?\d+|\d+\.?\d*)(e[+-]?\d+)?|0x[a-f\d]+)\b\.?/gi, css: 'color2' },	// numbers
-			{ regex: new RegExp(this.getKeywords(datatypes), 'gm'),		css: 'variable' },	// datatypes
-			{ regex: new RegExp(this.getKeywords(keywords), 'gm'),		css: 'keyword' }
-		];
-		this.forHtmlScript(SyntaxHighlighter.regexLib.aspScriptTags);
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['jfx', 'javafx'];
-
-	SyntaxHighlighter.brushes.JavaFX = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushPerl.js b/javadoc/resources/sh/scripts/shBrushPerl.js
deleted file mode 100755
index 935cb90b..00000000
--- a/javadoc/resources/sh/scripts/shBrushPerl.js
+++ /dev/null
@@ -1,56 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		// Contributed by David Simmons-Duffin and Marty Kube
-	
-		var funcs = 
-			'abs accept alarm atan2 bind binmode chdir chmod chomp chop chown chr ' + 
-			'chroot close closedir connect cos crypt defined delete each endgrent ' + 
-			'endhostent endnetent endprotoent endpwent endservent eof exec exists ' + 
-			'exp fcntl fileno flock fork format formline getc getgrent getgrgid ' + 
-			'getgrnam gethostbyaddr gethostbyname gethostent getlogin getnetbyaddr ' + 
-			'getnetbyname getnetent getpeername getpgrp getppid getpriority ' + 
-			'getprotobyname getprotobynumber getprotoent getpwent getpwnam getpwuid ' + 
-			'getservbyname getservbyport getservent getsockname getsockopt glob ' + 
-			'gmtime grep hex index int ioctl join keys kill lc lcfirst length link ' + 
-			'listen localtime lock log lstat map mkdir msgctl msgget msgrcv msgsnd ' + 
-			'oct open opendir ord pack pipe pop pos print printf prototype push ' + 
-			'quotemeta rand read readdir readline readlink readpipe recv rename ' + 
-			'reset reverse rewinddir rindex rmdir scalar seek seekdir select semctl ' + 
-			'semget semop send setgrent sethostent setnetent setpgrp setpriority ' + 
-			'setprotoent setpwent setservent setsockopt shift shmctl shmget shmread ' + 
-			'shmwrite shutdown sin sleep socket socketpair sort splice split sprintf ' + 
-			'sqrt srand stat study substr symlink syscall sysopen sysread sysseek ' + 
-			'system syswrite tell telldir time times tr truncate uc ucfirst umask ' + 
-			'undef unlink unpack unshift utime values vec wait waitpid warn write';
-    
-		var keywords =  
-			'bless caller continue dbmclose dbmopen die do dump else elsif eval exit ' +
-			'for foreach goto if import last local my next no our package redo ref ' + 
-			'require return sub tie tied unless untie until use wantarray while';
-    
-		this.regexList = [
-			{ regex: new RegExp('#[^!].*$', 'gm'),					css: 'comments' },
-			{ regex: new RegExp('^\\s*#!.*$', 'gm'),				css: 'preprocessor' }, // shebang
-			{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,	css: 'string' },
-			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,	css: 'string' },
-			{ regex: new RegExp('(\\$|@|%)\\w+', 'g'),				css: 'variable' },
-			{ regex: new RegExp(this.getKeywords(funcs), 'gmi'),	css: 'functions' },
-			{ regex: new RegExp(this.getKeywords(keywords), 'gm'),	css: 'keyword' }
-		    ];
-
-		this.forHtmlScript(SyntaxHighlighter.regexLib.phpScriptTags);
-	}
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases		= ['perl', 'Perl', 'pl'];
-
-	SyntaxHighlighter.brushes.Perl = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushPhp.js b/javadoc/resources/sh/scripts/shBrushPhp.js
deleted file mode 100755
index 91781411..00000000
--- a/javadoc/resources/sh/scripts/shBrushPhp.js
+++ /dev/null
@@ -1,72 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		var funcs	=	'abs acos acosh addcslashes addslashes ' +
-						'array_change_key_case array_chunk array_combine array_count_values array_diff '+
-						'array_diff_assoc array_diff_key array_diff_uassoc array_diff_ukey array_fill '+
-						'array_filter array_flip array_intersect array_intersect_assoc array_intersect_key '+
-						'array_intersect_uassoc array_intersect_ukey array_key_exists array_keys array_map '+
-						'array_merge array_merge_recursive array_multisort array_pad array_pop array_product '+
-						'array_push array_rand array_reduce array_reverse array_search array_shift '+
-						'array_slice array_splice array_sum array_udiff array_udiff_assoc '+
-						'array_udiff_uassoc array_uintersect array_uintersect_assoc '+
-						'array_uintersect_uassoc array_unique array_unshift array_values array_walk '+
-						'array_walk_recursive atan atan2 atanh base64_decode base64_encode base_convert '+
-						'basename bcadd bccomp bcdiv bcmod bcmul bindec bindtextdomain bzclose bzcompress '+
-						'bzdecompress bzerrno bzerror bzerrstr bzflush bzopen bzread bzwrite ceil chdir '+
-						'checkdate checkdnsrr chgrp chmod chop chown chr chroot chunk_split class_exists '+
-						'closedir closelog copy cos cosh count count_chars date decbin dechex decoct '+
-						'deg2rad delete ebcdic2ascii echo empty end ereg ereg_replace eregi eregi_replace error_log '+
-						'error_reporting escapeshellarg escapeshellcmd eval exec exit exp explode extension_loaded '+
-						'feof fflush fgetc fgetcsv fgets fgetss file_exists file_get_contents file_put_contents '+
-						'fileatime filectime filegroup fileinode filemtime fileowner fileperms filesize filetype '+
-						'floatval flock floor flush fmod fnmatch fopen fpassthru fprintf fputcsv fputs fread fscanf '+
-						'fseek fsockopen fstat ftell ftok getallheaders getcwd getdate getenv gethostbyaddr gethostbyname '+
-						'gethostbynamel getimagesize getlastmod getmxrr getmygid getmyinode getmypid getmyuid getopt '+
-						'getprotobyname getprotobynumber getrandmax getrusage getservbyname getservbyport gettext '+
-						'gettimeofday gettype glob gmdate gmmktime ini_alter ini_get ini_get_all ini_restore ini_set '+
-						'interface_exists intval ip2long is_a is_array is_bool is_callable is_dir is_double '+
-						'is_executable is_file is_finite is_float is_infinite is_int is_integer is_link is_long '+
-						'is_nan is_null is_numeric is_object is_readable is_real is_resource is_scalar is_soap_fault '+
-						'is_string is_subclass_of is_uploaded_file is_writable is_writeable mkdir mktime nl2br '+
-						'parse_ini_file parse_str parse_url passthru pathinfo print readlink realpath rewind rewinddir rmdir '+
-						'round str_ireplace str_pad str_repeat str_replace str_rot13 str_shuffle str_split '+
-						'str_word_count strcasecmp strchr strcmp strcoll strcspn strftime strip_tags stripcslashes '+
-						'stripos stripslashes stristr strlen strnatcasecmp strnatcmp strncasecmp strncmp strpbrk '+
-						'strpos strptime strrchr strrev strripos strrpos strspn strstr strtok strtolower strtotime '+
-						'strtoupper strtr strval substr substr_compare';
-
-		var keywords =	'abstract and array as break case catch cfunction class clone const continue declare default die do ' +
-						'else elseif enddeclare endfor endforeach endif endswitch endwhile extends final for foreach ' +
-						'function include include_once global goto if implements interface instanceof namespace new ' +
-						'old_function or private protected public return require require_once static switch ' +
-						'throw try use var while xor ';
-		
-		var constants	= '__FILE__ __LINE__ __METHOD__ __FUNCTION__ __CLASS__';
-
-		this.regexList = [
-			{ regex: SyntaxHighlighter.regexLib.singleLineCComments,	css: 'comments' },			// one line comments
-			{ regex: SyntaxHighlighter.regexLib.multiLineCComments,		css: 'comments' },			// multiline comments
-			{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,		css: 'string' },			// double quoted strings
-			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,		css: 'string' },			// single quoted strings
-			{ regex: /\$\w+/g,											css: 'variable' },			// variables
-			{ regex: new RegExp(this.getKeywords(funcs), 'gmi'),		css: 'functions' },			// internal functions
-			{ regex: new RegExp(this.getKeywords(constants), 'gmi'),	css: 'constants' },			// constants
-			{ regex: new RegExp(this.getKeywords(keywords), 'gm'),		css: 'keyword' }			// keyword
-			];
-
-		this.forHtmlScript(SyntaxHighlighter.regexLib.phpScriptTags);
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['php'];
-
-	SyntaxHighlighter.brushes.Php = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushPlain.js b/javadoc/resources/sh/scripts/shBrushPlain.js
deleted file mode 100755
index 928a4165..00000000
--- a/javadoc/resources/sh/scripts/shBrushPlain.js
+++ /dev/null
@@ -1,17 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['text', 'plain'];
-
-	SyntaxHighlighter.brushes.Plain = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushPowerShell.js b/javadoc/resources/sh/scripts/shBrushPowerShell.js
deleted file mode 100755
index 57edbd3f..00000000
--- a/javadoc/resources/sh/scripts/shBrushPowerShell.js
+++ /dev/null
@@ -1,58 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		// Contributes by B.v.Zanten, Getronics
-		// http://confluence.atlassian.com/display/CONFEXT/New+Code+Macro
-
-		var keywords = 'Add-Content Add-History Add-Member Add-PSSnapin Clear(-Content)? Clear-Item ' +
-					'Clear-ItemProperty Clear-Variable Compare-Object ConvertFrom-SecureString Convert-Path ' +
-					'ConvertTo-Html ConvertTo-SecureString Copy(-Item)? Copy-ItemProperty Export-Alias ' +
-					'Export-Clixml Export-Console Export-Csv ForEach(-Object)? Format-Custom Format-List ' +
-					'Format-Table Format-Wide Get-Acl Get-Alias Get-AuthenticodeSignature Get-ChildItem Get-Command ' +
-					'Get-Content Get-Credential Get-Culture Get-Date Get-EventLog Get-ExecutionPolicy ' +
-					'Get-Help Get-History Get-Host Get-Item Get-ItemProperty Get-Location Get-Member ' +
-					'Get-PfxCertificate Get-Process Get-PSDrive Get-PSProvider Get-PSSnapin Get-Service ' +
-					'Get-TraceSource Get-UICulture Get-Unique Get-Variable Get-WmiObject Group-Object ' +
-					'Import-Alias Import-Clixml Import-Csv Invoke-Expression Invoke-History Invoke-Item ' +
-					'Join-Path Measure-Command Measure-Object Move(-Item)? Move-ItemProperty New-Alias ' +
-					'New-Item New-ItemProperty New-Object New-PSDrive New-Service New-TimeSpan ' +
-					'New-Variable Out-Default Out-File Out-Host Out-Null Out-Printer Out-String Pop-Location ' +
-					'Push-Location Read-Host Remove-Item Remove-ItemProperty Remove-PSDrive Remove-PSSnapin ' +
-					'Remove-Variable Rename-Item Rename-ItemProperty Resolve-Path Restart-Service Resume-Service ' +
-					'Select-Object Select-String Set-Acl Set-Alias Set-AuthenticodeSignature Set-Content ' +
-					'Set-Date Set-ExecutionPolicy Set-Item Set-ItemProperty Set-Location Set-PSDebug ' +
-					'Set-Service Set-TraceSource Set(-Variable)? Sort-Object Split-Path Start-Service ' +
-					'Start-Sleep Start-Transcript Stop-Process Stop-Service Stop-Transcript Suspend-Service ' +
-					'Tee-Object Test-Path Trace-Command Update-FormatData Update-TypeData Where(-Object)? ' +
-					'Write-Debug Write-Error Write(-Host)? Write-Output Write-Progress Write-Verbose Write-Warning';
-		var alias = 'ac asnp clc cli clp clv cpi cpp cvpa diff epal epcsv fc fl ' +
-					'ft fw gal gc gci gcm gdr ghy gi gl gm gp gps group gsv ' +
-					'gsnp gu gv gwmi iex ihy ii ipal ipcsv mi mp nal ndr ni nv oh rdr ' +
-					'ri rni rnp rp rsnp rv rvpa sal sasv sc select si sl sleep sort sp ' +
-					'spps spsv sv tee cat cd cp h history kill lp ls ' +
-					'mount mv popd ps pushd pwd r rm rmdir echo cls chdir del dir ' +
-					'erase rd ren type % \\?';
-
-		this.regexList = [
-			{ regex: /#.*$/gm,										css: 'comments' },  // one line comments
-			{ regex: /\$[a-zA-Z0-9]+\b/g,							css: 'value'   },   // variables $Computer1
-			{ regex: /\-[a-zA-Z]+\b/g,								css: 'keyword' },   // Operators    -not  -and  -eq
-			{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,	css: 'string' },    // strings
-			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,	css: 'string' },    // strings
-			{ regex: new RegExp(this.getKeywords(keywords), 'gmi'),	css: 'keyword' },
-			{ regex: new RegExp(this.getKeywords(alias), 'gmi'),	css: 'keyword' }
-		];
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['powershell', 'ps'];
-
-	SyntaxHighlighter.brushes.PowerShell = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushPython.js b/javadoc/resources/sh/scripts/shBrushPython.js
deleted file mode 100755
index 1187d3fa..00000000
--- a/javadoc/resources/sh/scripts/shBrushPython.js
+++ /dev/null
@@ -1,48 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		// Contributed by Gheorghe Milas and Ahmad Sherif
-	
-		var keywords =  'and assert break class continue def del elif else ' +
-						'except exec finally for from global if import in is ' +
-						'lambda not or pass print raise return try yield while';
-
-		var funcs = '__import__ abs all any apply basestring bin bool buffer callable ' +
-					'chr classmethod cmp coerce compile complex delattr dict dir ' +
-					'divmod enumerate eval execfile file filter float format frozenset ' +
-					'getattr globals hasattr hash help hex id input int intern ' +
-					'isinstance issubclass iter len list locals long map max min next ' +
-					'object oct open ord pow print property range raw_input reduce ' +
-					'reload repr reversed round set setattr slice sorted staticmethod ' +
-					'str sum super tuple type type unichr unicode vars xrange zip';
-
-		var special =  'None True False self cls class_';
-
-		this.regexList = [
-				{ regex: SyntaxHighlighter.regexLib.singleLinePerlComments, css: 'comments' },
-				{ regex: /^\s*@\w+/gm, 										css: 'decorator' },
-				{ regex: /(['\"]{3})([^\1])*?\1/gm, 						css: 'comments' },
-				{ regex: /"(?!")(?:\.|\\\"|[^\""\n])*"/gm, 					css: 'string' },
-				{ regex: /'(?!')(?:\.|(\\\')|[^\''\n])*'/gm, 				css: 'string' },
-				{ regex: /\+|\-|\*|\/|\%|=|==/gm, 							css: 'keyword' },
-				{ regex: /\b\d+\.?\w*/g, 									css: 'value' },
-				{ regex: new RegExp(this.getKeywords(funcs), 'gmi'),		css: 'functions' },
-				{ regex: new RegExp(this.getKeywords(keywords), 'gm'), 		css: 'keyword' },
-				{ regex: new RegExp(this.getKeywords(special), 'gm'), 		css: 'color1' }
-				];
-			
-		this.forHtmlScript(SyntaxHighlighter.regexLib.aspScriptTags);
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['py', 'python'];
-
-	SyntaxHighlighter.brushes.Python = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushRuby.js b/javadoc/resources/sh/scripts/shBrushRuby.js
deleted file mode 100755
index 5e5404fa..00000000
--- a/javadoc/resources/sh/scripts/shBrushRuby.js
+++ /dev/null
@@ -1,39 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		// Contributed by Erik Peterson.
-	
-		var keywords =	'alias and BEGIN begin break case class def define_method defined do each else elsif ' +
-						'END end ensure false for if in module new next nil not or raise redo rescue retry return ' +
-						'self super then throw true undef unless until when while yield';
-
-		var builtins =	'Array Bignum Binding Class Continuation Dir Exception FalseClass File::Stat File Fixnum Fload ' +
-						'Hash Integer IO MatchData Method Module NilClass Numeric Object Proc Range Regexp String Struct::TMS Symbol ' +
-						'ThreadGroup Thread Time TrueClass';
-
-		this.regexList = [
-			{ regex: SyntaxHighlighter.regexLib.singleLinePerlComments,	css: 'comments' },		// one line comments
-			{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,		css: 'string' },		// double quoted strings
-			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,		css: 'string' },		// single quoted strings
-			{ regex: /\b[A-Z0-9_]+\b/g,									css: 'constants' },		// constants
-			{ regex: /:[a-z][A-Za-z0-9_]*/g,							css: 'color2' },		// symbols
-			{ regex: /(\$|@@|@)\w+/g,									css: 'variable bold' },	// $global, @instance, and @@class variables
-			{ regex: new RegExp(this.getKeywords(keywords), 'gm'),		css: 'keyword' },		// keywords
-			{ regex: new RegExp(this.getKeywords(builtins), 'gm'),		css: 'color1' }			// builtins
-			];
-
-		this.forHtmlScript(SyntaxHighlighter.regexLib.aspScriptTags);
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['ruby', 'rails', 'ror', 'rb'];
-
-	SyntaxHighlighter.brushes.Ruby = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushSass.js b/javadoc/resources/sh/scripts/shBrushSass.js
deleted file mode 100755
index 3328b205..00000000
--- a/javadoc/resources/sh/scripts/shBrushSass.js
+++ /dev/null
@@ -1,78 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		function getKeywordsCSS(str)
-		{
-			return '\\b([a-z_]|)' + str.replace(/ /g, '(?=:)\\b|\\b([a-z_\\*]|\\*|)') + '(?=:)\\b';
-		};
-	
-		function getValuesCSS(str)
-		{
-			return '\\b' + str.replace(/ /g, '(?!-)(?!:)\\b|\\b()') + '\:\\b';
-		};
-
-		var keywords =	'ascent azimuth background-attachment background-color background-image background-position ' +
-						'background-repeat background baseline bbox border-collapse border-color border-spacing border-style border-top ' +
-						'border-right border-bottom border-left border-top-color border-right-color border-bottom-color border-left-color ' +
-						'border-top-style border-right-style border-bottom-style border-left-style border-top-width border-right-width ' +
-						'border-bottom-width border-left-width border-width border bottom cap-height caption-side centerline clear clip color ' +
-						'content counter-increment counter-reset cue-after cue-before cue cursor definition-src descent direction display ' +
-						'elevation empty-cells float font-size-adjust font-family font-size font-stretch font-style font-variant font-weight font ' +
-						'height left letter-spacing line-height list-style-image list-style-position list-style-type list-style margin-top ' +
-						'margin-right margin-bottom margin-left margin marker-offset marks mathline max-height max-width min-height min-width orphans ' +
-						'outline-color outline-style outline-width outline overflow padding-top padding-right padding-bottom padding-left padding page ' +
-						'page-break-after page-break-before page-break-inside pause pause-after pause-before pitch pitch-range play-during position ' +
-						'quotes right richness size slope src speak-header speak-numeral speak-punctuation speak speech-rate stemh stemv stress ' +
-						'table-layout text-align top text-decoration text-indent text-shadow text-transform unicode-bidi unicode-range units-per-em ' +
-						'vertical-align visibility voice-family volume white-space widows width widths word-spacing x-height z-index';
-		
-		var values =	'above absolute all always aqua armenian attr aural auto avoid baseline behind below bidi-override black blink block blue bold bolder '+
-						'both bottom braille capitalize caption center center-left center-right circle close-quote code collapse compact condensed '+
-						'continuous counter counters crop cross crosshair cursive dashed decimal decimal-leading-zero digits disc dotted double '+
-						'embed embossed e-resize expanded extra-condensed extra-expanded fantasy far-left far-right fast faster fixed format fuchsia '+
-						'gray green groove handheld hebrew help hidden hide high higher icon inline-table inline inset inside invert italic '+
-						'justify landscape large larger left-side left leftwards level lighter lime line-through list-item local loud lower-alpha '+
-						'lowercase lower-greek lower-latin lower-roman lower low ltr marker maroon medium message-box middle mix move narrower '+
-						'navy ne-resize no-close-quote none no-open-quote no-repeat normal nowrap n-resize nw-resize oblique olive once open-quote outset '+
-						'outside overline pointer portrait pre print projection purple red relative repeat repeat-x repeat-y rgb ridge right right-side '+
-						'rightwards rtl run-in screen scroll semi-condensed semi-expanded separate se-resize show silent silver slower slow '+
-						'small small-caps small-caption smaller soft solid speech spell-out square s-resize static status-bar sub super sw-resize '+
-						'table-caption table-cell table-column table-column-group table-footer-group table-header-group table-row table-row-group teal '+
-						'text-bottom text-top thick thin top transparent tty tv ultra-condensed ultra-expanded underline upper-alpha uppercase upper-latin '+
-						'upper-roman url visible wait white wider w-resize x-fast x-high x-large x-loud x-low x-slow x-small x-soft xx-large xx-small yellow';
-		
-		var fonts =		'[mM]onospace [tT]ahoma [vV]erdana [aA]rial [hH]elvetica [sS]ans-serif [sS]erif [cC]ourier mono sans serif';
-		
-		var statements		= '!important !default';
-		var preprocessor	= '@import @extend @debug @warn @if @for @while @mixin @include';
-		
-		var r = SyntaxHighlighter.regexLib;
-		
-		this.regexList = [
-			{ regex: r.multiLineCComments,								css: 'comments' },		// multiline comments
-			{ regex: r.singleLineCComments,								css: 'comments' },		// singleline comments
-			{ regex: r.doubleQuotedString,								css: 'string' },		// double quoted strings
-			{ regex: r.singleQuotedString,								css: 'string' },		// single quoted strings
-			{ regex: /\#[a-fA-F0-9]{3,6}/g,								css: 'value' },			// html colors
-			{ regex: /\b(-?\d+)(\.\d+)?(px|em|pt|\:|\%|)\b/g,			css: 'value' },			// sizes
-			{ regex: /\$\w+/g,											css: 'variable' },		// variables
-			{ regex: new RegExp(this.getKeywords(statements), 'g'),		css: 'color3' },		// statements
-			{ regex: new RegExp(this.getKeywords(preprocessor), 'g'),	css: 'preprocessor' },	// preprocessor
-			{ regex: new RegExp(getKeywordsCSS(keywords), 'gm'),		css: 'keyword' },		// keywords
-			{ regex: new RegExp(getValuesCSS(values), 'g'),				css: 'value' },			// values
-			{ regex: new RegExp(this.getKeywords(fonts), 'g'),			css: 'color1' }			// fonts
-			];
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['sass', 'scss'];
-
-	SyntaxHighlighter.brushes.Sass = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushScala.js b/javadoc/resources/sh/scripts/shBrushScala.js
deleted file mode 100755
index be29c6e2..00000000
--- a/javadoc/resources/sh/scripts/shBrushScala.js
+++ /dev/null
@@ -1,35 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		// Contributed by Yegor Jbanov and David Bernard.
-	
-		var keywords =	'val sealed case def true trait implicit forSome import match object null finally super ' +
-						'override try lazy for var catch throw type extends class while with new final yield abstract ' +
-						'else do if return protected private this package false';
-
-		var keyops =	'[_:⇒<%#@]+';
-
-		this.regexList = [
-			{ regex: SyntaxHighlighter.regexLib.singleLineCComments,			css: 'comments' },	// one line comments
-			{ regex: SyntaxHighlighter.regexLib.multiLineCComments,				css: 'comments' },	// multiline comments
-			{ regex: SyntaxHighlighter.regexLib.multiLineSingleQuotedString,	css: 'string' },	// multi-line strings
-			{ regex: SyntaxHighlighter.regexLib.multiLineDoubleQuotedString,    css: 'string' },	// double-quoted string
-			{ regex: SyntaxHighlighter.regexLib.singleQuotedString,				css: 'string' },	// strings
-			{ regex: /0x[a-f0-9]+|\d+(\.\d+)?/gi,								css: 'value' },		// numbers
-			{ regex: new RegExp(this.getKeywords(keywords), 'gm'),				css: 'keyword' },	// keywords
-			{ regex: new RegExp(keyops, 'gm'),									css: 'keyword' }	// scala keyword
-			];
-	}
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['scala'];
-
-	SyntaxHighlighter.brushes.Scala = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushSql.js b/javadoc/resources/sh/scripts/shBrushSql.js
deleted file mode 100755
index 8cc99f96..00000000
--- a/javadoc/resources/sh/scripts/shBrushSql.js
+++ /dev/null
@@ -1,50 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		var funcs	=	'abs avg case cast coalesce convert count current_timestamp ' +
-						'current_user day isnull left lower month nullif replace right ' +
-						'session_user space substring sum system_user upper user year';
-
-		var keywords =	'absolute action add after alter as asc at authorization begin bigint ' +
-						'binary bit by cascade char character check checkpoint close collate ' +
-						'column commit committed connect connection constraint contains continue ' +
-						'create cube current current_date current_time cursor database date ' +
-						'deallocate dec decimal declare default delete desc distinct double drop ' +
-						'dynamic else end end-exec escape except exec execute false fetch first ' +
-						'float for force foreign forward free from full function global goto grant ' +
-						'group grouping having hour ignore index inner insensitive insert instead ' +
-						'int integer intersect into is isolation key last level load local max min ' +
-						'minute modify move name national nchar next no numeric of off on only ' +
-						'open option order out output partial password precision prepare primary ' +
-						'prior privileges procedure public read real references relative repeatable ' +
-						'restrict return returns revoke rollback rollup rows rule schema scroll ' +
-						'second section select sequence serializable set size smallint static ' +
-						'statistics table temp temporary then time timestamp to top transaction ' +
-						'translation trigger true truncate uncommitted union unique update values ' +
-						'varchar varying view when where with work';
-
-		var operators =	'all and any between cross in join like not null or outer some';
-
-		this.regexList = [
-			{ regex: /--(.*)$/gm,												css: 'comments' },			// one line and multiline comments
-			{ regex: SyntaxHighlighter.regexLib.multiLineDoubleQuotedString,	css: 'string' },			// double quoted strings
-			{ regex: SyntaxHighlighter.regexLib.multiLineSingleQuotedString,	css: 'string' },			// single quoted strings
-			{ regex: new RegExp(this.getKeywords(funcs), 'gmi'),				css: 'color2' },			// functions
-			{ regex: new RegExp(this.getKeywords(operators), 'gmi'),			css: 'color1' },			// operators and such
-			{ regex: new RegExp(this.getKeywords(keywords), 'gmi'),				css: 'keyword' }			// keyword
-			];
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['sql'];
-
-	SyntaxHighlighter.brushes.Sql = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
-
diff --git a/javadoc/resources/sh/scripts/shBrushVb.js b/javadoc/resources/sh/scripts/shBrushVb.js
deleted file mode 100755
index 239a949a..00000000
--- a/javadoc/resources/sh/scripts/shBrushVb.js
+++ /dev/null
@@ -1,40 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		var keywords =	'AddHandler AddressOf AndAlso Alias And Ansi As Assembly Auto ' +
-						'Boolean ByRef Byte ByVal Call Case Catch CBool CByte CChar CDate ' +
-						'CDec CDbl Char CInt Class CLng CObj Const CShort CSng CStr CType ' +
-						'Date Decimal Declare Default Delegate Dim DirectCast Do Double Each ' +
-						'Else ElseIf End Enum Erase Error Event Exit False Finally For Friend ' +
-						'Function Get GetType GoSub GoTo Handles If Implements Imports In ' +
-						'Inherits Integer Interface Is Let Lib Like Long Loop Me Mod Module ' +
-						'MustInherit MustOverride MyBase MyClass Namespace New Next Not Nothing ' +
-						'NotInheritable NotOverridable Object On Option Optional Or OrElse ' +
-						'Overloads Overridable Overrides ParamArray Preserve Private Property ' +
-						'Protected Public RaiseEvent ReadOnly ReDim REM RemoveHandler Resume ' +
-						'Return Select Set Shadows Shared Short Single Static Step Stop String ' +
-						'Structure Sub SyncLock Then Throw To True Try TypeOf Unicode Until ' +
-						'Variant When While With WithEvents WriteOnly Xor';
-
-		this.regexList = [
-			{ regex: /'.*$/gm,										css: 'comments' },			// one line comments
-			{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,	css: 'string' },			// strings
-			{ regex: /^\s*#.*$/gm,									css: 'preprocessor' },		// preprocessor tags like #region and #endregion
-			{ regex: new RegExp(this.getKeywords(keywords), 'gm'),	css: 'keyword' }			// vb keyword
-			];
-
-		this.forHtmlScript(SyntaxHighlighter.regexLib.aspScriptTags);
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['vb', 'vbnet'];
-
-	SyntaxHighlighter.brushes.Vb = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shBrushXml.js b/javadoc/resources/sh/scripts/shBrushXml.js
deleted file mode 100755
index 1bb6418a..00000000
--- a/javadoc/resources/sh/scripts/shBrushXml.js
+++ /dev/null
@@ -1,53 +0,0 @@
-;(function()
-{
-	// CommonJS
-	typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
-
-	function Brush()
-	{
-		function process(match, regexInfo)
-		{
-			var constructor = SyntaxHighlighter.Match,
-				code = match[0],
-				tag = new XRegExp('(&lt;|<)[\\s\\/\\?]*(?<name>[:\\w-\\.]+)', 'xg').exec(code),
-				result = []
-				;
-		
-			if (match.attributes != null) 
-			{
-				var attributes,
-					regex = new XRegExp('(?<name> [\\w:\\-\\.]+)' +
-										'\\s*=\\s*' +
-										'(?<value> ".*?"|\'.*?\'|\\w+)',
-										'xg');
-
-				while ((attributes = regex.exec(code)) != null) 
-				{
-					result.push(new constructor(attributes.name, match.index + attributes.index, 'color1'));
-					result.push(new constructor(attributes.value, match.index + attributes.index + attributes[0].indexOf(attributes.value), 'string'));
-				}
-			}
-
-			if (tag != null)
-				result.push(
-					new constructor(tag.name, match.index + tag[0].indexOf(tag.name), 'keyword')
-				);
-
-			return result;
-		}
-	
-		this.regexList = [
-			{ regex: new XRegExp('(\\&lt;|<)\\!\\[[\\w\\s]*?\\[(.|\\s)*?\\]\\](\\&gt;|>)', 'gm'),			css: 'color2' },	// <![ ... [ ... ]]>
-			{ regex: SyntaxHighlighter.regexLib.xmlComments,												css: 'comments' },	// <!-- ... -->
-			{ regex: new XRegExp('(&lt;|<)[\\s\\/\\?]*(\\w+)(?<attributes>.*?)[\\s\\/\\?]*(&gt;|>)', 'sg'), func: process }
-		];
-	};
-
-	Brush.prototype	= new SyntaxHighlighter.Highlighter();
-	Brush.aliases	= ['xml', 'xhtml', 'xslt', 'html'];
-
-	SyntaxHighlighter.brushes.Xml = Brush;
-
-	// CommonJS
-	typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
-})();
diff --git a/javadoc/resources/sh/scripts/shCore.js b/javadoc/resources/sh/scripts/shCore.js
deleted file mode 100755
index 7870fea2..00000000
--- a/javadoc/resources/sh/scripts/shCore.js
+++ /dev/null
@@ -1,1702 +0,0 @@
-//
-// Begin anonymous function. This is used to contain local scope variables without polutting global scope.
-//
-if (typeof(SyntaxHighlighter) == 'undefined') var SyntaxHighlighter = function() { 
-
-// CommonJS
-if (typeof(require) != 'undefined' && typeof(XRegExp) == 'undefined')
-{
-	XRegExp = require('XRegExp').XRegExp;
-}
-
-// Shortcut object which will be assigned to the SyntaxHighlighter variable.
-// This is a shorthand for local reference in order to avoid long namespace 
-// references to SyntaxHighlighter.whatever...
-var sh = {
-	defaults : {
-		/** Additional CSS class names to be added to highlighter elements. */
-		'class-name' : '',
-		
-		/** First line number. */
-		'first-line' : 1,
-		
-		/**
-		 * Pads line numbers. Possible values are:
-		 *
-		 *   false - don't pad line numbers.
-		 *   true  - automaticaly pad numbers with minimum required number of leading zeroes.
-		 *   [int] - length up to which pad line numbers.
-		 */
-		'pad-line-numbers' : false,
-		
-		/** Lines to highlight. */
-		'highlight' : null,
-		
-		/** Title to be displayed above the code block. */
-		'title' : null,
-		
-		/** Enables or disables smart tabs. */
-		'smart-tabs' : true,
-		
-		/** Gets or sets tab size. */
-		'tab-size' : 4,
-		
-		/** Enables or disables gutter. */
-		'gutter' : true,
-		
-		/** Enables or disables toolbar. */
-		'toolbar' : true,
-		
-		/** Enables quick code copy and paste from double click. */
-		'quick-code' : true,
-		
-		/** Forces code view to be collapsed. */
-		'collapse' : false,
-		
-		/** Enables or disables automatic links. */
-		'auto-links' : true,
-		
-		/** Gets or sets light mode. Equavalent to turning off gutter and toolbar. */
-		'light' : false,
-		
-		'html-script' : false
-	},
-	
-	config : {
-		space : '&nbsp;',
-		
-		/** Enables use of <SCRIPT type="syntaxhighlighter" /> tags. */
-		useScriptTags : true,
-		
-		/** Blogger mode flag. */
-		bloggerMode : false,
-		
-		stripBrs : false,
-		
-		/** Name of the tag that SyntaxHighlighter will automatically look for. */
-		tagName : 'pre',
-		
-		strings : {
-			expandSource : 'expand source',
-			help : '?',
-			alert: 'SyntaxHighlighter\n\n',
-			noBrush : 'Can\'t find brush for: ',
-			brushNotHtmlScript : 'Brush wasn\'t configured for html-script option: ',
-			
-			// this is populated by the build script
-			aboutDialog : '@ABOUT@'
-		}
-	},
-	
-	/** Internal 'global' variables. */
-	vars : {
-		discoveredBrushes : null,
-		highlighters : {}
-	},
-	
-	/** This object is populated by user included external brush files. */
-	brushes : {},
-
-	/** Common regular expressions. */
-	regexLib : {
-		multiLineCComments			: /\/\*[\s\S]*?\*\//gm,
-		singleLineCComments			: /\/\/.*$/gm,
-		singleLinePerlComments		: /#.*$/gm,
-		doubleQuotedString			: /"([^\\"\n]|\\.)*"/g,
-		singleQuotedString			: /'([^\\'\n]|\\.)*'/g,
-		multiLineDoubleQuotedString	: new XRegExp('"([^\\\\"]|\\\\.)*"', 'gs'),
-		multiLineSingleQuotedString	: new XRegExp("'([^\\\\']|\\\\.)*'", 'gs'),
-		xmlComments					: /(&lt;|<)!--[\s\S]*?--(&gt;|>)/gm,
-		url							: /\w+:\/\/[\w-.\/?%&=:@;]*/g,
-		
-		/** <?= ?> tags. */
-		phpScriptTags 				: { left: /(&lt;|<)\?=?/g, right: /\?(&gt;|>)/g },
-		
-		/** <%= %> tags. */
-		aspScriptTags				: { left: /(&lt;|<)%=?/g, right: /%(&gt;|>)/g },
-		
-		/** <script></script> tags. */
-		scriptScriptTags			: { left: /(&lt;|<)\s*script.*?(&gt;|>)/gi, right: /(&lt;|<)\/\s*script\s*(&gt;|>)/gi }
-	},
-
-	toolbar: {
-		/**
-		 * Generates HTML markup for the toolbar.
-		 * @param {Highlighter} highlighter Highlighter instance.
-		 * @return {String} Returns HTML markup.
-		 */
-		getHtml: function(highlighter)
-		{
-			var html = '<div class="toolbar">',
-				items = sh.toolbar.items,
-				list = items.list
-				;
-			
-			function defaultGetHtml(highlighter, name)
-			{
-				return sh.toolbar.getButtonHtml(highlighter, name, sh.config.strings[name]);
-			};
-			
-			for (var i = 0; i < list.length; i++)
-				html += (items[list[i]].getHtml || defaultGetHtml)(highlighter, list[i]);
-			
-			html += '</div>';
-			
-			return html;
-		},
-		
-		/**
-		 * Generates HTML markup for a regular button in the toolbar.
-		 * @param {Highlighter} highlighter Highlighter instance.
-		 * @param {String} commandName		Command name that would be executed.
-		 * @param {String} label			Label text to display.
-		 * @return {String}					Returns HTML markup.
-		 */
-		getButtonHtml: function(highlighter, commandName, label)
-		{
-			return '<span><a href="#" class="toolbar_item'
-				+ ' command_' + commandName
-				+ ' ' + commandName
-				+ '">' + label + '</a></span>'
-				;
-		},
-		
-		/**
-		 * Event handler for a toolbar anchor.
-		 */
-		handler: function(e)
-		{
-			var target = e.target,
-				className = target.className || ''
-				;
-
-			function getValue(name)
-			{
-				var r = new RegExp(name + '_(\\w+)'),
-					match = r.exec(className)
-					;
-
-				return match ? match[1] : null;
-			};
-			
-			var highlighter = getHighlighterById(findParentElement(target, '.syntaxhighlighter').id),
-				commandName = getValue('command')
-				;
-			
-			// execute the toolbar command
-			if (highlighter && commandName)
-				sh.toolbar.items[commandName].execute(highlighter);
-
-			// disable default A click behaviour
-			e.preventDefault();
-		},
-		
-		/** Collection of toolbar items. */
-		items : {
-			// Ordered lis of items in the toolbar. Can't expect `for (var n in items)` to be consistent.
-			list: ['expandSource', 'help'],
-
-			expandSource: {
-				getHtml: function(highlighter)
-				{
-					if (highlighter.getParam('collapse') != true)
-						return '';
-						
-					var title = highlighter.getParam('title');
-					return sh.toolbar.getButtonHtml(highlighter, 'expandSource', title ? title : sh.config.strings.expandSource);
-				},
-			
-				execute: function(highlighter)
-				{
-					var div = getHighlighterDivById(highlighter.id);
-					removeClass(div, 'collapsed');
-				}
-			},
-
-			/** Command to display the about dialog window. */
-			help: {
-				execute: function(highlighter)
-				{	
-					var wnd = popup('', '_blank', 500, 250, 'scrollbars=0'),
-						doc = wnd.document
-						;
-					
-					doc.write(sh.config.strings.aboutDialog);
-					doc.close();
-					wnd.focus();
-				}
-			}
-		}
-	},
-
-	/**
-	 * Finds all elements on the page which should be processes by SyntaxHighlighter.
-	 *
-	 * @param {Object} globalParams		Optional parameters which override element's 
-	 * 									parameters. Only used if element is specified.
-	 * 
-	 * @param {Object} element	Optional element to highlight. If none is
-	 * 							provided, all elements in the current document 
-	 * 							are returned which qualify.
-	 *
-	 * @return {Array}	Returns list of <code>{ target: DOMElement, params: Object }</code> objects.
-	 */
-	findElements: function(globalParams, element)
-	{
-		var elements = element ? [element] : toArray(document.getElementsByTagName(sh.config.tagName)), 
-			conf = sh.config,
-			result = []
-			;
-
-		// support for <SCRIPT TYPE="syntaxhighlighter" /> feature
-		if (conf.useScriptTags)
-			elements = elements.concat(getSyntaxHighlighterScriptTags());
-
-		if (elements.length === 0) 
-			return result;
-	
-		for (var i = 0; i < elements.length; i++) 
-		{
-			var item = {
-				target: elements[i], 
-				// local params take precedence over globals
-				params: merge(globalParams, parseParams(elements[i].className))
-			};
-
-			if (item.params['brush'] == null)
-				continue;
-				
-			result.push(item);
-		}
-		
-		return result;
-	},
-
-	/**
-	 * Shorthand to highlight all elements on the page that are marked as 
-	 * SyntaxHighlighter source code.
-	 * 
-	 * @param {Object} globalParams		Optional parameters which override element's 
-	 * 									parameters. Only used if element is specified.
-	 * 
-	 * @param {Object} element	Optional element to highlight. If none is
-	 * 							provided, all elements in the current document 
-	 * 							are highlighted.
-	 */ 
-	highlight: function(globalParams, element)
-	{
-		var elements = this.findElements(globalParams, element),
-			propertyName = 'innerHTML', 
-			highlighter = null,
-			conf = sh.config
-			;
-
-		if (elements.length === 0) 
-			return;
-	
-		for (var i = 0; i < elements.length; i++) 
-		{
-			var element = elements[i],
-				target = element.target,
-				params = element.params,
-				brushName = params.brush,
-				code
-				;
-
-			if (brushName == null)
-				continue;
-
-			// Instantiate a brush
-			if (params['html-script'] == 'true' || sh.defaults['html-script'] == true) 
-			{
-				highlighter = new sh.HtmlScript(brushName);
-				brushName = 'htmlscript';
-			}
-			else
-			{
-				var brush = findBrush(brushName);
-				
-				if (brush)
-					highlighter = new brush();
-				else
-					continue;
-			}
-			
-			code = target[propertyName];
-			
-			// remove CDATA from <SCRIPT/> tags if it's present
-			if (conf.useScriptTags)
-				code = stripCData(code);
-				
-			// Inject title if the attribute is present
-			if ((target.title || '') != '')
-				params.title = target.title;
-				
-			params['brush'] = brushName;
-			highlighter.init(params);
-			element = highlighter.getDiv(code);
-			
-			// carry over ID
-			if ((target.id || '') != '')
-				element.id = target.id;
-			
-			target.parentNode.replaceChild(element, target);
-		}
-	},
-
-	/**
-	 * Main entry point for the SyntaxHighlighter.
-	 * @param {Object} params Optional params to apply to all highlighted elements.
-	 */
-	all: function(params)
-	{
-		attachEvent(
-			window,
-			'load',
-			function() { sh.highlight(params); }
-		);
-	}
-}; // end of sh
-
-/**
- * Checks if target DOM elements has specified CSS class.
- * @param {DOMElement} target Target DOM element to check.
- * @param {String} className Name of the CSS class to check for.
- * @return {Boolean} Returns true if class name is present, false otherwise.
- */
-function hasClass(target, className)
-{
-	return target.className.indexOf(className) != -1;
-};
-
-/**
- * Adds CSS class name to the target DOM element.
- * @param {DOMElement} target Target DOM element.
- * @param {String} className New CSS class to add.
- */
-function addClass(target, className)
-{
-	if (!hasClass(target, className))
-		target.className += ' ' + className;
-};
-
-/**
- * Removes CSS class name from the target DOM element.
- * @param {DOMElement} target Target DOM element.
- * @param {String} className CSS class to remove.
- */
-function removeClass(target, className)
-{
-	target.className = target.className.replace(className, '');
-};
-
-/**
- * Converts the source to array object. Mostly used for function arguments and 
- * lists returned by getElementsByTagName() which aren't Array objects.
- * @param {List} source Source list.
- * @return {Array} Returns array.
- */
-function toArray(source)
-{
-	var result = [];
-	
-	for (var i = 0; i < source.length; i++) 
-		result.push(source[i]);
-		
-	return result;
-};
-
-/**
- * Splits block of text into lines.
- * @param {String} block Block of text.
- * @return {Array} Returns array of lines.
- */
-function splitLines(block)
-{
-	return block.split('\n');
-}
-
-/**
- * Generates HTML ID for the highlighter.
- * @param {String} highlighterId Highlighter ID.
- * @return {String} Returns HTML ID.
- */
-function getHighlighterId(id)
-{
-	var prefix = 'highlighter_';
-	return id.indexOf(prefix) == 0 ? id : prefix + id;
-};
-
-/**
- * Finds Highlighter instance by ID.
- * @param {String} highlighterId Highlighter ID.
- * @return {Highlighter} Returns instance of the highlighter.
- */
-function getHighlighterById(id)
-{
-	return sh.vars.highlighters[getHighlighterId(id)];
-};
-
-/**
- * Finds highlighter's DIV container.
- * @param {String} highlighterId Highlighter ID.
- * @return {Element} Returns highlighter's DIV element.
- */
-function getHighlighterDivById(id)
-{
-	return document.getElementById(getHighlighterId(id));
-};
-
-/**
- * Stores highlighter so that getHighlighterById() can do its thing. Each
- * highlighter must call this method to preserve itself.
- * @param {Highilghter} highlighter Highlighter instance.
- */
-function storeHighlighter(highlighter)
-{
-	sh.vars.highlighters[getHighlighterId(highlighter.id)] = highlighter;
-};
-
-/**
- * Looks for a child or parent node which has specified classname.
- * Equivalent to jQuery's $(container).find(".className")
- * @param {Element} target Target element.
- * @param {String} search Class name or node name to look for.
- * @param {Boolean} reverse If set to true, will go up the node tree instead of down.
- * @return {Element} Returns found child or parent element on null.
- */
-function findElement(target, search, reverse /* optional */)
-{
-	if (target == null)
-		return null;
-		
-	var nodes			= reverse != true ? target.childNodes : [ target.parentNode ],
-		propertyToFind	= { '#' : 'id', '.' : 'className' }[search.substr(0, 1)] || 'nodeName',
-		expectedValue,
-		found
-		;
-
-	expectedValue = propertyToFind != 'nodeName'
-		? search.substr(1)
-		: search.toUpperCase()
-		;
-		
-	// main return of the found node
-	if ((target[propertyToFind] || '').indexOf(expectedValue) != -1)
-		return target;
-	
-	for (var i = 0; nodes && i < nodes.length && found == null; i++)
-		found = findElement(nodes[i], search, reverse);
-	
-	return found;
-};
-
-/**
- * Looks for a parent node which has specified classname.
- * This is an alias to <code>findElement(container, className, true)</code>.
- * @param {Element} target Target element.
- * @param {String} className Class name to look for.
- * @return {Element} Returns found parent element on null.
- */
-function findParentElement(target, className)
-{
-	return findElement(target, className, true);
-};
-
-/**
- * Finds an index of element in the array.
- * @ignore
- * @param {Object} searchElement
- * @param {Number} fromIndex
- * @return {Number} Returns index of element if found; -1 otherwise.
- */
-function indexOf(array, searchElement, fromIndex)
-{
-	fromIndex = Math.max(fromIndex || 0, 0);
-
-	for (var i = fromIndex; i < array.length; i++)
-		if(array[i] == searchElement)
-			return i;
-	
-	return -1;
-};
-
-/**
- * Generates a unique element ID.
- */
-function guid(prefix)
-{
-	return (prefix || '') + Math.round(Math.random() * 1000000).toString();
-};
-
-/**
- * Merges two objects. Values from obj2 override values in obj1.
- * Function is NOT recursive and works only for one dimensional objects.
- * @param {Object} obj1 First object.
- * @param {Object} obj2 Second object.
- * @return {Object} Returns combination of both objects.
- */
-function merge(obj1, obj2)
-{
-	var result = {}, name;
-
-	for (name in obj1) 
-		result[name] = obj1[name];
-	
-	for (name in obj2) 
-		result[name] = obj2[name];
-		
-	return result;
-};
-
-/**
- * Attempts to convert string to boolean.
- * @param {String} value Input string.
- * @return {Boolean} Returns true if input was "true", false if input was "false" and value otherwise.
- */
-function toBoolean(value)
-{
-	var result = { "true" : true, "false" : false }[value];
-	return result == null ? value : result;
-};
-
-/**
- * Opens up a centered popup window.
- * @param {String} url		URL to open in the window.
- * @param {String} name		Popup name.
- * @param {int} width		Popup width.
- * @param {int} height		Popup height.
- * @param {String} options	window.open() options.
- * @return {Window}			Returns window instance.
- */
-function popup(url, name, width, height, options)
-{
-	var x = (screen.width - width) / 2,
-		y = (screen.height - height) / 2
-		;
-		
-	options +=	', left=' + x + 
-				', top=' + y +
-				', width=' + width +
-				', height=' + height
-		;
-	options = options.replace(/^,/, '');
-
-	var win = window.open(url, name, options);
-	win.focus();
-	return win;
-};
-
-/**
- * Adds event handler to the target object.
- * @param {Object} obj		Target object.
- * @param {String} type		Name of the event.
- * @param {Function} func	Handling function.
- */
-function attachEvent(obj, type, func, scope)
-{
-	function handler(e)
-	{
-		e = e || window.event;
-		
-		if (!e.target)
-		{
-			e.target = e.srcElement;
-			e.preventDefault = function()
-			{
-				this.returnValue = false;
-			};
-		}
-			
-		func.call(scope || window, e);
-	};
-	
-	if (obj.attachEvent) 
-	{
-		obj.attachEvent('on' + type, handler);
-	}
-	else 
-	{
-		obj.addEventListener(type, handler, false);
-	}
-};
-
-/**
- * Displays an alert.
- * @param {String} str String to display.
- */
-function alert(str)
-{
-	window.alert(sh.config.strings.alert + str);
-};
-
-/**
- * Finds a brush by its alias.
- *
- * @param {String} alias		Brush alias.
- * @param {Boolean} showAlert	Suppresses the alert if false.
- * @return {Brush}				Returns bursh constructor if found, null otherwise.
- */
-function findBrush(alias, showAlert)
-{
-	var brushes = sh.vars.discoveredBrushes,
-		result = null
-		;
-	
-	if (brushes == null) 
-	{
-		brushes = {};
-		
-		// Find all brushes
-		for (var brush in sh.brushes) 
-		{
-			var info = sh.brushes[brush],
-				aliases = info.aliases
-				;
-			
-			if (aliases == null) 
-				continue;
-			
-			// keep the brush name
-			info.brushName = brush.toLowerCase();
-			
-			for (var i = 0; i < aliases.length; i++) 
-				brushes[aliases[i]] = brush;
-		}
-		
-		sh.vars.discoveredBrushes = brushes;
-	}
-	
-	result = sh.brushes[brushes[alias]];
-
-	if (result == null && showAlert != false)
-		alert(sh.config.strings.noBrush + alias);
-	
-	return result;
-};
-
-/**
- * Executes a callback on each line and replaces each line with result from the callback.
- * @param {Object} str			Input string.
- * @param {Object} callback		Callback function taking one string argument and returning a string.
- */
-function eachLine(str, callback)
-{
-	var lines = splitLines(str);
-	
-	for (var i = 0; i < lines.length; i++)
-		lines[i] = callback(lines[i], i);
-		
-	return lines.join('\n');
-};
-
-/**
- * This is a special trim which only removes first and last empty lines
- * and doesn't affect valid leading space on the first line.
- * 
- * @param {String} str   Input string
- * @return {String}      Returns string without empty first and last lines.
- */
-function trimFirstAndLastLines(str)
-{
-	return str.replace(/^[ ]*[\n]+|[\n]*[ ]*$/g, '');
-};
-
-/**
- * Parses key/value pairs into hash object.
- * 
- * Understands the following formats:
- * - name: word;
- * - name: [word, word];
- * - name: "string";
- * - name: 'string';
- * 
- * For example:
- *   name1: value; name2: [value, value]; name3: 'value'
- *   
- * @param {String} str    Input string.
- * @return {Object}       Returns deserialized object.
- */
-function parseParams(str)
-{
-	var match, 
-		result = {},
-		arrayRegex = new XRegExp("^\\[(?<values>(.*?))\\]$"),
-		regex = new XRegExp(
-			"(?<name>[\\w-]+)" +
-			"\\s*:\\s*" +
-			"(?<value>" +
-				"[\\w-%#]+|" +		// word
-				"\\[.*?\\]|" +		// [] array
-				'".*?"|' +			// "" string
-				"'.*?'" +			// '' string
-			")\\s*;?",
-			"g"
-		)
-		;
-
-	while ((match = regex.exec(str)) != null) 
-	{
-		var value = match.value
-			.replace(/^['"]|['"]$/g, '') // strip quotes from end of strings
-			;
-		
-		// try to parse array value
-		if (value != null && arrayRegex.test(value))
-		{
-			var m = arrayRegex.exec(value);
-			value = m.values.length > 0 ? m.values.split(/\s*,\s*/) : [];
-		}
-		
-		result[match.name] = value;
-	}
-	
-	return result;
-};
-
-/**
- * Wraps each line of the string into <code/> tag with given style applied to it.
- * 
- * @param {String} str   Input string.
- * @param {String} css   Style name to apply to the string.
- * @return {String}      Returns input string with each line surrounded by <span/> tag.
- */
-function wrapLinesWithCode(str, css)
-{
-	if (str == null || str.length == 0 || str == '\n') 
-		return str;
-
-	str = str.replace(/</g, '&lt;');
-
-	// Replace two or more sequential spaces with &nbsp; leaving last space untouched.
-	str = str.replace(/ {2,}/g, function(m)
-	{
-		var spaces = '';
-		
-		for (var i = 0; i < m.length - 1; i++)
-			spaces += sh.config.space;
-		
-		return spaces + ' ';
-	});
-
-	// Split each line and apply <span class="...">...</span> to them so that
-	// leading spaces aren't included.
-	if (css != null) 
-		str = eachLine(str, function(line)
-		{
-			if (line.length == 0) 
-				return '';
-			
-			var spaces = '';
-			
-			line = line.replace(/^(&nbsp;| )+/, function(s)
-			{
-				spaces = s;
-				return '';
-			});
-			
-			if (line.length == 0) 
-				return spaces;
-			
-			return spaces + '<code class="' + css + '">' + line + '</code>';
-		});
-
-	return str;
-};
-
-/**
- * Pads number with zeros until it's length is the same as given length.
- * 
- * @param {Number} number	Number to pad.
- * @param {Number} length	Max string length with.
- * @return {String}			Returns a string padded with proper amount of '0'.
- */
-function padNumber(number, length)
-{
-	var result = number.toString();
-	
-	while (result.length < length)
-		result = '0' + result;
-	
-	return result;
-};
-
-/**
- * Replaces tabs with spaces.
- * 
- * @param {String} code		Source code.
- * @param {Number} tabSize	Size of the tab.
- * @return {String}			Returns code with all tabs replaces by spaces.
- */
-function processTabs(code, tabSize)
-{
-	var tab = '';
-	
-	for (var i = 0; i < tabSize; i++)
-		tab += ' ';
-
-	return code.replace(/\t/g, tab);
-};
-
-/**
- * Replaces tabs with smart spaces.
- * 
- * @param {String} code    Code to fix the tabs in.
- * @param {Number} tabSize Number of spaces in a column.
- * @return {String}        Returns code with all tabs replaces with roper amount of spaces.
- */
-function processSmartTabs(code, tabSize)
-{
-	var lines = splitLines(code),
-		tab = '\t',
-		spaces = ''
-		;
-	
-	// Create a string with 1000 spaces to copy spaces from... 
-	// It's assumed that there would be no indentation longer than that.
-	for (var i = 0; i < 50; i++) 
-		spaces += '                    '; // 20 spaces * 50
-			
-	// This function inserts specified amount of spaces in the string
-	// where a tab is while removing that given tab.
-	function insertSpaces(line, pos, count)
-	{
-		return line.substr(0, pos)
-			+ spaces.substr(0, count)
-			+ line.substr(pos + 1, line.length) // pos + 1 will get rid of the tab
-			;
-	};
-
-	// Go through all the lines and do the 'smart tabs' magic.
-	code = eachLine(code, function(line)
-	{
-		if (line.indexOf(tab) == -1) 
-			return line;
-		
-		var pos = 0;
-		
-		while ((pos = line.indexOf(tab)) != -1) 
-		{
-			// This is pretty much all there is to the 'smart tabs' logic.
-			// Based on the position within the line and size of a tab,
-			// calculate the amount of spaces we need to insert.
-			var spaces = tabSize - pos % tabSize;
-			line = insertSpaces(line, pos, spaces);
-		}
-		
-		return line;
-	});
-	
-	return code;
-};
-
-/**
- * Performs various string fixes based on configuration.
- */
-function fixInputString(str)
-{
-	var br = /<br\s*\/?>|&lt;br\s*\/?&gt;/gi;
-	
-	if (sh.config.bloggerMode == true)
-		str = str.replace(br, '\n');
-
-	if (sh.config.stripBrs == true)
-		str = str.replace(br, '');
-		
-	return str;
-};
-
-/**
- * Removes all white space at the begining and end of a string.
- * 
- * @param {String} str   String to trim.
- * @return {String}      Returns string without leading and following white space characters.
- */
-function trim(str)
-{
-	return str.replace(/^\s+|\s+$/g, '');
-};
-
-/**
- * Unindents a block of text by the lowest internal indent amount.
- * @param {String} str   Text to unindent.
- * @return {String}      Returns unindented text block.
- */
-function unindent(str)
-{
-	var lines = splitLines(fixInputString(str)),
-		indents = new Array(),
-		regex = /^\s*/,
-		min = 1000
-		;
-	
-	// go through every line and check for internal number of indents
-	for (var i = 0; i < lines.length && min > 0; i++) 
-	{
-		var line = lines[i];
-		
-		if (trim(line).length == 0) 
-			continue;
-		
-		var matches = regex.exec(line);
-		
-		// In the event that just one line doesn't have leading white space
-		// we can't unindent anything, so bail completely.
-		if (matches == null) 
-			return str;
-			
-		min = Math.min(matches[0].length, min);
-	}
-	
-	// trim minimum internal number of white space from the begining of every line
-	if (min > 0) 
-		for (var i = 0; i < lines.length; i++) 
-			lines[i] = lines[i].substr(min);
-	
-	return lines.join('\n');
-};
-
-/**
- * Callback method for Array.sort() which sorts matches by
- * index position and then by length.
- * 
- * @param {Match} m1	Left object.
- * @param {Match} m2    Right object.
- * @return {Number}     Returns -1, 0 or -1 as a comparison result.
- */
-function matchesSortCallback(m1, m2)
-{
-	// sort matches by index first
-	if(m1.index < m2.index)
-		return -1;
-	else if(m1.index > m2.index)
-		return 1;
-	else
-	{
-		// if index is the same, sort by length
-		if(m1.length < m2.length)
-			return -1;
-		else if(m1.length > m2.length)
-			return 1;
-	}
-	
-	return 0;
-};
-
-/**
- * Executes given regular expression on provided code and returns all
- * matches that are found.
- * 
- * @param {String} code    Code to execute regular expression on.
- * @param {Object} regex   Regular expression item info from <code>regexList</code> collection.
- * @return {Array}         Returns a list of Match objects.
- */ 
-function getMatches(code, regexInfo)
-{
-	function defaultAdd(match, regexInfo)
-	{
-		return match[0];
-	};
-	
-	var index = 0,
-		match = null,
-		matches = [],
-		func = regexInfo.func ? regexInfo.func : defaultAdd
-		;
-	
-	while((match = regexInfo.regex.exec(code)) != null)
-	{
-		var resultMatch = func(match, regexInfo);
-		
-		if (typeof(resultMatch) == 'string')
-			resultMatch = [new sh.Match(resultMatch, match.index, regexInfo.css)];
-
-		matches = matches.concat(resultMatch);
-	}
-	
-	return matches;
-};
-
-/**
- * Turns all URLs in the code into <a/> tags.
- * @param {String} code Input code.
- * @return {String} Returns code with </a> tags.
- */
-function processUrls(code)
-{
-	var gt = /(.*)((&gt;|&lt;).*)/;
-	
-	return code.replace(sh.regexLib.url, function(m)
-	{
-		var suffix = '',
-			match = null
-			;
-		
-		// We include &lt; and &gt; in the URL for the internal cases like <http://google.com>
-		// The problem is that they get transformed into &lt;http://google.com&gt;
-		// Where as &gt; easily looks like part of the URL string.
-	
-		if (match = gt.exec(m))
-		{
-			m = match[1];
-			suffix = match[2];
-		}
-		
-		return '<a href="' + m + '">' + m + '</a>' + suffix;
-	});
-};
-
-/**
- * Finds all <SCRIPT TYPE="syntaxhighlighter" /> elementss.
- * @return {Array} Returns array of all found SyntaxHighlighter tags.
- */
-function getSyntaxHighlighterScriptTags()
-{
-	var tags = document.getElementsByTagName('script'),
-		result = []
-		;
-	
-	for (var i = 0; i < tags.length; i++)
-		if (tags[i].type == 'syntaxhighlighter')
-			result.push(tags[i]);
-			
-	return result;
-};
-
-/**
- * Strips <![CDATA[]]> from <SCRIPT /> content because it should be used
- * there in most cases for XHTML compliance.
- * @param {String} original	Input code.
- * @return {String} Returns code without leading <![CDATA[]]> tags.
- */
-function stripCData(original)
-{
-	var left = '<![CDATA[',
-		right = ']]>',
-		// for some reason IE inserts some leading blanks here
-		copy = trim(original),
-		changed = false,
-		leftLength = left.length,
-		rightLength = right.length
-		;
-	
-	if (copy.indexOf(left) == 0)
-	{
-		copy = copy.substring(leftLength);
-		changed = true;
-	}
-	
-	var copyLength = copy.length;
-	
-	if (copy.indexOf(right) == copyLength - rightLength)
-	{
-		copy = copy.substring(0, copyLength - rightLength);
-		changed = true;
-	}
-	
-	return changed ? copy : original;
-};
-
-
-/**
- * Quick code mouse double click handler.
- */
-function quickCodeHandler(e)
-{
-	var target = e.target,
-		highlighterDiv = findParentElement(target, '.syntaxhighlighter'),
-		container = findParentElement(target, '.container'),
-		textarea = document.createElement('textarea'),
-		highlighter
-		;
-
-	if (!container || !highlighterDiv || findElement(container, 'textarea'))
-		return;
-
-	highlighter = getHighlighterById(highlighterDiv.id);
-	
-	// add source class name
-	addClass(highlighterDiv, 'source');
-
-	// Have to go over each line and grab it's text, can't just do it on the
-	// container because Firefox loses all \n where as Webkit doesn't.
-	var lines = container.childNodes,
-		code = []
-		;
-	
-	for (var i = 0; i < lines.length; i++)
-		code.push(lines[i].innerText || lines[i].textContent);
-	
-	// using \r instead of \r or \r\n makes this work equally well on IE, FF and Webkit
-	code = code.join('\r');
-	
-	// inject <textarea/> tag
-	textarea.appendChild(document.createTextNode(code));
-	container.appendChild(textarea);
-	
-	// preselect all text
-	textarea.focus();
-	textarea.select();
-	
-	// set up handler for lost focus
-	attachEvent(textarea, 'blur', function(e)
-	{
-		textarea.parentNode.removeChild(textarea);
-		removeClass(highlighterDiv, 'source');
-	});
-};
-
-/**
- * Match object.
- */
-sh.Match = function(value, index, css)
-{
-	this.value = value;
-	this.index = index;
-	this.length = value.length;
-	this.css = css;
-	this.brushName = null;
-};
-
-sh.Match.prototype.toString = function()
-{
-	return this.value;
-};
-
-/**
- * Simulates HTML code with a scripting language embedded.
- * 
- * @param {String} scriptBrushName Brush name of the scripting language.
- */
-sh.HtmlScript = function(scriptBrushName)
-{
-	var brushClass = findBrush(scriptBrushName),
-		scriptBrush,
-		xmlBrush = new sh.brushes.Xml(),
-		bracketsRegex = null,
-		ref = this,
-		methodsToExpose = 'getDiv getHtml init'.split(' ')
-		;
-
-	if (brushClass == null)
-		return;
-	
-	scriptBrush = new brushClass();
-	
-	for(var i = 0; i < methodsToExpose.length; i++)
-		// make a closure so we don't lose the name after i changes
-		(function() {
-			var name = methodsToExpose[i];
-			
-			ref[name] = function()
-			{
-				return xmlBrush[name].apply(xmlBrush, arguments);
-			};
-		})();
-	
-	if (scriptBrush.htmlScript == null)
-	{
-		alert(sh.config.strings.brushNotHtmlScript + scriptBrushName);
-		return;
-	}
-	
-	xmlBrush.regexList.push(
-		{ regex: scriptBrush.htmlScript.code, func: process }
-	);
-	
-	function offsetMatches(matches, offset)
-	{
-		for (var j = 0; j < matches.length; j++) 
-			matches[j].index += offset;
-	}
-	
-	function process(match, info)
-	{
-		var code = match.code,
-			matches = [],
-			regexList = scriptBrush.regexList,
-			offset = match.index + match.left.length,
-			htmlScript = scriptBrush.htmlScript,
-			result
-			;
-
-		// add all matches from the code
-		for (var i = 0; i < regexList.length; i++)
-		{
-			result = getMatches(code, regexList[i]);
-			offsetMatches(result, offset);
-			matches = matches.concat(result);
-		}
-		
-		// add left script bracket
-		if (htmlScript.left != null && match.left != null)
-		{
-			result = getMatches(match.left, htmlScript.left);
-			offsetMatches(result, match.index);
-			matches = matches.concat(result);
-		}
-		
-		// add right script bracket
-		if (htmlScript.right != null && match.right != null)
-		{
-			result = getMatches(match.right, htmlScript.right);
-			offsetMatches(result, match.index + match[0].lastIndexOf(match.right));
-			matches = matches.concat(result);
-		}
-		
-		for (var j = 0; j < matches.length; j++)
-			matches[j].brushName = brushClass.brushName;
-			
-		return matches;
-	}
-};
-
-/**
- * Main Highlither class.
- * @constructor
- */
-sh.Highlighter = function()
-{
-	// not putting any code in here because of the prototype inheritance
-};
-
-sh.Highlighter.prototype = {
-	/**
-	 * Returns value of the parameter passed to the highlighter.
-	 * @param {String} name				Name of the parameter.
-	 * @param {Object} defaultValue		Default value.
-	 * @return {Object}					Returns found value or default value otherwise.
-	 */
-	getParam: function(name, defaultValue)
-	{
-		var result = this.params[name];
-		return toBoolean(result == null ? defaultValue : result);
-	},
-	
-	/**
-	 * Shortcut to document.createElement().
-	 * @param {String} name		Name of the element to create (DIV, A, etc).
-	 * @return {HTMLElement}	Returns new HTML element.
-	 */
-	create: function(name)
-	{
-		return document.createElement(name);
-	},
-	
-	/**
-	 * Applies all regular expression to the code and stores all found
-	 * matches in the `this.matches` array.
-	 * @param {Array} regexList		List of regular expressions.
-	 * @param {String} code			Source code.
-	 * @return {Array}				Returns list of matches.
-	 */
-	findMatches: function(regexList, code)
-	{
-		var result = [];
-		
-		if (regexList != null)
-			for (var i = 0; i < regexList.length; i++) 
-				// BUG: length returns len+1 for array if methods added to prototype chain (oising@gmail.com)
-				if (typeof (regexList[i]) == "object")
-					result = result.concat(getMatches(code, regexList[i]));
-		
-		// sort and remove nested the matches
-		return this.removeNestedMatches(result.sort(matchesSortCallback));
-	},
-	
-	/**
-	 * Checks to see if any of the matches are inside of other matches. 
-	 * This process would get rid of highligted strings inside comments, 
-	 * keywords inside strings and so on.
-	 */
-	removeNestedMatches: function(matches)
-	{
-		// Optimized by Jose Prado (http://joseprado.com)
-		for (var i = 0; i < matches.length; i++) 
-		{ 
-			if (matches[i] === null)
-				continue;
-			
-			var itemI = matches[i],
-				itemIEndPos = itemI.index + itemI.length
-				;
-			
-			for (var j = i + 1; j < matches.length && matches[i] !== null; j++) 
-			{
-				var itemJ = matches[j];
-				
-				if (itemJ === null) 
-					continue;
-				else if (itemJ.index > itemIEndPos) 
-					break;
-				else if (itemJ.index == itemI.index && itemJ.length > itemI.length)
-					matches[i] = null;
-				else if (itemJ.index >= itemI.index && itemJ.index < itemIEndPos) 
-					matches[j] = null;
-			}
-		}
-		
-		return matches;
-	},
-	
-	/**
-	 * Creates an array containing integer line numbers starting from the 'first-line' param.
-	 * @return {Array} Returns array of integers.
-	 */
-	figureOutLineNumbers: function(code)
-	{
-		var lines = [],
-			firstLine = parseInt(this.getParam('first-line'))
-			;
-		
-		eachLine(code, function(line, index)
-		{
-			lines.push(index + firstLine);
-		});
-		
-		return lines;
-	},
-	
-	/**
-	 * Determines if specified line number is in the highlighted list.
-	 */
-	isLineHighlighted: function(lineNumber)
-	{
-		var list = this.getParam('highlight', []);
-		
-		if (typeof(list) != 'object' && list.push == null) 
-			list = [ list ];
-		
-		return indexOf(list, lineNumber.toString()) != -1;
-	},
-	
-	/**
-	 * Generates HTML markup for a single line of code while determining alternating line style.
-	 * @param {Integer} lineNumber	Line number.
-	 * @param {String} code Line	HTML markup.
-	 * @return {String}				Returns HTML markup.
-	 */
-	getLineHtml: function(lineIndex, lineNumber, code)
-	{
-		var classes = [
-			'line',
-			'number' + lineNumber,
-			'index' + lineIndex,
-			'alt' + (lineNumber % 2 == 0 ? 1 : 2).toString()
-		];
-		
-		if (this.isLineHighlighted(lineNumber))
-		 	classes.push('highlighted');
-		
-		if (lineNumber == 0)
-			classes.push('break');
-			
-		return '<div class="' + classes.join(' ') + '">' + code + '</div>';
-	},
-	
-	/**
-	 * Generates HTML markup for line number column.
-	 * @param {String} code			Complete code HTML markup.
-	 * @param {Array} lineNumbers	Calculated line numbers.
-	 * @return {String}				Returns HTML markup.
-	 */
-	getLineNumbersHtml: function(code, lineNumbers)
-	{
-		var html = '',
-			count = splitLines(code).length,
-			firstLine = parseInt(this.getParam('first-line')),
-			pad = this.getParam('pad-line-numbers')
-			;
-		
-		if (pad == true)
-			pad = (firstLine + count - 1).toString().length;
-		else if (isNaN(pad) == true)
-			pad = 0;
-			
-		for (var i = 0; i < count; i++)
-		{
-			var lineNumber = lineNumbers ? lineNumbers[i] : firstLine + i,
-				code = lineNumber == 0 ? sh.config.space : padNumber(lineNumber, pad)
-				;
-				
-			html += this.getLineHtml(i, lineNumber, code);
-		}
-		
-		return html;
-	},
-	
-	/**
-	 * Splits block of text into individual DIV lines.
-	 * @param {String} code			Code to highlight.
-	 * @param {Array} lineNumbers	Calculated line numbers.
-	 * @return {String}				Returns highlighted code in HTML form.
-	 */
-	getCodeLinesHtml: function(html, lineNumbers)
-	{
-		html = trim(html);
-		
-		var lines = splitLines(html),
-			padLength = this.getParam('pad-line-numbers'),
-			firstLine = parseInt(this.getParam('first-line')),
-			html = '',
-			brushName = this.getParam('brush')
-			;
-
-		for (var i = 0; i < lines.length; i++)
-		{
-			var line = lines[i],
-				indent = /^(&nbsp;|\s)+/.exec(line),
-				spaces = null,
-				lineNumber = lineNumbers ? lineNumbers[i] : firstLine + i;
-				;
-
-			if (indent != null)
-			{
-				spaces = indent[0].toString();
-				line = line.substr(spaces.length);
-				spaces = spaces.replace(' ', sh.config.space);
-			}
-
-			line = trim(line);
-			
-			if (line.length == 0)
-				line = sh.config.space;
-			
-			html += this.getLineHtml(
-				i,
-				lineNumber, 
-				(spaces != null ? '<code class="' + brushName + ' spaces">' + spaces + '</code>' : '') + line
-			);
-		}
-		
-		return html;
-	},
-	
-	/**
-	 * Returns HTML for the table title or empty string if title is null.
-	 */
-	getTitleHtml: function(title)
-	{
-		return title ? '<caption>' + title + '</caption>' : '';
-	},
-	
-	/**
-	 * Finds all matches in the source code.
-	 * @param {String} code		Source code to process matches in.
-	 * @param {Array} matches	Discovered regex matches.
-	 * @return {String} Returns formatted HTML with processed mathes.
-	 */
-	getMatchesHtml: function(code, matches)
-	{
-		var pos = 0, 
-			result = '',
-			brushName = this.getParam('brush', '')
-			;
-		
-		function getBrushNameCss(match)
-		{
-			var result = match ? (match.brushName || brushName) : brushName;
-			return result ? result + ' ' : '';
-		};
-		
-		// Finally, go through the final list of matches and pull the all
-		// together adding everything in between that isn't a match.
-		for (var i = 0; i < matches.length; i++) 
-		{
-			var match = matches[i],
-				matchBrushName
-				;
-			
-			if (match === null || match.length === 0) 
-				continue;
-			
-			matchBrushName = getBrushNameCss(match);
-			
-			result += wrapLinesWithCode(code.substr(pos, match.index - pos), matchBrushName + 'plain')
-					+ wrapLinesWithCode(match.value, matchBrushName + match.css)
-					;
-
-			pos = match.index + match.length + (match.offset || 0);
-		}
-
-		// don't forget to add whatever's remaining in the string
-		result += wrapLinesWithCode(code.substr(pos), getBrushNameCss() + 'plain');
-
-		return result;
-	},
-	
-	/**
-	 * Generates HTML markup for the whole syntax highlighter.
-	 * @param {String} code Source code.
-	 * @return {String} Returns HTML markup.
-	 */
-	getHtml: function(code)
-	{
-		var html = '',
-			classes = [ 'syntaxhighlighter' ],
-			tabSize,
-			matches,
-			lineNumbers
-			;
-		
-		// process light mode
-		if (this.getParam('light') == true)
-			this.params.toolbar = this.params.gutter = false;
-
-		className = 'syntaxhighlighter';
-
-		if (this.getParam('collapse') == true)
-			classes.push('collapsed');
-		
-		if ((gutter = this.getParam('gutter')) == false)
-			classes.push('nogutter');
-
-		// add custom user style name
-		classes.push(this.getParam('class-name'));
-
-		// add brush alias to the class name for custom CSS
-		classes.push(this.getParam('brush'));
-
-		code = trimFirstAndLastLines(code)
-			.replace(/\r/g, ' ') // IE lets these buggers through
-			;
-
-		tabSize = this.getParam('tab-size');
-
-		// replace tabs with spaces
-		code = this.getParam('smart-tabs') == true
-			? processSmartTabs(code, tabSize)
-			: processTabs(code, tabSize)
-			;
-
-		// unindent code by the internal indentation
-		code = unindent(code);
-
-		if (gutter)
-			lineNumbers = this.figureOutLineNumbers(code);
-		
-		// find matches in the code using brushes regex list
-		matches = this.findMatches(this.regexList, code);
-		// processes found matches into the html
-		html = this.getMatchesHtml(code, matches);
-		// finally, split all lines so that they wrap well
-		html = this.getCodeLinesHtml(html, lineNumbers);
-
-		// finally, process the links
-		if (this.getParam('auto-links'))
-			html = processUrls(html);
-		
-		if (typeof(navigator) != 'undefined' && navigator.userAgent && navigator.userAgent.match(/MSIE/))
-			classes.push('ie');
-		
-		html = 
-			'<div id="' + getHighlighterId(this.id) + '" class="' + classes.join(' ') + '">'
-				+ (this.getParam('toolbar') ? sh.toolbar.getHtml(this) : '')
-				+ '<table border="0" cellpadding="0" cellspacing="0">'
-					+ this.getTitleHtml(this.getParam('title'))
-					+ '<tbody>'
-						+ '<tr>'
-							+ (gutter ? '<td class="gutter">' + this.getLineNumbersHtml(code) + '</td>' : '')
-							+ '<td class="code">'
-								+ '<div class="container">'
-									+ html
-								+ '</div>'
-							+ '</td>'
-						+ '</tr>'
-					+ '</tbody>'
-				+ '</table>'
-			+ '</div>'
-			;
-			
-		return html;
-	},
-	
-	/**
-	 * Highlights the code and returns complete HTML.
-	 * @param {String} code     Code to highlight.
-	 * @return {Element}        Returns container DIV element with all markup.
-	 */
-	getDiv: function(code)
-	{
-		if (code === null) 
-			code = '';
-		
-		this.code = code;
-
-		var div = this.create('div');
-
-		// create main HTML
-		div.innerHTML = this.getHtml(code);
-		
-		// set up click handlers
-		if (this.getParam('toolbar'))
-			attachEvent(findElement(div, '.toolbar'), 'click', sh.toolbar.handler);
-		
-		if (this.getParam('quick-code'))
-			attachEvent(findElement(div, '.code'), 'dblclick', quickCodeHandler);
-		
-		return div;
-	},
-	
-	/**
-	 * Initializes the highlighter/brush.
-	 *
-	 * Constructor isn't used for initialization so that nothing executes during necessary
-	 * `new SyntaxHighlighter.Highlighter()` call when setting up brush inheritence.
-	 *
-	 * @param {Hash} params Highlighter parameters.
-	 */
-	init: function(params)
-	{
-		this.id = guid();
-		
-		// register this instance in the highlighters list
-		storeHighlighter(this);
-		
-		// local params take precedence over defaults
-		this.params = merge(sh.defaults, params || {})
-		
-		// process light mode
-		if (this.getParam('light') == true)
-			this.params.toolbar = this.params.gutter = false;
-	},
-	
-	/**
-	 * Converts space separated list of keywords into a regular expression string.
-	 * @param {String} str    Space separated keywords.
-	 * @return {String}       Returns regular expression string.
-	 */
-	getKeywords: function(str)
-	{
-		str = str
-			.replace(/^\s+|\s+$/g, '')
-			.replace(/\s+/g, '|')
-			;
-		
-		return '\\b(?:' + str + ')\\b';
-	},
-	
-	/**
-	 * Makes a brush compatible with the `html-script` functionality.
-	 * @param {Object} regexGroup Object containing `left` and `right` regular expressions.
-	 */
-	forHtmlScript: function(regexGroup)
-	{
-		this.htmlScript = {
-			left : { regex: regexGroup.left, css: 'script' },
-			right : { regex: regexGroup.right, css: 'script' },
-			code : new XRegExp(
-				"(?<left>" + regexGroup.left.source + ")" +
-				"(?<code>.*?)" +
-				"(?<right>" + regexGroup.right.source + ")",
-				"sgi"
-				)
-		};
-	}
-}; // end of Highlighter
-
-return sh;
-}(); // end of anonymous function
-
-// CommonJS
-typeof(exports) != 'undefined' ? exports.SyntaxHighlighter = SyntaxHighlighter : null;
diff --git a/javadoc/resources/sh/scripts/shLegacy.js b/javadoc/resources/sh/scripts/shLegacy.js
deleted file mode 100755
index 35c582c9..00000000
--- a/javadoc/resources/sh/scripts/shLegacy.js
+++ /dev/null
@@ -1,141 +0,0 @@
-var dp = {
-	SyntaxHighlighter : {}
-};
-
-dp.SyntaxHighlighter = {
-	parseParams: function(
-						input,
-						showGutter, 
-						showControls, 
-						collapseAll, 
-						firstLine, 
-						showColumns
-						)
-	{
-		function getValue(list, name)
-		{
-			var regex = new XRegExp('^' + name + '\\[(?<value>\\w+)\\]$', 'gi'),
-				match = null
-				;
-			
-			for (var i = 0; i < list.length; i++) 
-				if ((match = regex.exec(list[i])) != null)
-					return match.value;
-			
-			return null;
-		};
-		
-		function defaultValue(value, def)
-		{
-			return value != null ? value : def;
-		};
-		
-		function asString(value)
-		{
-			return value != null ? value.toString() : null;
-		};
-
-		var parts = input.split(':'),
-			brushName = parts[0],
-			options = {},
-			straight = { 'true' : true }
-			reverse = { 'true' : false },
-			result = null,
-			defaults = SyntaxHighlighter.defaults
-			;
-		
-		for (var i in parts)
-			options[parts[i]] = 'true';
-
-		showGutter = asString(defaultValue(showGutter, defaults.gutter));
-		showControls = asString(defaultValue(showControls, defaults.toolbar));
-		collapseAll = asString(defaultValue(collapseAll, defaults.collapse)); 
-		showColumns = asString(defaultValue(showColumns, defaults.ruler));
-		firstLine = asString(defaultValue(firstLine, defaults['first-line'])); 
-
-		return {
-			brush			: brushName,
-			gutter			: defaultValue(reverse[options.nogutter], showGutter),
-			toolbar			: defaultValue(reverse[options.nocontrols], showControls),
-			collapse		: defaultValue(straight[options.collapse], collapseAll),
-			// ruler			: defaultValue(straight[options.showcolumns], showColumns),
-			'first-line'	: defaultValue(getValue(parts, 'firstline'), firstLine)
-		};
-	},
-	
-	HighlightAll: function(
-						name, 
-						showGutter /* optional */, 
-						showControls /* optional */, 
-						collapseAll /* optional */, 
-						firstLine /* optional */, 
-						showColumns /* optional */
-						)
-	{
-		function findValue()
-		{
-			var a = arguments;
-			
-			for (var i = 0; i < a.length; i++) 
-			{
-				if (a[i] === null) 
-					continue;
-				
-				if (typeof(a[i]) == 'string' && a[i] != '') 
-					return a[i] + '';
-				
-				if (typeof(a[i]) == 'object' && a[i].value != '') 
-					return a[i].value + '';
-			}
-			
-			return null;
-		};
-
-		function findTagsByName(list, name, tagName)
-		{
-			var tags = document.getElementsByTagName(tagName);
-			
-			for (var i = 0; i < tags.length; i++) 
-				if (tags[i].getAttribute('name') == name) 
-					list.push(tags[i]);
-		}
-		
-		var elements = [],
-			highlighter = null,
-			registered = {},
-			propertyName = 'innerHTML'
-			;
-		
-		// for some reason IE doesn't find <pre/> by name, however it does see them just fine by tag name... 
-		findTagsByName(elements, name, 'pre');
-		findTagsByName(elements, name, 'textarea');
-
-		if (elements.length === 0)
-			return;
-		
-		for (var i = 0; i < elements.length; i++)
-		{
-			var element = elements[i],
-				params = findValue(
-					element.attributes['class'], element.className, 
-					element.attributes['language'], element.language
-					),
-				language = ''
-				;
-			
-			if (params === null) 
-				continue;
-
-			params = dp.SyntaxHighlighter.parseParams(
-				params,
-				showGutter, 
-				showControls, 
-				collapseAll, 
-				firstLine, 
-				showColumns
-				);
-
-			SyntaxHighlighter.highlight(params, element);
-		}
-	}
-};
diff --git a/javadoc/resources/sh/styles/shCore.css b/javadoc/resources/sh/styles/shCore.css
deleted file mode 100755
index e6bdba92..00000000
--- a/javadoc/resources/sh/styles/shCore.css
+++ /dev/null
@@ -1,210 +0,0 @@
-.syntaxhighlighter a,
-.syntaxhighlighter div,
-.syntaxhighlighter code,
-.syntaxhighlighter table,
-.syntaxhighlighter table td,
-.syntaxhighlighter table tr,
-.syntaxhighlighter table tbody,
-.syntaxhighlighter table thead,
-.syntaxhighlighter table caption,
-.syntaxhighlighter textarea {
-  -moz-border-radius: 0 0 0 0 !important;
-  -webkit-border-radius: 0 0 0 0 !important;
-  background: none !important;
-  border: 0 !important;
-  bottom: auto !important;
-  float: none !important;
-  height: auto !important;
-  left: auto !important;
-  line-height: 1.1em !important;
-  margin: 0 !important;
-  outline: 0 !important;
-  overflow: visible !important;
-  padding: 0 !important;
-  position: static !important;
-  right: auto !important;
-  text-align: left !important;
-  top: auto !important;
-  vertical-align: baseline !important;
-  width: auto !important;
-  box-sizing: content-box !important;
-  font-family: "Roboto Mono", "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important;
-  font-weight: normal !important;
-  font-style: normal !important;
-  font-size: 1em !important;
-  min-height: inherit !important;
-  min-height: auto !important;
-}
-
-.syntaxhighlighter {
-  width: 100% !important;
-  margin: 1em 0 1em 0 !important;
-  position: relative !important;
-  overflow: hidden !important;
-  font-size: 1em !important;
-}
-.syntaxhighlighter.source {
-  overflow: hidden !important;
-}
-.syntaxhighlighter .bold {
-  font-weight: bold !important;
-}
-.syntaxhighlighter .italic {
-  font-style: italic !important;
-}
-.syntaxhighlighter .line {
-  white-space: pre !important;
-}
-.syntaxhighlighter table {
-  width: 100% !important;
-}
-.syntaxhighlighter table caption {
-  text-align: left !important;
-  padding: .5em 0 0.5em 1em !important;
-}
-.syntaxhighlighter table td.code {
-  width: 100% !important;
-}
-.syntaxhighlighter table td.code .container {
-  position: relative !important;
-}
-.syntaxhighlighter table td.code .container textarea {
-  box-sizing: border-box !important;
-  position: absolute !important;
-  left: 0 !important;
-  top: 0 !important;
-  width: 100% !important;
-  height: 100% !important;
-  border: none !important;
-  background: white !important;
-  padding-left: 1em !important;
-  overflow: hidden !important;
-  white-space: pre !important;
-}
-.syntaxhighlighter table td.gutter .line {
-  text-align: right !important;
-  padding: 0 0.5em 0 1em !important;
-}
-.syntaxhighlighter table td.code .line {
-  padding: 0 1em !important;
-}
-.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {
-  padding-left: 0em !important;
-}
-.syntaxhighlighter.show {
-  display: block !important;
-}
-.syntaxhighlighter.collapsed table {
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  padding: 0.1em 0.8em 0em 0.8em !important;
-  font-size: 1em !important;
-  position: static !important;
-  width: auto !important;
-  height: auto !important;
-}
-.syntaxhighlighter.collapsed .toolbar span {
-  display: inline !important;
-  margin-right: 1em !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a {
-  padding: 0 !important;
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a.expandSource {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar {
-  position: absolute !important;
-  right: 1px !important;
-  top: 1px !important;
-  width: 11px !important;
-  height: 11px !important;
-  font-size: 10px !important;
-  z-index: 10 !important;
-}
-.syntaxhighlighter .toolbar span.title {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar a {
-  display: block !important;
-  text-align: center !important;
-  text-decoration: none !important;
-  padding-top: 1px !important;
-}
-.syntaxhighlighter .toolbar a.expandSource {
-  display: none !important;
-}
-.syntaxhighlighter.ie {
-  font-size: .9em !important;
-  padding: 1px 0 1px 0 !important;
-}
-.syntaxhighlighter.ie .toolbar {
-  line-height: 8px !important;
-}
-.syntaxhighlighter.ie .toolbar a {
-  padding-top: 0px !important;
-}
-.syntaxhighlighter.printing .line.alt1 .content,
-.syntaxhighlighter.printing .line.alt2 .content,
-.syntaxhighlighter.printing .line.highlighted .number,
-.syntaxhighlighter.printing .line.highlighted.alt1 .content,
-.syntaxhighlighter.printing .line.highlighted.alt2 .content {
-  background: none !important;
-}
-.syntaxhighlighter.printing .line .number {
-  color: #bbbbbb !important;
-}
-.syntaxhighlighter.printing .line .content {
-  color: black !important;
-}
-.syntaxhighlighter.printing .toolbar {
-  display: none !important;
-}
-.syntaxhighlighter.printing a {
-  text-decoration: none !important;
-}
-.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {
-  color: black !important;
-}
-.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {
-  color: #008200 !important;
-}
-.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {
-  color: blue !important;
-}
-.syntaxhighlighter.printing .keyword {
-  color: #006699 !important;
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .preprocessor {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .variable {
-  color: #aa7700 !important;
-}
-.syntaxhighlighter.printing .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter.printing .functions {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .constants {
-  color: #0066cc !important;
-}
-.syntaxhighlighter.printing .script {
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {
-  color: red !important;
-}
-.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {
-  color: black !important;
-}
diff --git a/javadoc/resources/sh/styles/shCoreDefault.css b/javadoc/resources/sh/styles/shCoreDefault.css
deleted file mode 100755
index 309cfe0b..00000000
--- a/javadoc/resources/sh/styles/shCoreDefault.css
+++ /dev/null
@@ -1,312 +0,0 @@
-.syntaxhighlighter a,
-.syntaxhighlighter div,
-.syntaxhighlighter code,
-.syntaxhighlighter table,
-.syntaxhighlighter table td,
-.syntaxhighlighter table tr,
-.syntaxhighlighter table tbody,
-.syntaxhighlighter table thead,
-.syntaxhighlighter table caption,
-.syntaxhighlighter textarea {
-  -moz-border-radius: 0 0 0 0 !important;
-  -webkit-border-radius: 0 0 0 0 !important;
-  background: none !important;
-  border: 0 !important;
-  bottom: auto !important;
-  float: none !important;
-  height: auto !important;
-  left: auto !important;
-  line-height: 1.1em !important;
-  margin: 0 !important;
-  outline: 0 !important;
-  overflow: visible !important;
-  padding: 0 !important;
-  position: static !important;
-  right: auto !important;
-  text-align: left !important;
-  top: auto !important;
-  vertical-align: baseline !important;
-  width: auto !important;
-  box-sizing: content-box !important;
-  font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important;
-  font-weight: normal !important;
-  font-style: normal !important;
-  font-size: 1em !important;
-  min-height: inherit !important;
-  min-height: auto !important;
-}
-
-.syntaxhighlighter {
-  width: 100% !important;
-  margin: 1em 0 1em 0 !important;
-  position: relative !important;
-  overflow: auto !important;
-  font-size: 1em !important;
-}
-.syntaxhighlighter.source {
-  overflow: hidden !important;
-}
-.syntaxhighlighter .bold {
-  font-weight: bold !important;
-}
-.syntaxhighlighter .italic {
-  font-style: italic !important;
-}
-.syntaxhighlighter .line {
-  white-space: pre !important;
-}
-.syntaxhighlighter table {
-  width: 100% !important;
-}
-.syntaxhighlighter table caption {
-  text-align: left !important;
-  padding: .5em 0 0.5em 1em !important;
-}
-.syntaxhighlighter table td.code {
-  width: 100% !important;
-}
-.syntaxhighlighter table td.code .container {
-  position: relative !important;
-}
-.syntaxhighlighter table td.code .container textarea {
-  box-sizing: border-box !important;
-  position: absolute !important;
-  left: 0 !important;
-  top: 0 !important;
-  width: 100% !important;
-  height: 100% !important;
-  border: none !important;
-  background: white !important;
-  padding-left: 1em !important;
-  overflow: hidden !important;
-  white-space: pre !important;
-}
-.syntaxhighlighter table td.gutter .line {
-  text-align: right !important;
-  padding: 0 0.5em 0 1em !important;
-}
-.syntaxhighlighter table td.code .line {
-  padding: 0 1em !important;
-}
-.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {
-  padding-left: 0em !important;
-}
-.syntaxhighlighter.show {
-  display: block !important;
-}
-.syntaxhighlighter.collapsed table {
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  padding: 0.1em 0.8em 0em 0.8em !important;
-  font-size: 1em !important;
-  position: static !important;
-  width: auto !important;
-  height: auto !important;
-}
-.syntaxhighlighter.collapsed .toolbar span {
-  display: inline !important;
-  margin-right: 1em !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a {
-  padding: 0 !important;
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a.expandSource {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar {
-  position: absolute !important;
-  right: 1px !important;
-  top: 1px !important;
-  width: 11px !important;
-  height: 11px !important;
-  font-size: 10px !important;
-  z-index: 10 !important;
-}
-.syntaxhighlighter .toolbar span.title {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar a {
-  display: block !important;
-  text-align: center !important;
-  text-decoration: none !important;
-  padding-top: 1px !important;
-}
-.syntaxhighlighter .toolbar a.expandSource {
-  display: none !important;
-}
-.syntaxhighlighter.ie {
-  font-size: .9em !important;
-  padding: 1px 0 1px 0 !important;
-}
-.syntaxhighlighter.ie .toolbar {
-  line-height: 8px !important;
-}
-.syntaxhighlighter.ie .toolbar a {
-  padding-top: 0px !important;
-}
-.syntaxhighlighter.printing .line.alt1 .content,
-.syntaxhighlighter.printing .line.alt2 .content,
-.syntaxhighlighter.printing .line.highlighted .number,
-.syntaxhighlighter.printing .line.highlighted.alt1 .content,
-.syntaxhighlighter.printing .line.highlighted.alt2 .content {
-  background: none !important;
-}
-.syntaxhighlighter.printing .line .number {
-  color: #bbbbbb !important;
-}
-.syntaxhighlighter.printing .line .content {
-  color: black !important;
-}
-.syntaxhighlighter.printing .toolbar {
-  display: none !important;
-}
-.syntaxhighlighter.printing a {
-  text-decoration: none !important;
-}
-.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {
-  color: black !important;
-}
-.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {
-  color: #008200 !important;
-}
-.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {
-  color: blue !important;
-}
-.syntaxhighlighter.printing .keyword {
-  color: #006699 !important;
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .preprocessor {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .variable {
-  color: #aa7700 !important;
-}
-.syntaxhighlighter.printing .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter.printing .functions {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .constants {
-  color: #0066cc !important;
-}
-.syntaxhighlighter.printing .script {
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {
-  color: red !important;
-}
-.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {
-  color: black !important;
-}
-
-.syntaxhighlighter {
-  background-color: white !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: white !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: white !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #e0e0e0 !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: black !important;
-}
-.syntaxhighlighter table caption {
-  color: black !important;
-}
-.syntaxhighlighter .gutter {
-  color: #afafaf !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 3px solid #6ce26c !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #6ce26c !important;
-  color: white !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: blue !important;
-  background: white !important;
-  border: 1px solid #6ce26c !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: blue !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: red !important;
-}
-.syntaxhighlighter .toolbar {
-  color: white !important;
-  background: #6ce26c !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: white !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: black !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: black !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #008200 !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: blue !important;
-}
-.syntaxhighlighter .keyword {
-  color: #006699 !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: gray !important;
-}
-.syntaxhighlighter .variable {
-  color: #aa7700 !important;
-}
-.syntaxhighlighter .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter .functions {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter .constants {
-  color: #0066cc !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: #006699 !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: gray !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: red !important;
-}
-
-.syntaxhighlighter .keyword {
-  font-weight: bold !important;
-}
diff --git a/javadoc/resources/sh/styles/shCoreDjango.css b/javadoc/resources/sh/styles/shCoreDjango.css
deleted file mode 100755
index 932a4017..00000000
--- a/javadoc/resources/sh/styles/shCoreDjango.css
+++ /dev/null
@@ -1,315 +0,0 @@
-.syntaxhighlighter a,
-.syntaxhighlighter div,
-.syntaxhighlighter code,
-.syntaxhighlighter table,
-.syntaxhighlighter table td,
-.syntaxhighlighter table tr,
-.syntaxhighlighter table tbody,
-.syntaxhighlighter table thead,
-.syntaxhighlighter table caption,
-.syntaxhighlighter textarea {
-  -moz-border-radius: 0 0 0 0 !important;
-  -webkit-border-radius: 0 0 0 0 !important;
-  background: none !important;
-  border: 0 !important;
-  bottom: auto !important;
-  float: none !important;
-  height: auto !important;
-  left: auto !important;
-  line-height: 1.1em !important;
-  margin: 0 !important;
-  outline: 0 !important;
-  overflow: visible !important;
-  padding: 0 !important;
-  position: static !important;
-  right: auto !important;
-  text-align: left !important;
-  top: auto !important;
-  vertical-align: baseline !important;
-  width: auto !important;
-  box-sizing: content-box !important;
-  font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important;
-  font-weight: normal !important;
-  font-style: normal !important;
-  font-size: 1em !important;
-  min-height: inherit !important;
-  min-height: auto !important;
-}
-
-.syntaxhighlighter {
-  width: 100% !important;
-  margin: 1em 0 1em 0 !important;
-  position: relative !important;
-  overflow: auto !important;
-  font-size: 1em !important;
-}
-.syntaxhighlighter.source {
-  overflow: hidden !important;
-}
-.syntaxhighlighter .bold {
-  font-weight: bold !important;
-}
-.syntaxhighlighter .italic {
-  font-style: italic !important;
-}
-.syntaxhighlighter .line {
-  white-space: pre !important;
-}
-.syntaxhighlighter table {
-  width: 100% !important;
-}
-.syntaxhighlighter table caption {
-  text-align: left !important;
-  padding: .5em 0 0.5em 1em !important;
-}
-.syntaxhighlighter table td.code {
-  width: 100% !important;
-}
-.syntaxhighlighter table td.code .container {
-  position: relative !important;
-}
-.syntaxhighlighter table td.code .container textarea {
-  box-sizing: border-box !important;
-  position: absolute !important;
-  left: 0 !important;
-  top: 0 !important;
-  width: 100% !important;
-  height: 100% !important;
-  border: none !important;
-  background: white !important;
-  padding-left: 1em !important;
-  overflow: hidden !important;
-  white-space: pre !important;
-}
-.syntaxhighlighter table td.gutter .line {
-  text-align: right !important;
-  padding: 0 0.5em 0 1em !important;
-}
-.syntaxhighlighter table td.code .line {
-  padding: 0 1em !important;
-}
-.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {
-  padding-left: 0em !important;
-}
-.syntaxhighlighter.show {
-  display: block !important;
-}
-.syntaxhighlighter.collapsed table {
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  padding: 0.1em 0.8em 0em 0.8em !important;
-  font-size: 1em !important;
-  position: static !important;
-  width: auto !important;
-  height: auto !important;
-}
-.syntaxhighlighter.collapsed .toolbar span {
-  display: inline !important;
-  margin-right: 1em !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a {
-  padding: 0 !important;
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a.expandSource {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar {
-  position: absolute !important;
-  right: 1px !important;
-  top: 1px !important;
-  width: 11px !important;
-  height: 11px !important;
-  font-size: 10px !important;
-  z-index: 10 !important;
-}
-.syntaxhighlighter .toolbar span.title {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar a {
-  display: block !important;
-  text-align: center !important;
-  text-decoration: none !important;
-  padding-top: 1px !important;
-}
-.syntaxhighlighter .toolbar a.expandSource {
-  display: none !important;
-}
-.syntaxhighlighter.ie {
-  font-size: .9em !important;
-  padding: 1px 0 1px 0 !important;
-}
-.syntaxhighlighter.ie .toolbar {
-  line-height: 8px !important;
-}
-.syntaxhighlighter.ie .toolbar a {
-  padding-top: 0px !important;
-}
-.syntaxhighlighter.printing .line.alt1 .content,
-.syntaxhighlighter.printing .line.alt2 .content,
-.syntaxhighlighter.printing .line.highlighted .number,
-.syntaxhighlighter.printing .line.highlighted.alt1 .content,
-.syntaxhighlighter.printing .line.highlighted.alt2 .content {
-  background: none !important;
-}
-.syntaxhighlighter.printing .line .number {
-  color: #bbbbbb !important;
-}
-.syntaxhighlighter.printing .line .content {
-  color: black !important;
-}
-.syntaxhighlighter.printing .toolbar {
-  display: none !important;
-}
-.syntaxhighlighter.printing a {
-  text-decoration: none !important;
-}
-.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {
-  color: black !important;
-}
-.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {
-  color: #008200 !important;
-}
-.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {
-  color: blue !important;
-}
-.syntaxhighlighter.printing .keyword {
-  color: #006699 !important;
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .preprocessor {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .variable {
-  color: #aa7700 !important;
-}
-.syntaxhighlighter.printing .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter.printing .functions {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .constants {
-  color: #0066cc !important;
-}
-.syntaxhighlighter.printing .script {
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {
-  color: red !important;
-}
-.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {
-  color: black !important;
-}
-
-.syntaxhighlighter {
-  background-color: #0a2b1d !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: #0a2b1d !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: #0a2b1d !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #233729 !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: white !important;
-}
-.syntaxhighlighter table caption {
-  color: #f8f8f8 !important;
-}
-.syntaxhighlighter .gutter {
-  color: #497958 !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 3px solid #41a83e !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #41a83e !important;
-  color: #0a2b1d !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: #96dd3b !important;
-  background: black !important;
-  border: 1px solid #41a83e !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: #96dd3b !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: white !important;
-}
-.syntaxhighlighter .toolbar {
-  color: white !important;
-  background: #41a83e !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: white !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: #ffe862 !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: #f8f8f8 !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #336442 !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: #9df39f !important;
-}
-.syntaxhighlighter .keyword {
-  color: #96dd3b !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: #91bb9e !important;
-}
-.syntaxhighlighter .variable {
-  color: #ffaa3e !important;
-}
-.syntaxhighlighter .value {
-  color: #f7e741 !important;
-}
-.syntaxhighlighter .functions {
-  color: #ffaa3e !important;
-}
-.syntaxhighlighter .constants {
-  color: #e0e8ff !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: #96dd3b !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: #eb939a !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: #91bb9e !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: #edef7d !important;
-}
-
-.syntaxhighlighter .comments {
-  font-style: italic !important;
-}
-.syntaxhighlighter .keyword {
-  font-weight: bold !important;
-}
diff --git a/javadoc/resources/sh/styles/shCoreEclipse.css b/javadoc/resources/sh/styles/shCoreEclipse.css
deleted file mode 100755
index 22b84071..00000000
--- a/javadoc/resources/sh/styles/shCoreEclipse.css
+++ /dev/null
@@ -1,323 +0,0 @@
-.syntaxhighlighter a,
-.syntaxhighlighter div,
-.syntaxhighlighter code,
-.syntaxhighlighter table,
-.syntaxhighlighter table td,
-.syntaxhighlighter table tr,
-.syntaxhighlighter table tbody,
-.syntaxhighlighter table thead,
-.syntaxhighlighter table caption,
-.syntaxhighlighter textarea {
-  -moz-border-radius: 0 0 0 0 !important;
-  -webkit-border-radius: 0 0 0 0 !important;
-  background: none !important;
-  border: 0 !important;
-  bottom: auto !important;
-  float: none !important;
-  height: auto !important;
-  left: auto !important;
-  line-height: 1.1em !important;
-  margin: 0 !important;
-  outline: 0 !important;
-  overflow: visible !important;
-  padding: 0 !important;
-  position: static !important;
-  right: auto !important;
-  text-align: left !important;
-  top: auto !important;
-  vertical-align: baseline !important;
-  width: auto !important;
-  box-sizing: content-box !important;
-  font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important;
-  font-weight: normal !important;
-  font-style: normal !important;
-  font-size: 1em !important;
-  min-height: inherit !important;
-  min-height: auto !important;
-}
-
-.syntaxhighlighter {
-  width: 100% !important;
-  margin: 1em 0 1em 0 !important;
-  position: relative !important;
-  overflow: auto !important;
-  font-size: 1em !important;
-}
-.syntaxhighlighter.source {
-  overflow: hidden !important;
-}
-.syntaxhighlighter .bold {
-  font-weight: bold !important;
-}
-.syntaxhighlighter .italic {
-  font-style: italic !important;
-}
-.syntaxhighlighter .line {
-  white-space: pre !important;
-}
-.syntaxhighlighter table {
-  width: 100% !important;
-}
-.syntaxhighlighter table caption {
-  text-align: left !important;
-  padding: .5em 0 0.5em 1em !important;
-}
-.syntaxhighlighter table td.code {
-  width: 100% !important;
-}
-.syntaxhighlighter table td.code .container {
-  position: relative !important;
-}
-.syntaxhighlighter table td.code .container textarea {
-  box-sizing: border-box !important;
-  position: absolute !important;
-  left: 0 !important;
-  top: 0 !important;
-  width: 100% !important;
-  height: 100% !important;
-  border: none !important;
-  background: white !important;
-  padding-left: 1em !important;
-  overflow: hidden !important;
-  white-space: pre !important;
-}
-.syntaxhighlighter table td.gutter .line {
-  text-align: right !important;
-  padding: 0 0.5em 0 1em !important;
-}
-.syntaxhighlighter table td.code .line {
-  padding: 0 1em !important;
-}
-.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {
-  padding-left: 0em !important;
-}
-.syntaxhighlighter.show {
-  display: block !important;
-}
-.syntaxhighlighter.collapsed table {
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  padding: 0.1em 0.8em 0em 0.8em !important;
-  font-size: 1em !important;
-  position: static !important;
-  width: auto !important;
-  height: auto !important;
-}
-.syntaxhighlighter.collapsed .toolbar span {
-  display: inline !important;
-  margin-right: 1em !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a {
-  padding: 0 !important;
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a.expandSource {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar {
-  position: absolute !important;
-  right: 1px !important;
-  top: 1px !important;
-  width: 11px !important;
-  height: 11px !important;
-  font-size: 10px !important;
-  z-index: 10 !important;
-}
-.syntaxhighlighter .toolbar span.title {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar a {
-  display: block !important;
-  text-align: center !important;
-  text-decoration: none !important;
-  padding-top: 1px !important;
-}
-.syntaxhighlighter .toolbar a.expandSource {
-  display: none !important;
-}
-.syntaxhighlighter.ie {
-  font-size: .9em !important;
-  padding: 1px 0 1px 0 !important;
-}
-.syntaxhighlighter.ie .toolbar {
-  line-height: 8px !important;
-}
-.syntaxhighlighter.ie .toolbar a {
-  padding-top: 0px !important;
-}
-.syntaxhighlighter.printing .line.alt1 .content,
-.syntaxhighlighter.printing .line.alt2 .content,
-.syntaxhighlighter.printing .line.highlighted .number,
-.syntaxhighlighter.printing .line.highlighted.alt1 .content,
-.syntaxhighlighter.printing .line.highlighted.alt2 .content {
-  background: none !important;
-}
-.syntaxhighlighter.printing .line .number {
-  color: #bbbbbb !important;
-}
-.syntaxhighlighter.printing .line .content {
-  color: black !important;
-}
-.syntaxhighlighter.printing .toolbar {
-  display: none !important;
-}
-.syntaxhighlighter.printing a {
-  text-decoration: none !important;
-}
-.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {
-  color: black !important;
-}
-.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {
-  color: #008200 !important;
-}
-.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {
-  color: blue !important;
-}
-.syntaxhighlighter.printing .keyword {
-  color: #006699 !important;
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .preprocessor {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .variable {
-  color: #aa7700 !important;
-}
-.syntaxhighlighter.printing .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter.printing .functions {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .constants {
-  color: #0066cc !important;
-}
-.syntaxhighlighter.printing .script {
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {
-  color: red !important;
-}
-.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {
-  color: black !important;
-}
-
-.syntaxhighlighter {
-  background-color: white !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: white !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: white !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #c3defe !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: white !important;
-}
-.syntaxhighlighter table caption {
-  color: black !important;
-}
-.syntaxhighlighter .gutter {
-  color: #787878 !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 3px solid #d4d0c8 !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #d4d0c8 !important;
-  color: white !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: #3f5fbf !important;
-  background: white !important;
-  border: 1px solid #d4d0c8 !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: #3f5fbf !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: #aa7700 !important;
-}
-.syntaxhighlighter .toolbar {
-  color: #a0a0a0 !important;
-  background: #d4d0c8 !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: #a0a0a0 !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: red !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: black !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #3f5fbf !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: #2a00ff !important;
-}
-.syntaxhighlighter .keyword {
-  color: #7f0055 !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: #646464 !important;
-}
-.syntaxhighlighter .variable {
-  color: #aa7700 !important;
-}
-.syntaxhighlighter .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter .functions {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter .constants {
-  color: #0066cc !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: #7f0055 !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: gray !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: red !important;
-}
-
-.syntaxhighlighter .keyword {
-  font-weight: bold !important;
-}
-.syntaxhighlighter .xml .keyword {
-  color: #3f7f7f !important;
-  font-weight: normal !important;
-}
-.syntaxhighlighter .xml .color1, .syntaxhighlighter .xml .color1 a {
-  color: #7f007f !important;
-}
-.syntaxhighlighter .xml .string {
-  font-style: italic !important;
-  color: #2a00ff !important;
-}
diff --git a/javadoc/resources/sh/styles/shCoreEmacs.css b/javadoc/resources/sh/styles/shCoreEmacs.css
deleted file mode 100755
index 2dacafe1..00000000
--- a/javadoc/resources/sh/styles/shCoreEmacs.css
+++ /dev/null
@@ -1,308 +0,0 @@
-.syntaxhighlighter a,
-.syntaxhighlighter div,
-.syntaxhighlighter code,
-.syntaxhighlighter table,
-.syntaxhighlighter table td,
-.syntaxhighlighter table tr,
-.syntaxhighlighter table tbody,
-.syntaxhighlighter table thead,
-.syntaxhighlighter table caption,
-.syntaxhighlighter textarea {
-  -moz-border-radius: 0 0 0 0 !important;
-  -webkit-border-radius: 0 0 0 0 !important;
-  background: none !important;
-  border: 0 !important;
-  bottom: auto !important;
-  float: none !important;
-  height: auto !important;
-  left: auto !important;
-  line-height: 1.1em !important;
-  margin: 0 !important;
-  outline: 0 !important;
-  overflow: visible !important;
-  padding: 0 !important;
-  position: static !important;
-  right: auto !important;
-  text-align: left !important;
-  top: auto !important;
-  vertical-align: baseline !important;
-  width: auto !important;
-  box-sizing: content-box !important;
-  font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important;
-  font-weight: normal !important;
-  font-style: normal !important;
-  font-size: 1em !important;
-  min-height: inherit !important;
-  min-height: auto !important;
-}
-
-.syntaxhighlighter {
-  width: 100% !important;
-  margin: 1em 0 1em 0 !important;
-  position: relative !important;
-  overflow: auto !important;
-  font-size: 1em !important;
-}
-.syntaxhighlighter.source {
-  overflow: hidden !important;
-}
-.syntaxhighlighter .bold {
-  font-weight: bold !important;
-}
-.syntaxhighlighter .italic {
-  font-style: italic !important;
-}
-.syntaxhighlighter .line {
-  white-space: pre !important;
-}
-.syntaxhighlighter table {
-  width: 100% !important;
-}
-.syntaxhighlighter table caption {
-  text-align: left !important;
-  padding: .5em 0 0.5em 1em !important;
-}
-.syntaxhighlighter table td.code {
-  width: 100% !important;
-}
-.syntaxhighlighter table td.code .container {
-  position: relative !important;
-}
-.syntaxhighlighter table td.code .container textarea {
-  box-sizing: border-box !important;
-  position: absolute !important;
-  left: 0 !important;
-  top: 0 !important;
-  width: 100% !important;
-  height: 100% !important;
-  border: none !important;
-  background: white !important;
-  padding-left: 1em !important;
-  overflow: hidden !important;
-  white-space: pre !important;
-}
-.syntaxhighlighter table td.gutter .line {
-  text-align: right !important;
-  padding: 0 0.5em 0 1em !important;
-}
-.syntaxhighlighter table td.code .line {
-  padding: 0 1em !important;
-}
-.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {
-  padding-left: 0em !important;
-}
-.syntaxhighlighter.show {
-  display: block !important;
-}
-.syntaxhighlighter.collapsed table {
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  padding: 0.1em 0.8em 0em 0.8em !important;
-  font-size: 1em !important;
-  position: static !important;
-  width: auto !important;
-  height: auto !important;
-}
-.syntaxhighlighter.collapsed .toolbar span {
-  display: inline !important;
-  margin-right: 1em !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a {
-  padding: 0 !important;
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a.expandSource {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar {
-  position: absolute !important;
-  right: 1px !important;
-  top: 1px !important;
-  width: 11px !important;
-  height: 11px !important;
-  font-size: 10px !important;
-  z-index: 10 !important;
-}
-.syntaxhighlighter .toolbar span.title {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar a {
-  display: block !important;
-  text-align: center !important;
-  text-decoration: none !important;
-  padding-top: 1px !important;
-}
-.syntaxhighlighter .toolbar a.expandSource {
-  display: none !important;
-}
-.syntaxhighlighter.ie {
-  font-size: .9em !important;
-  padding: 1px 0 1px 0 !important;
-}
-.syntaxhighlighter.ie .toolbar {
-  line-height: 8px !important;
-}
-.syntaxhighlighter.ie .toolbar a {
-  padding-top: 0px !important;
-}
-.syntaxhighlighter.printing .line.alt1 .content,
-.syntaxhighlighter.printing .line.alt2 .content,
-.syntaxhighlighter.printing .line.highlighted .number,
-.syntaxhighlighter.printing .line.highlighted.alt1 .content,
-.syntaxhighlighter.printing .line.highlighted.alt2 .content {
-  background: none !important;
-}
-.syntaxhighlighter.printing .line .number {
-  color: #bbbbbb !important;
-}
-.syntaxhighlighter.printing .line .content {
-  color: black !important;
-}
-.syntaxhighlighter.printing .toolbar {
-  display: none !important;
-}
-.syntaxhighlighter.printing a {
-  text-decoration: none !important;
-}
-.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {
-  color: black !important;
-}
-.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {
-  color: #008200 !important;
-}
-.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {
-  color: blue !important;
-}
-.syntaxhighlighter.printing .keyword {
-  color: #006699 !important;
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .preprocessor {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .variable {
-  color: #aa7700 !important;
-}
-.syntaxhighlighter.printing .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter.printing .functions {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .constants {
-  color: #0066cc !important;
-}
-.syntaxhighlighter.printing .script {
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {
-  color: red !important;
-}
-.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {
-  color: black !important;
-}
-
-.syntaxhighlighter {
-  background-color: black !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: black !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: black !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #2a3133 !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: white !important;
-}
-.syntaxhighlighter table caption {
-  color: #d3d3d3 !important;
-}
-.syntaxhighlighter .gutter {
-  color: #d3d3d3 !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 3px solid #990000 !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #990000 !important;
-  color: black !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: #ebdb8d !important;
-  background: black !important;
-  border: 1px solid #990000 !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: #ebdb8d !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: #ff7d27 !important;
-}
-.syntaxhighlighter .toolbar {
-  color: white !important;
-  background: #990000 !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: white !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: #9ccff4 !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: #d3d3d3 !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #ff7d27 !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: #ff9e7b !important;
-}
-.syntaxhighlighter .keyword {
-  color: aqua !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: #aec4de !important;
-}
-.syntaxhighlighter .variable {
-  color: #ffaa3e !important;
-}
-.syntaxhighlighter .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter .functions {
-  color: #81cef9 !important;
-}
-.syntaxhighlighter .constants {
-  color: #ff9e7b !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: aqua !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: #ebdb8d !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: #ff7d27 !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: #aec4de !important;
-}
diff --git a/javadoc/resources/sh/styles/shCoreFadeToGrey.css b/javadoc/resources/sh/styles/shCoreFadeToGrey.css
deleted file mode 100755
index ad5fdf10..00000000
--- a/javadoc/resources/sh/styles/shCoreFadeToGrey.css
+++ /dev/null
@@ -1,312 +0,0 @@
-.syntaxhighlighter a,
-.syntaxhighlighter div,
-.syntaxhighlighter code,
-.syntaxhighlighter table,
-.syntaxhighlighter table td,
-.syntaxhighlighter table tr,
-.syntaxhighlighter table tbody,
-.syntaxhighlighter table thead,
-.syntaxhighlighter table caption,
-.syntaxhighlighter textarea {
-  -moz-border-radius: 0 0 0 0 !important;
-  -webkit-border-radius: 0 0 0 0 !important;
-  background: none !important;
-  border: 0 !important;
-  bottom: auto !important;
-  float: none !important;
-  height: auto !important;
-  left: auto !important;
-  line-height: 1.1em !important;
-  margin: 0 !important;
-  outline: 0 !important;
-  overflow: visible !important;
-  padding: 0 !important;
-  position: static !important;
-  right: auto !important;
-  text-align: left !important;
-  top: auto !important;
-  vertical-align: baseline !important;
-  width: auto !important;
-  box-sizing: content-box !important;
-  font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important;
-  font-weight: normal !important;
-  font-style: normal !important;
-  font-size: 1em !important;
-  min-height: inherit !important;
-  min-height: auto !important;
-}
-
-.syntaxhighlighter {
-  width: 100% !important;
-  margin: 1em 0 1em 0 !important;
-  position: relative !important;
-  overflow: auto !important;
-  font-size: 1em !important;
-}
-.syntaxhighlighter.source {
-  overflow: hidden !important;
-}
-.syntaxhighlighter .bold {
-  font-weight: bold !important;
-}
-.syntaxhighlighter .italic {
-  font-style: italic !important;
-}
-.syntaxhighlighter .line {
-  white-space: pre !important;
-}
-.syntaxhighlighter table {
-  width: 100% !important;
-}
-.syntaxhighlighter table caption {
-  text-align: left !important;
-  padding: .5em 0 0.5em 1em !important;
-}
-.syntaxhighlighter table td.code {
-  width: 100% !important;
-}
-.syntaxhighlighter table td.code .container {
-  position: relative !important;
-}
-.syntaxhighlighter table td.code .container textarea {
-  box-sizing: border-box !important;
-  position: absolute !important;
-  left: 0 !important;
-  top: 0 !important;
-  width: 100% !important;
-  height: 100% !important;
-  border: none !important;
-  background: white !important;
-  padding-left: 1em !important;
-  overflow: hidden !important;
-  white-space: pre !important;
-}
-.syntaxhighlighter table td.gutter .line {
-  text-align: right !important;
-  padding: 0 0.5em 0 1em !important;
-}
-.syntaxhighlighter table td.code .line {
-  padding: 0 1em !important;
-}
-.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {
-  padding-left: 0em !important;
-}
-.syntaxhighlighter.show {
-  display: block !important;
-}
-.syntaxhighlighter.collapsed table {
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  padding: 0.1em 0.8em 0em 0.8em !important;
-  font-size: 1em !important;
-  position: static !important;
-  width: auto !important;
-  height: auto !important;
-}
-.syntaxhighlighter.collapsed .toolbar span {
-  display: inline !important;
-  margin-right: 1em !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a {
-  padding: 0 !important;
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a.expandSource {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar {
-  position: absolute !important;
-  right: 1px !important;
-  top: 1px !important;
-  width: 11px !important;
-  height: 11px !important;
-  font-size: 10px !important;
-  z-index: 10 !important;
-}
-.syntaxhighlighter .toolbar span.title {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar a {
-  display: block !important;
-  text-align: center !important;
-  text-decoration: none !important;
-  padding-top: 1px !important;
-}
-.syntaxhighlighter .toolbar a.expandSource {
-  display: none !important;
-}
-.syntaxhighlighter.ie {
-  font-size: .9em !important;
-  padding: 1px 0 1px 0 !important;
-}
-.syntaxhighlighter.ie .toolbar {
-  line-height: 8px !important;
-}
-.syntaxhighlighter.ie .toolbar a {
-  padding-top: 0px !important;
-}
-.syntaxhighlighter.printing .line.alt1 .content,
-.syntaxhighlighter.printing .line.alt2 .content,
-.syntaxhighlighter.printing .line.highlighted .number,
-.syntaxhighlighter.printing .line.highlighted.alt1 .content,
-.syntaxhighlighter.printing .line.highlighted.alt2 .content {
-  background: none !important;
-}
-.syntaxhighlighter.printing .line .number {
-  color: #bbbbbb !important;
-}
-.syntaxhighlighter.printing .line .content {
-  color: black !important;
-}
-.syntaxhighlighter.printing .toolbar {
-  display: none !important;
-}
-.syntaxhighlighter.printing a {
-  text-decoration: none !important;
-}
-.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {
-  color: black !important;
-}
-.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {
-  color: #008200 !important;
-}
-.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {
-  color: blue !important;
-}
-.syntaxhighlighter.printing .keyword {
-  color: #006699 !important;
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .preprocessor {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .variable {
-  color: #aa7700 !important;
-}
-.syntaxhighlighter.printing .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter.printing .functions {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .constants {
-  color: #0066cc !important;
-}
-.syntaxhighlighter.printing .script {
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {
-  color: red !important;
-}
-.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {
-  color: black !important;
-}
-
-.syntaxhighlighter {
-  background-color: #121212 !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: #121212 !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: #121212 !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #2c2c29 !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: white !important;
-}
-.syntaxhighlighter table caption {
-  color: white !important;
-}
-.syntaxhighlighter .gutter {
-  color: #afafaf !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 3px solid #3185b9 !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #3185b9 !important;
-  color: #121212 !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: #3185b9 !important;
-  background: black !important;
-  border: 1px solid #3185b9 !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: #3185b9 !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: #d01d33 !important;
-}
-.syntaxhighlighter .toolbar {
-  color: white !important;
-  background: #3185b9 !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: white !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: #96daff !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: white !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #696854 !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: #e3e658 !important;
-}
-.syntaxhighlighter .keyword {
-  color: #d01d33 !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: #435a5f !important;
-}
-.syntaxhighlighter .variable {
-  color: #898989 !important;
-}
-.syntaxhighlighter .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter .functions {
-  color: #aaaaaa !important;
-}
-.syntaxhighlighter .constants {
-  color: #96daff !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: #d01d33 !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: #ffc074 !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: #4a8cdb !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: #96daff !important;
-}
-
-.syntaxhighlighter .functions {
-  font-weight: bold !important;
-}
diff --git a/javadoc/resources/sh/styles/shCoreMDUltra.css b/javadoc/resources/sh/styles/shCoreMDUltra.css
deleted file mode 100755
index b7cbf3b2..00000000
--- a/javadoc/resources/sh/styles/shCoreMDUltra.css
+++ /dev/null
@@ -1,308 +0,0 @@
-.syntaxhighlighter a,
-.syntaxhighlighter div,
-.syntaxhighlighter code,
-.syntaxhighlighter table,
-.syntaxhighlighter table td,
-.syntaxhighlighter table tr,
-.syntaxhighlighter table tbody,
-.syntaxhighlighter table thead,
-.syntaxhighlighter table caption,
-.syntaxhighlighter textarea {
-  -moz-border-radius: 0 0 0 0 !important;
-  -webkit-border-radius: 0 0 0 0 !important;
-  background: none !important;
-  border: 0 !important;
-  bottom: auto !important;
-  float: none !important;
-  height: auto !important;
-  left: auto !important;
-  line-height: 1.1em !important;
-  margin: 0 !important;
-  outline: 0 !important;
-  overflow: visible !important;
-  padding: 0 !important;
-  position: static !important;
-  right: auto !important;
-  text-align: left !important;
-  top: auto !important;
-  vertical-align: baseline !important;
-  width: auto !important;
-  box-sizing: content-box !important;
-  font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important;
-  font-weight: normal !important;
-  font-style: normal !important;
-  font-size: 1em !important;
-  min-height: inherit !important;
-  min-height: auto !important;
-}
-
-.syntaxhighlighter {
-  width: 100% !important;
-  margin: 1em 0 1em 0 !important;
-  position: relative !important;
-  overflow: auto !important;
-  font-size: 1em !important;
-}
-.syntaxhighlighter.source {
-  overflow: hidden !important;
-}
-.syntaxhighlighter .bold {
-  font-weight: bold !important;
-}
-.syntaxhighlighter .italic {
-  font-style: italic !important;
-}
-.syntaxhighlighter .line {
-  white-space: pre !important;
-}
-.syntaxhighlighter table {
-  width: 100% !important;
-}
-.syntaxhighlighter table caption {
-  text-align: left !important;
-  padding: .5em 0 0.5em 1em !important;
-}
-.syntaxhighlighter table td.code {
-  width: 100% !important;
-}
-.syntaxhighlighter table td.code .container {
-  position: relative !important;
-}
-.syntaxhighlighter table td.code .container textarea {
-  box-sizing: border-box !important;
-  position: absolute !important;
-  left: 0 !important;
-  top: 0 !important;
-  width: 100% !important;
-  height: 100% !important;
-  border: none !important;
-  background: white !important;
-  padding-left: 1em !important;
-  overflow: hidden !important;
-  white-space: pre !important;
-}
-.syntaxhighlighter table td.gutter .line {
-  text-align: right !important;
-  padding: 0 0.5em 0 1em !important;
-}
-.syntaxhighlighter table td.code .line {
-  padding: 0 1em !important;
-}
-.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {
-  padding-left: 0em !important;
-}
-.syntaxhighlighter.show {
-  display: block !important;
-}
-.syntaxhighlighter.collapsed table {
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  padding: 0.1em 0.8em 0em 0.8em !important;
-  font-size: 1em !important;
-  position: static !important;
-  width: auto !important;
-  height: auto !important;
-}
-.syntaxhighlighter.collapsed .toolbar span {
-  display: inline !important;
-  margin-right: 1em !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a {
-  padding: 0 !important;
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a.expandSource {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar {
-  position: absolute !important;
-  right: 1px !important;
-  top: 1px !important;
-  width: 11px !important;
-  height: 11px !important;
-  font-size: 10px !important;
-  z-index: 10 !important;
-}
-.syntaxhighlighter .toolbar span.title {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar a {
-  display: block !important;
-  text-align: center !important;
-  text-decoration: none !important;
-  padding-top: 1px !important;
-}
-.syntaxhighlighter .toolbar a.expandSource {
-  display: none !important;
-}
-.syntaxhighlighter.ie {
-  font-size: .9em !important;
-  padding: 1px 0 1px 0 !important;
-}
-.syntaxhighlighter.ie .toolbar {
-  line-height: 8px !important;
-}
-.syntaxhighlighter.ie .toolbar a {
-  padding-top: 0px !important;
-}
-.syntaxhighlighter.printing .line.alt1 .content,
-.syntaxhighlighter.printing .line.alt2 .content,
-.syntaxhighlighter.printing .line.highlighted .number,
-.syntaxhighlighter.printing .line.highlighted.alt1 .content,
-.syntaxhighlighter.printing .line.highlighted.alt2 .content {
-  background: none !important;
-}
-.syntaxhighlighter.printing .line .number {
-  color: #bbbbbb !important;
-}
-.syntaxhighlighter.printing .line .content {
-  color: black !important;
-}
-.syntaxhighlighter.printing .toolbar {
-  display: none !important;
-}
-.syntaxhighlighter.printing a {
-  text-decoration: none !important;
-}
-.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {
-  color: black !important;
-}
-.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {
-  color: #008200 !important;
-}
-.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {
-  color: blue !important;
-}
-.syntaxhighlighter.printing .keyword {
-  color: #006699 !important;
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .preprocessor {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .variable {
-  color: #aa7700 !important;
-}
-.syntaxhighlighter.printing .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter.printing .functions {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .constants {
-  color: #0066cc !important;
-}
-.syntaxhighlighter.printing .script {
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {
-  color: red !important;
-}
-.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {
-  color: black !important;
-}
-
-.syntaxhighlighter {
-  background-color: #222222 !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: #222222 !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: #222222 !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #253e5a !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: white !important;
-}
-.syntaxhighlighter table caption {
-  color: lime !important;
-}
-.syntaxhighlighter .gutter {
-  color: #38566f !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 3px solid #435a5f !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #435a5f !important;
-  color: #222222 !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: #428bdd !important;
-  background: black !important;
-  border: 1px solid #435a5f !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: #428bdd !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: lime !important;
-}
-.syntaxhighlighter .toolbar {
-  color: #aaaaff !important;
-  background: #435a5f !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: #aaaaff !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: #9ccff4 !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: lime !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #428bdd !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: lime !important;
-}
-.syntaxhighlighter .keyword {
-  color: #aaaaff !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: #8aa6c1 !important;
-}
-.syntaxhighlighter .variable {
-  color: aqua !important;
-}
-.syntaxhighlighter .value {
-  color: #f7e741 !important;
-}
-.syntaxhighlighter .functions {
-  color: #ff8000 !important;
-}
-.syntaxhighlighter .constants {
-  color: yellow !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: #aaaaff !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: red !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: yellow !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: #ffaa3e !important;
-}
diff --git a/javadoc/resources/sh/styles/shCoreMidnight.css b/javadoc/resources/sh/styles/shCoreMidnight.css
deleted file mode 100755
index b97afd09..00000000
--- a/javadoc/resources/sh/styles/shCoreMidnight.css
+++ /dev/null
@@ -1,308 +0,0 @@
-.syntaxhighlighter a,
-.syntaxhighlighter div,
-.syntaxhighlighter code,
-.syntaxhighlighter table,
-.syntaxhighlighter table td,
-.syntaxhighlighter table tr,
-.syntaxhighlighter table tbody,
-.syntaxhighlighter table thead,
-.syntaxhighlighter table caption,
-.syntaxhighlighter textarea {
-  -moz-border-radius: 0 0 0 0 !important;
-  -webkit-border-radius: 0 0 0 0 !important;
-  background: none !important;
-  border: 0 !important;
-  bottom: auto !important;
-  float: none !important;
-  height: auto !important;
-  left: auto !important;
-  line-height: 1.1em !important;
-  margin: 0 !important;
-  outline: 0 !important;
-  overflow: visible !important;
-  padding: 0 !important;
-  position: static !important;
-  right: auto !important;
-  text-align: left !important;
-  top: auto !important;
-  vertical-align: baseline !important;
-  width: auto !important;
-  box-sizing: content-box !important;
-  font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important;
-  font-weight: normal !important;
-  font-style: normal !important;
-  font-size: 1em !important;
-  min-height: inherit !important;
-  min-height: auto !important;
-}
-
-.syntaxhighlighter {
-  width: 100% !important;
-  margin: 1em 0 1em 0 !important;
-  position: relative !important;
-  overflow: auto !important;
-  font-size: 1em !important;
-}
-.syntaxhighlighter.source {
-  overflow: hidden !important;
-}
-.syntaxhighlighter .bold {
-  font-weight: bold !important;
-}
-.syntaxhighlighter .italic {
-  font-style: italic !important;
-}
-.syntaxhighlighter .line {
-  white-space: pre !important;
-}
-.syntaxhighlighter table {
-  width: 100% !important;
-}
-.syntaxhighlighter table caption {
-  text-align: left !important;
-  padding: .5em 0 0.5em 1em !important;
-}
-.syntaxhighlighter table td.code {
-  width: 100% !important;
-}
-.syntaxhighlighter table td.code .container {
-  position: relative !important;
-}
-.syntaxhighlighter table td.code .container textarea {
-  box-sizing: border-box !important;
-  position: absolute !important;
-  left: 0 !important;
-  top: 0 !important;
-  width: 100% !important;
-  height: 100% !important;
-  border: none !important;
-  background: white !important;
-  padding-left: 1em !important;
-  overflow: hidden !important;
-  white-space: pre !important;
-}
-.syntaxhighlighter table td.gutter .line {
-  text-align: right !important;
-  padding: 0 0.5em 0 1em !important;
-}
-.syntaxhighlighter table td.code .line {
-  padding: 0 1em !important;
-}
-.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {
-  padding-left: 0em !important;
-}
-.syntaxhighlighter.show {
-  display: block !important;
-}
-.syntaxhighlighter.collapsed table {
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  padding: 0.1em 0.8em 0em 0.8em !important;
-  font-size: 1em !important;
-  position: static !important;
-  width: auto !important;
-  height: auto !important;
-}
-.syntaxhighlighter.collapsed .toolbar span {
-  display: inline !important;
-  margin-right: 1em !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a {
-  padding: 0 !important;
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a.expandSource {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar {
-  position: absolute !important;
-  right: 1px !important;
-  top: 1px !important;
-  width: 11px !important;
-  height: 11px !important;
-  font-size: 10px !important;
-  z-index: 10 !important;
-}
-.syntaxhighlighter .toolbar span.title {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar a {
-  display: block !important;
-  text-align: center !important;
-  text-decoration: none !important;
-  padding-top: 1px !important;
-}
-.syntaxhighlighter .toolbar a.expandSource {
-  display: none !important;
-}
-.syntaxhighlighter.ie {
-  font-size: .9em !important;
-  padding: 1px 0 1px 0 !important;
-}
-.syntaxhighlighter.ie .toolbar {
-  line-height: 8px !important;
-}
-.syntaxhighlighter.ie .toolbar a {
-  padding-top: 0px !important;
-}
-.syntaxhighlighter.printing .line.alt1 .content,
-.syntaxhighlighter.printing .line.alt2 .content,
-.syntaxhighlighter.printing .line.highlighted .number,
-.syntaxhighlighter.printing .line.highlighted.alt1 .content,
-.syntaxhighlighter.printing .line.highlighted.alt2 .content {
-  background: none !important;
-}
-.syntaxhighlighter.printing .line .number {
-  color: #bbbbbb !important;
-}
-.syntaxhighlighter.printing .line .content {
-  color: black !important;
-}
-.syntaxhighlighter.printing .toolbar {
-  display: none !important;
-}
-.syntaxhighlighter.printing a {
-  text-decoration: none !important;
-}
-.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {
-  color: black !important;
-}
-.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {
-  color: #008200 !important;
-}
-.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {
-  color: blue !important;
-}
-.syntaxhighlighter.printing .keyword {
-  color: #006699 !important;
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .preprocessor {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .variable {
-  color: #aa7700 !important;
-}
-.syntaxhighlighter.printing .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter.printing .functions {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .constants {
-  color: #0066cc !important;
-}
-.syntaxhighlighter.printing .script {
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {
-  color: red !important;
-}
-.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {
-  color: black !important;
-}
-
-.syntaxhighlighter {
-  background-color: #0f192a !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: #0f192a !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: #0f192a !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #253e5a !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: #38566f !important;
-}
-.syntaxhighlighter table caption {
-  color: #d1edff !important;
-}
-.syntaxhighlighter .gutter {
-  color: #afafaf !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 3px solid #435a5f !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #435a5f !important;
-  color: #0f192a !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: #428bdd !important;
-  background: black !important;
-  border: 1px solid #435a5f !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: #428bdd !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: #1dc116 !important;
-}
-.syntaxhighlighter .toolbar {
-  color: #d1edff !important;
-  background: #435a5f !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: #d1edff !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: #8aa6c1 !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: #d1edff !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #428bdd !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: #1dc116 !important;
-}
-.syntaxhighlighter .keyword {
-  color: #b43d3d !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: #8aa6c1 !important;
-}
-.syntaxhighlighter .variable {
-  color: #ffaa3e !important;
-}
-.syntaxhighlighter .value {
-  color: #f7e741 !important;
-}
-.syntaxhighlighter .functions {
-  color: #ffaa3e !important;
-}
-.syntaxhighlighter .constants {
-  color: #e0e8ff !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: #b43d3d !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: #f8bb00 !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: white !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: #ffaa3e !important;
-}
diff --git a/javadoc/resources/sh/styles/shCoreNLPCraft.css b/javadoc/resources/sh/styles/shCoreNLPCraft.css
deleted file mode 100755
index efa58318..00000000
--- a/javadoc/resources/sh/styles/shCoreNLPCraft.css
+++ /dev/null
@@ -1,312 +0,0 @@
-.syntaxhighlighter a,
-.syntaxhighlighter div,
-.syntaxhighlighter code,
-.syntaxhighlighter table,
-.syntaxhighlighter table td,
-.syntaxhighlighter table tr,
-.syntaxhighlighter table tbody,
-.syntaxhighlighter table thead,
-.syntaxhighlighter table caption,
-.syntaxhighlighter textarea {
-  -moz-border-radius: 0 0 0 0 !important;
-  -webkit-border-radius: 0 0 0 0 !important;
-  background: none !important;
-  border: 0 !important;
-  bottom: auto !important;
-  float: none !important;
-  height: auto !important;
-  left: auto !important;
-  line-height: 1.1em !important;
-  margin: 0 !important;
-  outline: 0 !important;
-  overflow: visible !important;
-  padding: 0 !important;
-  position: static !important;
-  right: auto !important;
-  text-align: left !important;
-  top: auto !important;
-  vertical-align: baseline !important;
-  width: auto !important;
-  box-sizing: content-box !important;
-  font-family: 'Roboto Mono', monospace !important;
-  font-weight: normal !important;
-  font-style: normal !important;
-  font-size: 1em !important;
-  min-height: inherit !important;
-  min-height: auto !important;
-}
-
-.syntaxhighlighter {
-  width: 100% !important;
-  margin: 1em 0 1em 0 !important;
-  position: relative !important;
-  overflow: auto !important;
-  font-size: 1em !important;
-}
-.syntaxhighlighter.source {
-  overflow: hidden !important;
-}
-.syntaxhighlighter .bold {
-  font-weight: bold !important;
-}
-.syntaxhighlighter .italic {
-  font-style: italic !important;
-}
-.syntaxhighlighter .line {
-  white-space: pre !important;
-}
-.syntaxhighlighter table {
-  width: 100% !important;
-}
-.syntaxhighlighter table caption {
-  text-align: left !important;
-  padding: .5em 0 0.5em 1em !important;
-}
-.syntaxhighlighter table td.code {
-  width: 100% !important;
-}
-.syntaxhighlighter table td.code .container {
-  position: relative !important;
-}
-.syntaxhighlighter table td.code .container textarea {
-  box-sizing: border-box !important;
-  position: absolute !important;
-  left: 0 !important;
-  top: 0 !important;
-  width: 100% !important;
-  height: 100% !important;
-  border: none !important;
-  background: white !important;
-  padding-left: 1em !important;
-  overflow: hidden !important;
-  white-space: pre !important;
-}
-.syntaxhighlighter table td.gutter .line {
-  text-align: right !important;
-  padding: 2px 0.5em 2px 1em !important;
-}
-.syntaxhighlighter table td.code .line {
-  padding: 2px 1em !important;
-}
-.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {
-  padding-left: 0em !important;
-}
-.syntaxhighlighter.show {
-  display: block !important;
-}
-.syntaxhighlighter.collapsed table {
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  padding: 0.1em 0.8em 0em 0.8em !important;
-  font-size: 1em !important;
-  position: static !important;
-  width: auto !important;
-  height: auto !important;
-}
-.syntaxhighlighter.collapsed .toolbar span {
-  display: inline !important;
-  margin-right: 1em !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a {
-  padding: 0 !important;
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a.expandSource {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar {
-  position: absolute !important;
-  right: 1px !important;
-  top: 1px !important;
-  width: 11px !important;
-  height: 11px !important;
-  font-size: 10px !important;
-  z-index: 10 !important;
-}
-.syntaxhighlighter .toolbar span.title {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar a {
-  display: block !important;
-  text-align: center !important;
-  text-decoration: none !important;
-  padding-top: 1px !important;
-}
-.syntaxhighlighter .toolbar a.expandSource {
-  display: none !important;
-}
-.syntaxhighlighter.ie {
-  font-size: .9em !important;
-  padding: 1px 0 1px 0 !important;
-}
-.syntaxhighlighter.ie .toolbar {
-  line-height: 8px !important;
-}
-.syntaxhighlighter.ie .toolbar a {
-  padding-top: 0px !important;
-}
-.syntaxhighlighter.printing .line.alt1 .content,
-.syntaxhighlighter.printing .line.alt2 .content,
-.syntaxhighlighter.printing .line.highlighted .number,
-.syntaxhighlighter.printing .line.highlighted.alt1 .content,
-.syntaxhighlighter.printing .line.highlighted.alt2 .content {
-  background: none !important;
-}
-.syntaxhighlighter.printing .line .number {
-  color: #bbbbbb !important;
-}
-.syntaxhighlighter.printing .line .content {
-  color: black !important;
-}
-.syntaxhighlighter.printing .toolbar {
-  display: none !important;
-}
-.syntaxhighlighter.printing a {
-  text-decoration: none !important;
-}
-.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {
-  color: black !important;
-}
-.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {
-  color: #008200 !important;
-}
-.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {
-  color: blue !important;
-}
-.syntaxhighlighter.printing .keyword {
-  color: #006699 !important;
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .preprocessor {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .variable {
-  color: #aa7700 !important;
-}
-.syntaxhighlighter.printing .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter.printing .functions {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .constants {
-  color: #0066cc !important;
-}
-.syntaxhighlighter.printing .script {
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {
-  color: red !important;
-}
-.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {
-  color: black !important;
-}
-
-.syntaxhighlighter {
-  background-color: #121212 !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: #121212 !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: #121212 !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #2c2c29 !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: white !important;
-}
-.syntaxhighlighter table caption {
-  color: white !important;
-}
-.syntaxhighlighter .gutter {
-  color: #afafaf !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 3px solid #3185b9 !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #3185b9 !important;
-  color: #121212 !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: #3185b9 !important;
-  background: black !important;
-  border: 1px solid #3185b9 !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: #3185b9 !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: #d01d33 !important;
-}
-.syntaxhighlighter .toolbar {
-  color: white !important;
-  background: #3185b9 !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: white !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: #96daff !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: white !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #ccc !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: #65da2a !important;
-}
-.syntaxhighlighter .keyword {
-  color: #d01d33 !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: #435a5f !important;
-}
-.syntaxhighlighter .variable {
-  color: #898989 !important;
-}
-.syntaxhighlighter .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter .functions {
-  color: #aaaaaa !important;
-}
-.syntaxhighlighter .constants {
-  color: #96daff !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: #d01d33 !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: #ffc074 !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: #4a8cdb !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: #96daff !important;
-}
-
-.syntaxhighlighter .functions {
-  font-weight: bold !important;
-}
diff --git a/javadoc/resources/sh/styles/shCoreRDark.css b/javadoc/resources/sh/styles/shCoreRDark.css
deleted file mode 100755
index e41100fa..00000000
--- a/javadoc/resources/sh/styles/shCoreRDark.css
+++ /dev/null
@@ -1,308 +0,0 @@
-.syntaxhighlighter a,
-.syntaxhighlighter div,
-.syntaxhighlighter code,
-.syntaxhighlighter table,
-.syntaxhighlighter table td,
-.syntaxhighlighter table tr,
-.syntaxhighlighter table tbody,
-.syntaxhighlighter table thead,
-.syntaxhighlighter table caption,
-.syntaxhighlighter textarea {
-  -moz-border-radius: 0 0 0 0 !important;
-  -webkit-border-radius: 0 0 0 0 !important;
-  background: none !important;
-  border: 0 !important;
-  bottom: auto !important;
-  float: none !important;
-  height: auto !important;
-  left: auto !important;
-  line-height: 1.1em !important;
-  margin: 0 !important;
-  outline: 0 !important;
-  overflow: visible !important;
-  padding: 0 !important;
-  position: static !important;
-  right: auto !important;
-  text-align: left !important;
-  top: auto !important;
-  vertical-align: baseline !important;
-  width: auto !important;
-  box-sizing: content-box !important;
-  font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important;
-  font-weight: normal !important;
-  font-style: normal !important;
-  font-size: 1em !important;
-  min-height: inherit !important;
-  min-height: auto !important;
-}
-
-.syntaxhighlighter {
-  width: 100% !important;
-  margin: 1em 0 1em 0 !important;
-  position: relative !important;
-  overflow: auto !important;
-  font-size: 1em !important;
-}
-.syntaxhighlighter.source {
-  overflow: hidden !important;
-}
-.syntaxhighlighter .bold {
-  font-weight: bold !important;
-}
-.syntaxhighlighter .italic {
-  font-style: italic !important;
-}
-.syntaxhighlighter .line {
-  white-space: pre !important;
-}
-.syntaxhighlighter table {
-  width: 100% !important;
-}
-.syntaxhighlighter table caption {
-  text-align: left !important;
-  padding: .5em 0 0.5em 1em !important;
-}
-.syntaxhighlighter table td.code {
-  width: 100% !important;
-}
-.syntaxhighlighter table td.code .container {
-  position: relative !important;
-}
-.syntaxhighlighter table td.code .container textarea {
-  box-sizing: border-box !important;
-  position: absolute !important;
-  left: 0 !important;
-  top: 0 !important;
-  width: 100% !important;
-  height: 100% !important;
-  border: none !important;
-  background: white !important;
-  padding-left: 1em !important;
-  overflow: hidden !important;
-  white-space: pre !important;
-}
-.syntaxhighlighter table td.gutter .line {
-  text-align: right !important;
-  padding: 0 0.5em 0 1em !important;
-}
-.syntaxhighlighter table td.code .line {
-  padding: 0 1em !important;
-}
-.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {
-  padding-left: 0em !important;
-}
-.syntaxhighlighter.show {
-  display: block !important;
-}
-.syntaxhighlighter.collapsed table {
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  padding: 0.1em 0.8em 0em 0.8em !important;
-  font-size: 1em !important;
-  position: static !important;
-  width: auto !important;
-  height: auto !important;
-}
-.syntaxhighlighter.collapsed .toolbar span {
-  display: inline !important;
-  margin-right: 1em !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a {
-  padding: 0 !important;
-  display: none !important;
-}
-.syntaxhighlighter.collapsed .toolbar span a.expandSource {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar {
-  position: absolute !important;
-  right: 1px !important;
-  top: 1px !important;
-  width: 11px !important;
-  height: 11px !important;
-  font-size: 10px !important;
-  z-index: 10 !important;
-}
-.syntaxhighlighter .toolbar span.title {
-  display: inline !important;
-}
-.syntaxhighlighter .toolbar a {
-  display: block !important;
-  text-align: center !important;
-  text-decoration: none !important;
-  padding-top: 1px !important;
-}
-.syntaxhighlighter .toolbar a.expandSource {
-  display: none !important;
-}
-.syntaxhighlighter.ie {
-  font-size: .9em !important;
-  padding: 1px 0 1px 0 !important;
-}
-.syntaxhighlighter.ie .toolbar {
-  line-height: 8px !important;
-}
-.syntaxhighlighter.ie .toolbar a {
-  padding-top: 0px !important;
-}
-.syntaxhighlighter.printing .line.alt1 .content,
-.syntaxhighlighter.printing .line.alt2 .content,
-.syntaxhighlighter.printing .line.highlighted .number,
-.syntaxhighlighter.printing .line.highlighted.alt1 .content,
-.syntaxhighlighter.printing .line.highlighted.alt2 .content {
-  background: none !important;
-}
-.syntaxhighlighter.printing .line .number {
-  color: #bbbbbb !important;
-}
-.syntaxhighlighter.printing .line .content {
-  color: black !important;
-}
-.syntaxhighlighter.printing .toolbar {
-  display: none !important;
-}
-.syntaxhighlighter.printing a {
-  text-decoration: none !important;
-}
-.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {
-  color: black !important;
-}
-.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {
-  color: #008200 !important;
-}
-.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {
-  color: blue !important;
-}
-.syntaxhighlighter.printing .keyword {
-  color: #006699 !important;
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .preprocessor {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .variable {
-  color: #aa7700 !important;
-}
-.syntaxhighlighter.printing .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter.printing .functions {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .constants {
-  color: #0066cc !important;
-}
-.syntaxhighlighter.printing .script {
-  font-weight: bold !important;
-}
-.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {
-  color: gray !important;
-}
-.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {
-  color: red !important;
-}
-.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {
-  color: black !important;
-}
-
-.syntaxhighlighter {
-  background-color: #1b2426 !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: #1b2426 !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: #1b2426 !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #323e41 !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: #b9bdb6 !important;
-}
-.syntaxhighlighter table caption {
-  color: #b9bdb6 !important;
-}
-.syntaxhighlighter .gutter {
-  color: #afafaf !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 3px solid #435a5f !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #435a5f !important;
-  color: #1b2426 !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: #5ba1cf !important;
-  background: black !important;
-  border: 1px solid #435a5f !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: #5ba1cf !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: #5ce638 !important;
-}
-.syntaxhighlighter .toolbar {
-  color: white !important;
-  background: #435a5f !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: white !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: #e0e8ff !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: #b9bdb6 !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #878a85 !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: #5ce638 !important;
-}
-.syntaxhighlighter .keyword {
-  color: #5ba1cf !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: #435a5f !important;
-}
-.syntaxhighlighter .variable {
-  color: #ffaa3e !important;
-}
-.syntaxhighlighter .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter .functions {
-  color: #ffaa3e !important;
-}
-.syntaxhighlighter .constants {
-  color: #e0e8ff !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: #5ba1cf !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: #e0e8ff !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: white !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: #ffaa3e !important;
-}
diff --git a/javadoc/resources/sh/styles/shThemeDefault.css b/javadoc/resources/sh/styles/shThemeDefault.css
deleted file mode 100755
index 2942c4a2..00000000
--- a/javadoc/resources/sh/styles/shThemeDefault.css
+++ /dev/null
@@ -1,101 +0,0 @@
-.syntaxhighlighter {
-  background-color: white !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: white !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: white !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #e0e0e0 !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: black !important;
-}
-.syntaxhighlighter table caption {
-  color: black !important;
-}
-.syntaxhighlighter .gutter {
-  color: #afafaf !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 3px solid #6ce26c !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #6ce26c !important;
-  color: white !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: blue !important;
-  background: white !important;
-  border: 1px solid #6ce26c !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: blue !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: red !important;
-}
-.syntaxhighlighter .toolbar {
-  color: white !important;
-  background: #6ce26c !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: white !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: black !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: black !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #008200 !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: blue !important;
-}
-.syntaxhighlighter .keyword {
-  color: #006699 !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: gray !important;
-}
-.syntaxhighlighter .variable {
-  color: #aa7700 !important;
-}
-.syntaxhighlighter .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter .functions {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter .constants {
-  color: #0066cc !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: #006699 !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: gray !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: red !important;
-}
-
-.syntaxhighlighter .keyword {
-  font-weight: bold !important;
-}
diff --git a/javadoc/resources/sh/styles/shThemeDjango.css b/javadoc/resources/sh/styles/shThemeDjango.css
deleted file mode 100755
index e02254b6..00000000
--- a/javadoc/resources/sh/styles/shThemeDjango.css
+++ /dev/null
@@ -1,104 +0,0 @@
-.syntaxhighlighter {
-  background-color: #0a2b1d !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: #0a2b1d !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: #0a2b1d !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #233729 !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: white !important;
-}
-.syntaxhighlighter table caption {
-  color: #f8f8f8 !important;
-}
-.syntaxhighlighter .gutter {
-  color: #497958 !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 3px solid #41a83e !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #41a83e !important;
-  color: #0a2b1d !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: #96dd3b !important;
-  background: black !important;
-  border: 1px solid #41a83e !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: #96dd3b !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: white !important;
-}
-.syntaxhighlighter .toolbar {
-  color: white !important;
-  background: #41a83e !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: white !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: #ffe862 !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: #f8f8f8 !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #336442 !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: #9df39f !important;
-}
-.syntaxhighlighter .keyword {
-  color: #96dd3b !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: #91bb9e !important;
-}
-.syntaxhighlighter .variable {
-  color: #ffaa3e !important;
-}
-.syntaxhighlighter .value {
-  color: #f7e741 !important;
-}
-.syntaxhighlighter .functions {
-  color: #ffaa3e !important;
-}
-.syntaxhighlighter .constants {
-  color: #e0e8ff !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: #96dd3b !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: #eb939a !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: #91bb9e !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: #edef7d !important;
-}
-
-.syntaxhighlighter .comments {
-  font-style: italic !important;
-}
-.syntaxhighlighter .keyword {
-  font-weight: bold !important;
-}
diff --git a/javadoc/resources/sh/styles/shThemeEclipse.css b/javadoc/resources/sh/styles/shThemeEclipse.css
deleted file mode 100755
index 4a313cac..00000000
--- a/javadoc/resources/sh/styles/shThemeEclipse.css
+++ /dev/null
@@ -1,112 +0,0 @@
-.syntaxhighlighter {
-  background-color: white !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: white !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: white !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #c3defe !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: white !important;
-}
-.syntaxhighlighter table caption {
-  color: black !important;
-}
-.syntaxhighlighter .gutter {
-  color: #787878 !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 3px solid #d4d0c8 !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #d4d0c8 !important;
-  color: white !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: #3f5fbf !important;
-  background: white !important;
-  border: 1px solid #d4d0c8 !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: #3f5fbf !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: #aa7700 !important;
-}
-.syntaxhighlighter .toolbar {
-  color: #a0a0a0 !important;
-  background: #d4d0c8 !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: #a0a0a0 !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: red !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: black !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #3f5fbf !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: #2a00ff !important;
-}
-.syntaxhighlighter .keyword {
-  color: #7f0055 !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: #646464 !important;
-}
-.syntaxhighlighter .variable {
-  color: #aa7700 !important;
-}
-.syntaxhighlighter .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter .functions {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter .constants {
-  color: #0066cc !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: #7f0055 !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: gray !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: #ff1493 !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: red !important;
-}
-
-.syntaxhighlighter .keyword {
-  font-weight: bold !important;
-}
-.syntaxhighlighter .xml .keyword {
-  color: #3f7f7f !important;
-  font-weight: normal !important;
-}
-.syntaxhighlighter .xml .color1, .syntaxhighlighter .xml .color1 a {
-  color: #7f007f !important;
-}
-.syntaxhighlighter .xml .string {
-  font-style: italic !important;
-  color: #2a00ff !important;
-}
diff --git a/javadoc/resources/sh/styles/shThemeEmacs.css b/javadoc/resources/sh/styles/shThemeEmacs.css
deleted file mode 100755
index d7db4e8f..00000000
--- a/javadoc/resources/sh/styles/shThemeEmacs.css
+++ /dev/null
@@ -1,97 +0,0 @@
-.syntaxhighlighter {
-  background-color: black !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: black !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: black !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #2a3133 !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: white !important;
-}
-.syntaxhighlighter table caption {
-  color: #d3d3d3 !important;
-}
-.syntaxhighlighter .gutter {
-  color: #d3d3d3 !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 3px solid #990000 !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #990000 !important;
-  color: black !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: #ebdb8d !important;
-  background: black !important;
-  border: 1px solid #990000 !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: #ebdb8d !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: #ff7d27 !important;
-}
-.syntaxhighlighter .toolbar {
-  color: white !important;
-  background: #990000 !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: white !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: #9ccff4 !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: #d3d3d3 !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #ff7d27 !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: #ff9e7b !important;
-}
-.syntaxhighlighter .keyword {
-  color: aqua !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: #aec4de !important;
-}
-.syntaxhighlighter .variable {
-  color: #ffaa3e !important;
-}
-.syntaxhighlighter .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter .functions {
-  color: #81cef9 !important;
-}
-.syntaxhighlighter .constants {
-  color: #ff9e7b !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: aqua !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: #ebdb8d !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: #ff7d27 !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: #aec4de !important;
-}
diff --git a/javadoc/resources/sh/styles/shThemeFadeToGrey.css b/javadoc/resources/sh/styles/shThemeFadeToGrey.css
deleted file mode 100755
index 73767ed7..00000000
--- a/javadoc/resources/sh/styles/shThemeFadeToGrey.css
+++ /dev/null
@@ -1,101 +0,0 @@
-.syntaxhighlighter {
-  background-color: #121212 !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: #121212 !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: #121212 !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #2c2c29 !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: white !important;
-}
-.syntaxhighlighter table caption {
-  color: white !important;
-}
-.syntaxhighlighter .gutter {
-  color: #afafaf !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 3px solid #3185b9 !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #3185b9 !important;
-  color: #121212 !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: #3185b9 !important;
-  background: black !important;
-  border: 1px solid #3185b9 !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: #3185b9 !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: #d01d33 !important;
-}
-.syntaxhighlighter .toolbar {
-  color: white !important;
-  background: #3185b9 !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: white !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: #96daff !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: white !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #696854 !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: #e3e658 !important;
-}
-.syntaxhighlighter .keyword {
-  color: #d01d33 !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: #435a5f !important;
-}
-.syntaxhighlighter .variable {
-  color: #898989 !important;
-}
-.syntaxhighlighter .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter .functions {
-  color: #aaaaaa !important;
-}
-.syntaxhighlighter .constants {
-  color: #96daff !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: #d01d33 !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: #ffc074 !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: #4a8cdb !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: #96daff !important;
-}
-
-.syntaxhighlighter .functions {
-  font-weight: bold !important;
-}
diff --git a/javadoc/resources/sh/styles/shThemeMDUltra.css b/javadoc/resources/sh/styles/shThemeMDUltra.css
deleted file mode 100755
index b5aba339..00000000
--- a/javadoc/resources/sh/styles/shThemeMDUltra.css
+++ /dev/null
@@ -1,97 +0,0 @@
-.syntaxhighlighter {
-  background-color: #222222 !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: #222222 !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: #222222 !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #253e5a !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: white !important;
-}
-.syntaxhighlighter table caption {
-  color: lime !important;
-}
-.syntaxhighlighter .gutter {
-  color: #38566f !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 3px solid #435a5f !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #435a5f !important;
-  color: #222222 !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: #428bdd !important;
-  background: black !important;
-  border: 1px solid #435a5f !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: #428bdd !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: lime !important;
-}
-.syntaxhighlighter .toolbar {
-  color: #aaaaff !important;
-  background: #435a5f !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: #aaaaff !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: #9ccff4 !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: lime !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #428bdd !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: lime !important;
-}
-.syntaxhighlighter .keyword {
-  color: #aaaaff !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: #8aa6c1 !important;
-}
-.syntaxhighlighter .variable {
-  color: aqua !important;
-}
-.syntaxhighlighter .value {
-  color: #f7e741 !important;
-}
-.syntaxhighlighter .functions {
-  color: #ff8000 !important;
-}
-.syntaxhighlighter .constants {
-  color: yellow !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: #aaaaff !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: red !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: yellow !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: #ffaa3e !important;
-}
diff --git a/javadoc/resources/sh/styles/shThemeMidnight.css b/javadoc/resources/sh/styles/shThemeMidnight.css
deleted file mode 100755
index c1992cf6..00000000
--- a/javadoc/resources/sh/styles/shThemeMidnight.css
+++ /dev/null
@@ -1,97 +0,0 @@
-.syntaxhighlighter {
-  background-color: #0f192a !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: #0f192a !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: #0f192a !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #253e5a !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: #38566f !important;
-}
-.syntaxhighlighter table caption {
-  color: #d1edff !important;
-}
-.syntaxhighlighter .gutter {
-  color: #afafaf !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 3px solid #435a5f !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #435a5f !important;
-  color: #0f192a !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: #428bdd !important;
-  background: black !important;
-  border: 1px solid #435a5f !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: #428bdd !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: #1dc116 !important;
-}
-.syntaxhighlighter .toolbar {
-  color: #d1edff !important;
-  background: #435a5f !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: #d1edff !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: #8aa6c1 !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: #d1edff !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #428bdd !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: #1dc116 !important;
-}
-.syntaxhighlighter .keyword {
-  color: #b43d3d !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: #8aa6c1 !important;
-}
-.syntaxhighlighter .variable {
-  color: #ffaa3e !important;
-}
-.syntaxhighlighter .value {
-  color: #f7e741 !important;
-}
-.syntaxhighlighter .functions {
-  color: #ffaa3e !important;
-}
-.syntaxhighlighter .constants {
-  color: #e0e8ff !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: #b43d3d !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: #f8bb00 !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: white !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: #ffaa3e !important;
-}
diff --git a/javadoc/resources/sh/styles/shThemeNLPCraft.css b/javadoc/resources/sh/styles/shThemeNLPCraft.css
deleted file mode 100755
index ba51c941..00000000
--- a/javadoc/resources/sh/styles/shThemeNLPCraft.css
+++ /dev/null
@@ -1,101 +0,0 @@
-.syntaxhighlighter {
-  background-color: #283646 !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: #283646 !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: #283646 !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #2c2c29 !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: white !important;
-}
-.syntaxhighlighter table caption {
-  color: white !important;
-}
-.syntaxhighlighter .gutter {
-  color: #c5c4da !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 2px solid #bd643b !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #3185b9 !important;
-  color: #283646 !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: #3185b9 !important;
-  background: black !important;
-  border: 1px solid #3185b9 !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: #3185b9 !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: #d01d33 !important;
-}
-.syntaxhighlighter .toolbar {
-  color: white !important;
-  background: #3185b9 !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: white !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: #96daff !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: #d8d3fb !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #5d7890 !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: #65da2a !important;
-}
-.syntaxhighlighter .keyword {
-  color: #e082ff !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: #435a5f !important;
-}
-.syntaxhighlighter .variable {
-  color: #898989 !important;
-}
-.syntaxhighlighter .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter .functions {
-  color: #aaaaaa !important;
-}
-.syntaxhighlighter .constants {
-  color: #96daff !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: #d01d33 !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: #ffc074 !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: #4a8cdb !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: #96daff !important;
-}
-
-.syntaxhighlighter .functions {
-  font-weight: bold !important;
-}
diff --git a/javadoc/resources/sh/styles/shThemeRDark.css b/javadoc/resources/sh/styles/shThemeRDark.css
deleted file mode 100755
index 6a51b513..00000000
--- a/javadoc/resources/sh/styles/shThemeRDark.css
+++ /dev/null
@@ -1,97 +0,0 @@
-.syntaxhighlighter {
-  background-color: #1b2426 !important;
-}
-.syntaxhighlighter .line.alt1 {
-  background-color: #1b2426 !important;
-}
-.syntaxhighlighter .line.alt2 {
-  background-color: #1b2426 !important;
-}
-.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
-  background-color: #323e41 !important;
-}
-.syntaxhighlighter .line.highlighted.number {
-  color: #b9bdb6 !important;
-}
-.syntaxhighlighter table caption {
-  color: #b9bdb6 !important;
-}
-.syntaxhighlighter .gutter {
-  color: #afafaf !important;
-}
-.syntaxhighlighter .gutter .line {
-  border-right: 3px solid #435a5f !important;
-}
-.syntaxhighlighter .gutter .line.highlighted {
-  background-color: #435a5f !important;
-  color: #1b2426 !important;
-}
-.syntaxhighlighter.printing .line .content {
-  border: none !important;
-}
-.syntaxhighlighter.collapsed {
-  overflow: visible !important;
-}
-.syntaxhighlighter.collapsed .toolbar {
-  color: #5ba1cf !important;
-  background: black !important;
-  border: 1px solid #435a5f !important;
-}
-.syntaxhighlighter.collapsed .toolbar a {
-  color: #5ba1cf !important;
-}
-.syntaxhighlighter.collapsed .toolbar a:hover {
-  color: #5ce638 !important;
-}
-.syntaxhighlighter .toolbar {
-  color: white !important;
-  background: #435a5f !important;
-  border: none !important;
-}
-.syntaxhighlighter .toolbar a {
-  color: white !important;
-}
-.syntaxhighlighter .toolbar a:hover {
-  color: #e0e8ff !important;
-}
-.syntaxhighlighter .plain, .syntaxhighlighter .plain a {
-  color: #b9bdb6 !important;
-}
-.syntaxhighlighter .comments, .syntaxhighlighter .comments a {
-  color: #878a85 !important;
-}
-.syntaxhighlighter .string, .syntaxhighlighter .string a {
-  color: #5ce638 !important;
-}
-.syntaxhighlighter .keyword {
-  color: #5ba1cf !important;
-}
-.syntaxhighlighter .preprocessor {
-  color: #435a5f !important;
-}
-.syntaxhighlighter .variable {
-  color: #ffaa3e !important;
-}
-.syntaxhighlighter .value {
-  color: #009900 !important;
-}
-.syntaxhighlighter .functions {
-  color: #ffaa3e !important;
-}
-.syntaxhighlighter .constants {
-  color: #e0e8ff !important;
-}
-.syntaxhighlighter .script {
-  font-weight: bold !important;
-  color: #5ba1cf !important;
-  background-color: none !important;
-}
-.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
-  color: #e0e8ff !important;
-}
-.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
-  color: white !important;
-}
-.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
-  color: #ffaa3e !important;
-}
diff --git a/javadoc/stylesheet.css b/javadoc/stylesheet.css
deleted file mode 100644
index 4fe0b6de..00000000
--- a/javadoc/stylesheet.css
+++ /dev/null
@@ -1,1011 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/*
- * Styles for individual HTML elements.
- *
- * These are styles that are specific to individual HTML elements. Changing them affects the style of a particular
- * HTML element throughout the page.
- */
-
-body {
-    background-color:#ffffff;
-    color:#353833;
-    font-family: Verdana, Helvetica, Arial, sans-serif;
-    font-size:14px;
-    margin:0;
-    padding:0;
-    height:100%;
-    width:100%;
-}
-iframe {
-    margin:0;
-    padding:0;
-    height:100%;
-    width:100%;
-    overflow-y:scroll;
-    border:none;
-}
-a:link, a:visited {
-    color:#4A6782;
-}
-a[href]:hover, a[href]:focus {
-    color:#bb7a2a;
-}
-a[name] {
-    color:#353833;
-}
-a[name]:before, a[name]:target, a[id]:before, a[id]:target {
-    content:"";
-    display:inline-block;
-    position:relative;
-    padding-top:129px;
-    margin-top:-129px;
-}
-pre {
-    font-family:"Roboto Mono", monospace;
-    font-size:14px;
-}
-h1 {
-    font-size:20px;
-}
-h2 {
-    font-size:18px;
-}
-h3 {
-    font-size: 16px;
-}
-span.hdr {
-    font-size: 14px;
-    margin-bottom: 5px;
-    display: block;
-    font-weight: 800;
-    margin-top: 10px;
-}
-h4 {
-    font-size:13px;
-}
-h5 {
-    font-size:12px;
-}
-h6 {
-    font-size:11px;
-}
-ul {
-    list-style-type:disc;
-}
-code, tt {
-    font-family:"Roboto Mono", monospace;
-    font-size:14px;
-    padding-top:4px;
-    margin-top:8px;
-    line-height:1.4em;
-    color: #4A6782;
-}
-dt code {
-    font-family:"Roboto Mono", monospace;
-    font-size:14px;
-    padding-top:4px;
-    color: #4A6782;
-}
-table tr td dt code {
-    font-family:"Roboto Mono", monospace;
-    font-size:14px;
-    vertical-align:top;
-    padding-top:4px;
-    color: #4A6782;
-}
-sup {
-    font-size:8px;
-}
-
-/*
- * Styles for HTML generated by javadoc.
- *
- * These are style classes that are used by the standard doclet to generate HTML documentation.
- */
-
-/*
- * Styles for document title and copyright.
- */
-.clear {
-    clear:both;
-    height:0;
-    overflow:hidden;
-}
-.aboutLanguage {
-    float:right;
-    padding:0 21px;
-    font-size:11px;
-    z-index:200;
-    margin-top:-9px;
-}
-.legalCopy {
-    margin-left:.5em;
-}
-.bar a, .bar a:link, .bar a:visited, .bar a:active {
-    color:#FFFFFF;
-}
-.bar a:hover, .bar a:focus {
-    color:#bb7a2a;
-}
-.tab {
-    background-color:#0066FF;
-    color:#ffffff;
-    padding:8px;
-    width:5em;
-    font-weight:bold;
-}
-/*
- * Styles for navigation bar.
- */
-.bar {
-    background-color:#4D7A97;
-    color:#FFFFFF;
-    padding:.8em .5em .4em .8em;
-    height:auto;/*height:1.8em;*/
-    font-size:11px;
-    margin:0;
-}
-.navPadding {
-    padding-top: 107px;
-}
-.fixedNav {
-    position:fixed;
-    width:100%;
-    z-index:999;
-    background-color:#ffffff;
-}
-.topNav {
-    background-color:#4D7A97;
-    color:#FFFFFF;
-    float:left;
-    width:100%;
-    clear:right;
-    height:2.8em;
-    padding: 10px 0 0;
-    overflow:hidden;
-    font-size:12px;
-}
-.bottomNav {
-    margin-top:10px;
-    background-color:#4D7A97;
-    color:#FFFFFF;
-    float:left;
-    width:100%;
-    clear:right;
-    height:2.8em;
-    padding: 10px 0 0;
-    overflow:hidden;
-    font-size:12px;
-}
-.subNav {
-    background-color:#dee3e9;
-    float:left;
-    width:100%;
-    overflow:hidden;
-    font-size:12px;
-}
-.subNav div {
-    clear:left;
-    float:left;
-    padding:0 0 5px 6px;
-    text-transform:uppercase;
-}
-ul.navList, ul.subNavList {
-    float:left;
-    margin:0 25px 0 0;
-    padding:0;
-}
-ul.navList li{
-    list-style:none;
-    float:left;
-    padding: 5px 6px;
-    text-transform:uppercase;
-}
-ul.navListSearch {
-    float:right;
-    margin:0 0 0 0;
-    padding:0;
-}
-ul.navListSearch li {
-    list-style:none;
-    float:right;
-    padding: 5px 6px;
-    text-transform:uppercase;
-}
-ul.navListSearch li label {
-    position:relative;
-    right:-16px;
-}
-ul.subNavList li {
-    list-style:none;
-    float:left;
-}
-.topNav a:link, .topNav a:active, .topNav a:visited, .bottomNav a:link, .bottomNav a:active, .bottomNav a:visited {
-    color:#FFFFFF;
-    text-transform:uppercase;
-}
-.topNav a:hover, .bottomNav a:hover {
-    color:#bb7a2a;
-    text-transform:uppercase;
-}
-.navBarCell1Rev {
-    background-color:#F8981D;
-    color:#253441;
-    margin: auto 5px;
-}
-.skipNav {
-    position:absolute;
-    top:auto;
-    left:-9999px;
-    overflow:hidden;
-}
-/*
- * Styles for page header and footer.
- */
-.header, .footer {
-    clear:both;
-    margin:0 20px;
-    padding:5px 0 0 0;
-}
-.indexNav {
-    position:relative;
-    font-size:12px;
-    background-color:#dee3e9;
-}
-.indexNav ul {
-    margin-top:0;
-    padding:5px;
-}
-.indexNav ul li {
-    display:inline;
-    list-style-type:none;
-    padding-right:10px;
-    text-transform:uppercase;
-}
-.indexNav h1 {
-    font-size:13px;
-}
-.title {
-    color:#2c4557;
-    margin:10px 0;
-}
-.subTitle {
-    margin:5px 0 0 0;
-}
-.header ul {
-    margin:0 0 15px 0;
-    padding:0;
-}
-.footer ul {
-    margin:20px 0 5px 0;
-}
-.header ul li, .footer ul li {
-    list-style:none;
-    font-size:13px;
-}
-/*
- * Styles for headings.
- */
-div.details ul.blockList ul.blockList ul.blockList li.blockList h4, div.details ul.blockList ul.blockList ul.blockListLast li.blockList h4 {
-    background-color:#dee3e9;
-    border:1px solid #d0d9e0;
-    margin:0 0 6px -8px;
-    padding:7px 5px;
-}
-ul.blockList ul.blockList ul.blockList li.blockList h3 {
-    background-color:#dee3e9;
-    border:1px solid #d0d9e0;
-    margin:0 0 6px -8px;
-    padding:7px 5px;
-}
-ul.blockList ul.blockList li.blockList h3 {
-    padding:0;
-    margin:15px 0;
-}
-ul.blockList li.blockList h2 {
-    padding:0 0 20px 0;
-}
-/*
- * Styles for page layout containers.
- */
-.contentContainer, .sourceContainer, .classUseContainer, .serializedFormContainer, .constantValuesContainer,
-.allClassesContainer, .allPackagesContainer {
-    clear:both;
-    padding:10px 20px;
-    position:relative;
-}
-.indexContainer {
-    margin:10px;
-    position:relative;
-    font-size:12px;
-}
-.indexContainer h2 {
-    font-size:13px;
-    padding:0 0 3px 0;
-}
-.indexContainer ul {
-    margin:0;
-    padding:0;
-}
-.indexContainer ul li {
-    list-style:none;
-    padding-top:2px;
-}
-.contentContainer .description dl dt, .contentContainer .details dl dt, .serializedFormContainer dl dt {
-    font-size:14px;
-    font-weight:bold;
-    margin:10px 0 0 0;
-    color:#4E4E4E;
-}
-.contentContainer .description dl dd, .contentContainer .details dl dd, .serializedFormContainer dl dd {
-    margin:5px 0 10px 0;
-    font-size:14px;
-    font-family: Verdana, Georgia, "Times New Roman", Times, serif;
-}
-.serializedFormContainer dl.nameValue dt {
-    margin-left:1px;
-    font-size:1.1em;
-    display:inline;
-    font-weight:bold;
-}
-.serializedFormContainer dl.nameValue dd {
-    margin:0 0 0 1px;
-    font-size:1.1em;
-    display:inline;
-}
-/*
- * Styles for lists.
- */
-li.circle {
-    list-style:circle;
-}
-ul.horizontal li {
-    display:inline;
-    font-size:0.9em;
-}
-ul.inheritance {
-    margin:0;
-    padding:0;
-}
-ul.inheritance li {
-    display:inline;
-    list-style:none;
-}
-ul.inheritance li ul.inheritance {
-    margin-left:15px;
-    padding-left:15px;
-    padding-top:1px;
-}
-ul.blockList, ul.blockListLast {
-    margin:10px 0 10px 0;
-    padding:0;
-}
-ul.blockList li.blockList, ul.blockListLast li.blockList {
-    list-style:none;
-    margin-bottom:15px;
-    line-height:1.4;
-}
-ul.blockList ul.blockList li.blockList, ul.blockList ul.blockListLast li.blockList {
-    padding:0 20px 5px 10px;
-    border:1px solid #ededed;
-    background-color:#f8f8f8;
-}
-ul.blockList ul.blockList ul.blockList li.blockList, ul.blockList ul.blockList ul.blockListLast li.blockList {
-    padding:0 0 5px 8px;
-    background-color:#ffffff;
-    border:none;
-}
-ul.blockList ul.blockList ul.blockList ul.blockList li.blockList {
-    margin-left:0;
-    padding-left:0;
-    padding-bottom:15px;
-    border:none;
-}
-ul.blockList ul.blockList ul.blockList ul.blockList li.blockListLast {
-    list-style:none;
-    border-bottom:none;
-    padding-bottom:0;
-}
-table tr td dl, table tr td dl dt, table tr td dl dd {
-    margin-top:0;
-    margin-bottom:1px;
-}
-/*
- * Styles for tables.
- */
-.overviewSummary, .memberSummary, .typeSummary, .useSummary, .constantsSummary, .deprecatedSummary,
-.requiresSummary, .packagesSummary, .providesSummary, .usesSummary {
-    width:100%;
-    border-spacing:0;
-    border-left:1px solid #EEE;
-    border-right:1px solid #EEE;
-    border-bottom:1px solid #EEE;
-}
-.overviewSummary, .memberSummary, .requiresSummary, .packagesSummary, .providesSummary, .usesSummary  {
-    padding:0;
-}
-.overviewSummary caption, .memberSummary caption, .typeSummary caption,
-.useSummary caption, .constantsSummary caption, .deprecatedSummary caption,
-.requiresSummary caption, .packagesSummary caption, .providesSummary caption, .usesSummary caption {
-    position:relative;
-    text-align:left;
-    background-repeat:no-repeat;
-    color:#253441;
-    font-weight:bold;
-    clear:none;
-    overflow:hidden;
-    padding: 10px 0 0 1px;
-    margin:0;
-    white-space:pre;
-}
-.overviewSummary caption a:link, .memberSummary caption a:link, .typeSummary caption a:link,
-.constantsSummary caption a:link, .deprecatedSummary caption a:link,
-.requiresSummary caption a:link, .packagesSummary caption a:link, .providesSummary caption a:link,
-.usesSummary caption a:link,
-.overviewSummary caption a:hover, .memberSummary caption a:hover, .typeSummary caption a:hover,
-.constantsSummary caption a:hover, .deprecatedSummary caption a:hover,
-.requiresSummary caption a:hover, .packagesSummary caption a:hover, .providesSummary caption a:hover,
-.usesSummary caption a:hover,
-.overviewSummary caption a:active, .memberSummary caption a:active, .typeSummary caption a:active,
-.constantsSummary caption a:active, .deprecatedSummary caption a:active,
-.requiresSummary caption a:active, .packagesSummary caption a:active, .providesSummary caption a:active,
-.usesSummary caption a:active,
-.overviewSummary caption a:visited, .memberSummary caption a:visited, .typeSummary caption a:visited,
-.constantsSummary caption a:visited, .deprecatedSummary caption a:visited,
-.requiresSummary caption a:visited, .packagesSummary caption a:visited, .providesSummary caption a:visited,
-.usesSummary caption a:visited {
-    color:#FFFFFF;
-}
-.useSummary caption a:link, .useSummary caption a:hover, .useSummary caption a:active,
-.useSummary caption a:visited {
-    color:#1f389c;
-}
-.overviewSummary caption span, .memberSummary caption span, .typeSummary caption span,
-.useSummary caption span, .constantsSummary caption span, .deprecatedSummary caption span,
-.requiresSummary caption span, .packagesSummary caption span, .providesSummary caption span,
-.usesSummary caption span {
-    white-space:nowrap;
-    padding: 5px 12px 7px;
-    display:inline-block;
-    float:left;
-    background-color:#F8981D;
-    border: none;
-    height:16px;
-}
-.memberSummary caption span.activeTableTab span, .packagesSummary caption span.activeTableTab span,
-.overviewSummary caption span.activeTableTab span, .typeSummary caption span.activeTableTab span {
-    white-space:nowrap;
-    padding-top:5px;
-    padding-left:12px;
-    padding-right:12px;
-    margin-right:3px;
-    display:inline-block;
-    float:left;
-    background-color:#F8981D;
-    height:16px;
-}
-.memberSummary caption span.tableTab span, .packagesSummary caption span.tableTab span,
-.overviewSummary caption span.tableTab span, .typeSummary caption span.tableTab span {
-    white-space:nowrap;
-    padding-top:5px;
-    padding-left:12px;
-    padding-right:12px;
-    margin-right:3px;
-    display:inline-block;
-    float:left;
-    background-color:#4D7A97;
-    height:16px;
-}
-.memberSummary caption span.tableTab, .memberSummary caption span.activeTableTab,
-.packagesSummary caption span.tableTab, .packagesSummary caption span.activeTableTab,
-.overviewSummary caption span.tableTab, .overviewSummary caption span.activeTableTab,
-.typeSummary caption span.tableTab, .typeSummary caption span.activeTableTab {
-    padding-top:0;
-    padding-left:0;
-    padding-right:0;
-    background-image:none;
-    float:none;
-    display:inline;
-}
-.overviewSummary .tabEnd, .memberSummary .tabEnd, .typeSummary .tabEnd,
-.useSummary .tabEnd, .constantsSummary .tabEnd, .deprecatedSummary .tabEnd,
-.requiresSummary .tabEnd, .packagesSummary .tabEnd, .providesSummary .tabEnd, .usesSummary .tabEnd {
-    display:none;
-    width:5px;
-    position:relative;
-    float:left;
-    background-color:#F8981D;
-}
-.memberSummary .activeTableTab .tabEnd, .packagesSummary .activeTableTab .tabEnd,
-.overviewSummary .activeTableTab .tabEnd, .typeSummary .activeTableTab .tabEnd {
-    display:none;
-    width:5px;
-    margin-right:3px;
-    position:relative;
-    float:left;
-    background-color:#F8981D;
-}
-.memberSummary .tableTab .tabEnd, .packagesSummary .tableTab .tabEnd,
-.overviewSummary .tableTab .tabEnd, .typeSummary .tableTab .tabEnd {
-    display:none;
-    width:5px;
-    margin-right:3px;
-    position:relative;
-    background-color:#4D7A97;
-    float:left;
-}
-.rowColor th, .altColor th {
-    font-weight:normal;
-}
-.overviewSummary td, .memberSummary td, .typeSummary td,
-.useSummary td, .constantsSummary td, .deprecatedSummary td,
-.requiresSummary td, .packagesSummary td, .providesSummary td, .usesSummary td {
-    text-align:left;
-    padding:0 0 12px 10px;
-}
-th.colFirst, th.colSecond, th.colLast, th.colConstructorName, th.colDeprecatedItemName, .useSummary th,
-.constantsSummary th, .packagesSummary th, td.colFirst, td.colSecond, td.colLast, .useSummary td,
-.constantsSummary td {
-    vertical-align:top;
-    padding-right:0;
-    padding-top:8px;
-    padding-bottom:3px;
-}
-th.colFirst, th.colSecond, th.colLast, th.colConstructorName, th.colDeprecatedItemName, .constantsSummary th,
-.packagesSummary th {
-    background:#dee3e9;
-    text-align:left;
-    padding:8px 3px 3px 7px;
-}
-td.colFirst, th.colFirst {
-    font-size:13px;
-}
-td.colSecond, th.colSecond, td.colLast, th.colConstructorName, th.colDeprecatedItemName, th.colLast {
-    font-size:13px;
-}
-.constantsSummary th, .packagesSummary th {
-    font-size:13px;
-}
-.providesSummary th.colFirst, .providesSummary th.colLast, .providesSummary td.colFirst,
-.providesSummary td.colLast {
-    white-space:normal;
-    font-size:13px;
-}
-.overviewSummary td.colFirst, .overviewSummary th.colFirst,
-.requiresSummary td.colFirst, .requiresSummary th.colFirst,
-.packagesSummary td.colFirst, .packagesSummary td.colSecond, .packagesSummary th.colFirst, .packagesSummary th,
-.usesSummary td.colFirst, .usesSummary th.colFirst,
-.providesSummary td.colFirst, .providesSummary th.colFirst,
-.memberSummary td.colFirst, .memberSummary th.colFirst,
-.memberSummary td.colSecond, .memberSummary th.colSecond, .memberSummary th.colConstructorName,
-.typeSummary td.colFirst, .typeSummary th.colFirst {
-    vertical-align:top;
-}
-.packagesSummary th.colLast, .packagesSummary td.colLast {
-    white-space:normal;
-}
-td.colFirst a:link, td.colFirst a:visited,
-td.colSecond a:link, td.colSecond a:visited,
-th.colFirst a:link, th.colFirst a:visited,
-th.colSecond a:link, th.colSecond a:visited,
-th.colConstructorName a:link, th.colConstructorName a:visited,
-th.colDeprecatedItemName a:link, th.colDeprecatedItemName a:visited,
-.constantValuesContainer td a:link, .constantValuesContainer td a:visited,
-.allClassesContainer td a:link, .allClassesContainer td a:visited,
-.allPackagesContainer td a:link, .allPackagesContainer td a:visited {
-    font-weight:bold;
-}
-.tableSubHeadingColor {
-    background-color:#EEEEFF;
-}
-.altColor, .altColor th {
-    background-color:#FFFFFF;
-}
-.rowColor, .rowColor th {
-    background-color:#EEEEEF;
-}
-/*
- * Styles for contents.
- */
-.description pre {
-    margin-top:0;
-}
-.deprecatedContent {
-    margin:0;
-    padding:10px 0;
-}
-.docSummary {
-    padding:0;
-}
-ul.blockList ul.blockList ul.blockList li.blockList h3 {
-    font-style:normal;
-}
-div.block {
-    font-size:14px;
-    font-family: Verdana, Georgia, "Times New Roman", Times, serif;
-}
-td.colLast div {
-    padding-top:0;
-}
-td.colLast a {
-    padding-bottom:3px;
-}
-/*
- * Styles for formatting effect.
- */
-.sourceLineNo {
-    color:green;
-    padding:0 30px 0 0;
-}
-h1.hidden {
-    visibility:hidden;
-    overflow:hidden;
-    font-size:10px;
-}
-.block {
-    display:block;
-    margin:3px 10px 2px 0;
-    color:#474747;
-}
-.deprecatedLabel, .descfrmTypeLabel, .implementationLabel, .memberNameLabel, .memberNameLink,
-.moduleLabelInPackage, .moduleLabelInType, .overrideSpecifyLabel, .packageLabelInType,
-.packageHierarchyLabel, .paramLabel, .returnLabel, .seeLabel, .simpleTagLabel,
-.throwsLabel, .typeNameLabel, .typeNameLink, .searchTagLink {
-    font-weight:bold;
-}
-.deprecationComment, .emphasizedPhrase, .interfaceName {
-    font-style:italic;
-}
-.deprecationBlock {
-    font-size:14px;
-    font-family: Verdana, Georgia, "Times New Roman", Times, serif;
-    border-style:solid;
-    border-width:thin;
-    border-radius:10px;
-    padding:10px;
-    margin-bottom:10px;
-    margin-right:10px;
-    display:inline-block;
-}
-div.block div.deprecationComment, div.block div.block span.emphasizedPhrase,
-div.block div.block span.interfaceName {
-    font-style:normal;
-}
-div.contentContainer ul.blockList li.blockList h2 {
-    padding-bottom:0;
-}
-/*
- * Styles for IFRAME.
- */
-.mainContainer {
-    margin:0 auto;
-    padding:0;
-    height:100%;
-    width:100%;
-    position:fixed;
-    top:0;
-    left:0;
-}
-.leftContainer {
-    height:100%;
-    position:fixed;
-    width:320px;
-}
-.leftTop {
-    position:relative;
-    float:left;
-    width:315px;
-    top:0;
-    left:0;
-    height:30%;
-    border-right:6px solid #ccc;
-    border-bottom:6px solid #ccc;
-}
-.leftBottom {
-    position:relative;
-    float:left;
-    width:315px;
-    bottom:0;
-    left:0;
-    height:70%;
-    border-right:6px solid #ccc;
-    border-top:1px solid #000;
-}
-.rightContainer {
-    position:absolute;
-    left:320px;
-    top:0;
-    bottom:0;
-    height:100%;
-    right:0;
-    border-left:1px solid #000;
-}
-.rightIframe {
-    padding:0;
-    height:100%;
-    right:30px;
-    width:100%;
-    overflow:visible;
-    margin: 0 0 30px;
-}
-/*
- * Styles specific to HTML5 elements.
- */
-main, nav, header, footer, section {
-    display:block;
-}
-/*
- * Styles for javadoc search.
- */
-.ui-autocomplete-category {
-    font-weight:bold;
-    font-size:15px;
-    padding:7px 0 7px 3px;
-    background-color:#4D7A97;
-    color:#FFFFFF;
-}
-.resultItem {
-    font-size:13px;
-}
-.ui-autocomplete {
-    max-height:85%;
-    max-width:65%;
-    overflow-y:scroll;
-    overflow-x:scroll;
-    white-space:nowrap;
-    box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23);
-}
-ul.ui-autocomplete {
-    position:fixed;
-    z-index:999999;
-}
-ul.ui-autocomplete  li {
-    float:left;
-    clear:both;
-    width:100%;
-}
-.resultHighlight {
-    font-weight:bold;
-}
-#search {
-    background-image:url('resources/glass.png');
-    background-size:13px;
-    background-repeat:no-repeat;
-    background-position:2px 3px;
-    padding-left:20px;
-    position:relative;
-    right:-18px;
-}
-#reset {
-    background-color: rgb(255,255,255);
-    background-image:url('resources/x.png');
-    background-position:center;
-    background-repeat:no-repeat;
-    background-size:12px;
-    border:0 none;
-    width:16px;
-    height:17px;
-    position:relative;
-    left:-4px;
-    top:-4px;
-    font-size:0;
-}
-.watermark {
-    color:#545454;
-}
-.searchTagDescResult {
-    font-style:italic;
-    font-size:11px;
-}
-.searchTagHolderResult {
-    font-style:italic;
-    font-size:12px;
-}
-.searchTagResult:before, .searchTagResult:target {
-    color:red;
-}
-.moduleGraph span {
-    display:none;
-    position:absolute;
-}
-.moduleGraph:hover span {
-    display:block;
-    margin: -100px 0 0 100px;
-    z-index: 1;
-}
-.methodSignature {
-    white-space:normal;
-    color: #4d7a97;
-    font-weight: 700;
-}
-
-/*
- * Styles for user-provided tables.
- *
- * borderless:
- *      No borders, vertical margins, styled caption.
- *      This style is provided for use with existing doc comments.
- *      In general, borderless tables should not be used for layout purposes.
- *
- * plain:
- *      Plain borders around table and cells, vertical margins, styled caption.
- *      Best for small tables or for complex tables for tables with cells that span
- *      rows and columns, when the "striped" style does not work well.
- *
- * striped:
- *      Borders around the table and vertical borders between cells, striped rows,
- *      vertical margins, styled caption.
- *      Best for tables that have a header row, and a body containing a series of simple rows.
- */
-
-table.borderless,
-table.plain,
-table.striped {
-    margin-top: 10px;
-    margin-bottom: 10px;
-}
-table.borderless > caption,
-table.plain > caption,
-table.striped > caption {
-    font-weight: bold;
-    font-size: smaller;
-}
-table.borderless th, table.borderless td,
-table.plain th, table.plain td,
-table.striped th, table.striped td {
-    padding: 2px 5px;
-}
-table.borderless,
-table.borderless > thead > tr > th, table.borderless > tbody > tr > th, table.borderless > tr > th,
-table.borderless > thead > tr > td, table.borderless > tbody > tr > td, table.borderless > tr > td {
-    border: none;
-}
-table.borderless > thead > tr, table.borderless > tbody > tr, table.borderless > tr {
-    background-color: transparent;
-}
-table.plain {
-    border-collapse: collapse;
-    border: 1px solid black;
-}
-table.plain > thead > tr, table.plain > tbody tr, table.plain > tr {
-    background-color: transparent;
-}
-table.plain > thead > tr > th, table.plain > tbody > tr > th, table.plain > tr > th,
-table.plain > thead > tr > td, table.plain > tbody > tr > td, table.plain > tr > td {
-    border: 1px solid black;
-}
-table.striped {
-    border-collapse: collapse;
-    border: 1px solid black;
-}
-table.striped > thead {
-    background-color: #E3E3E3;
-}
-table.striped > thead > tr > th, table.striped > thead > tr > td {
-    border: 1px solid black;
-}
-table.striped > tbody > tr:nth-child(even) {
-    background-color: #EEE
-}
-table.striped > tbody > tr:nth-child(odd) {
-    background-color: #FFF
-}
-table.striped > tbody > tr > th, table.striped > tbody > tr > td {
-    border-left: 1px solid black;
-    border-right: 1px solid black;
-}
-table.striped > tbody > tr > th {
-    font-weight: normal;
-}
-
-
-/* ================================================================= */
-
-ul {
-    margin-top: 5px;
-    margin-bottom: 10px;
-}
-
-h3 {
-    margin-bottom: 5px;
-    font-style: normal;
-}
-
-h2 {
-    margin-bottom: 5px;
-}
-
-.legalCopy {
-    margin-left: 0.4em;
-    margin-top: 90px;
-    font-size: 110%;
-}
-
-.bar {
-    font-size: 110% !important;
-}
-
-.aboutLanguage {
-    float: right;
-    padding: 12px 10px;
-    font-size: 110%;
-    z-index: 200;
-    margin-top: -9px;
-}
-
-.dl-table {
-    border-collapse: collapse;
-    border-radius: 2px;
-    overflow: auto;
-    margin-top: 10px;
-    margin-bottom: 10px;
-}
-
-.dl-table tr > th {
-    padding: 8px;
-    font-size: 15px;
-    font-weight: 700;
-    color: #333;
-    border: 1px solid #eee;
-    background: #eee;
-    white-space: nowrap;
-}
-
-.dl-table tr > td {
-    padding: 8px;
-    letter-spacing: 0.02em;
-    font-weight: 400;
-    border-bottom: 1px solid #eee;
-    vertical-align: top;
-}
-
-.dl-table tr td:last-child {
-    border-right: 1px solid #eee;
-}
-
-.dl-table tr td:first-child {
-    border-left: 1px solid #eee;
-}
-
-.syntaxhighlighter {
-    overflow: hidden !important;
-    padding: 15px 0;
-    font-family: "Roboto Mono", monospace !important;
-}
-
-.syntaxhighlighter .toolbar {
-    display: none;
-}
-
-.title-hint {
-    font-size: 14px;
-    margin-top: 15px;
-    font-weight: 200;
-}
-
-.title-hint a {
-    color: #3295de;
-    font-weight: 400;
-}
-
-.github-logo {
-    font-size: 150% !important;
-    vertical-align: middle;
-    margin-left: 5px;
-}
\ No newline at end of file
diff --git a/nlpcraft-examples/lightswitch-fr/src/main/scala/org/apache/nlpcraft/examples/lightswitch/LightSwitchFrModel.scala b/nlpcraft-examples/lightswitch-fr/src/main/scala/org/apache/nlpcraft/examples/lightswitch/LightSwitchFrModel.scala
index c813c4fc..7989fe05 100644
--- a/nlpcraft-examples/lightswitch-fr/src/main/scala/org/apache/nlpcraft/examples/lightswitch/LightSwitchFrModel.scala
+++ b/nlpcraft-examples/lightswitch-fr/src/main/scala/org/apache/nlpcraft/examples/lightswitch/LightSwitchFrModel.scala
@@ -23,9 +23,7 @@ import org.apache.nlpcraft.annotations.*
 import org.apache.nlpcraft.examples.lightswitch.nlp.entity.parser.NCFrSemanticEntityParser
 import org.apache.nlpcraft.examples.lightswitch.nlp.token.enricher.*
 import org.apache.nlpcraft.examples.lightswitch.nlp.token.parser.NCFrTokenParser
-import org.apache.nlpcraft.nlp.entity.parser.*
-import org.apache.nlpcraft.nlp.token.enricher.*
-import org.apache.nlpcraft.nlp.token.parser.NCOpenNLPTokenParser
+import org.apache.nlpcraft.nlp.parsers.NCOpenNLPTokenParser
 
 import java.util
 import scala.jdk.CollectionConverters.*
diff --git a/nlpcraft-examples/lightswitch-fr/src/main/scala/org/apache/nlpcraft/examples/lightswitch/nlp/entity/parser/NCFrSemanticEntityParser.scala b/nlpcraft-examples/lightswitch-fr/src/main/scala/org/apache/nlpcraft/examples/lightswitch/nlp/entity/parser/NCFrSemanticEntityParser.scala
index d918a325..b7430e1f 100644
--- a/nlpcraft-examples/lightswitch-fr/src/main/scala/org/apache/nlpcraft/examples/lightswitch/nlp/entity/parser/NCFrSemanticEntityParser.scala
+++ b/nlpcraft-examples/lightswitch-fr/src/main/scala/org/apache/nlpcraft/examples/lightswitch/nlp/entity/parser/NCFrSemanticEntityParser.scala
@@ -19,8 +19,7 @@ package org.apache.nlpcraft.examples.lightswitch.nlp.entity.parser
 
 import opennlp.tools.stemmer.snowball.SnowballStemmer
 import org.apache.nlpcraft.examples.lightswitch.nlp.token.parser.NCFrTokenParser
-import org.apache.nlpcraft.nlp.entity.parser.*
-import org.apache.nlpcraft.nlp.entity.parser.semantic.*
+import org.apache.nlpcraft.nlp.parsers.*
 
 /**
   *
diff --git a/nlpcraft-examples/lightswitch-ru/src/main/scala/org/apache/nlpcraft/examples/lightswitch/LightSwitchRuModel.scala b/nlpcraft-examples/lightswitch-ru/src/main/scala/org/apache/nlpcraft/examples/lightswitch/LightSwitchRuModel.scala
index 84ac035c..ef6063ab 100644
--- a/nlpcraft-examples/lightswitch-ru/src/main/scala/org/apache/nlpcraft/examples/lightswitch/LightSwitchRuModel.scala
+++ b/nlpcraft-examples/lightswitch-ru/src/main/scala/org/apache/nlpcraft/examples/lightswitch/LightSwitchRuModel.scala
@@ -22,11 +22,9 @@ import org.apache.nlpcraft.*
 import org.apache.nlpcraft.examples.lightswitch.nlp.entity.parser.NCRuSemanticEntityParser
 import org.apache.nlpcraft.examples.lightswitch.nlp.token.enricher.*
 import org.apache.nlpcraft.examples.lightswitch.nlp.token.parser.NCRuTokenParser
-import org.apache.nlpcraft.nlp.entity.parser.NCNLPEntityParser
-import org.apache.nlpcraft.nlp.entity.parser.semantic.NCSemanticEntityParser
-import org.apache.nlpcraft.nlp.token.enricher.NCEnStopWordsTokenEnricher
-import org.apache.nlpcraft.nlp.token.parser.NCOpenNLPTokenParser
 import org.apache.nlpcraft.annotations.*
+import org.apache.nlpcraft.nlp.enrichers.NCEnStopWordsTokenEnricher
+import org.apache.nlpcraft.nlp.parsers.{NCNLPEntityParser, NCOpenNLPTokenParser, NCSemanticEntityParser}
 import java.util
 import scala.jdk.CollectionConverters.*
 
diff --git a/nlpcraft-examples/lightswitch-ru/src/main/scala/org/apache/nlpcraft/examples/lightswitch/nlp/entity/parser/NCRuSemanticEntityParser.scala b/nlpcraft-examples/lightswitch-ru/src/main/scala/org/apache/nlpcraft/examples/lightswitch/nlp/entity/parser/NCRuSemanticEntityParser.scala
index 5afa8c8f..a7448e29 100644
--- a/nlpcraft-examples/lightswitch-ru/src/main/scala/org/apache/nlpcraft/examples/lightswitch/nlp/entity/parser/NCRuSemanticEntityParser.scala
+++ b/nlpcraft-examples/lightswitch-ru/src/main/scala/org/apache/nlpcraft/examples/lightswitch/nlp/entity/parser/NCRuSemanticEntityParser.scala
@@ -19,8 +19,7 @@ package org.apache.nlpcraft.examples.lightswitch.nlp.entity.parser
 
 import opennlp.tools.stemmer.snowball.SnowballStemmer
 import org.apache.nlpcraft.examples.lightswitch.nlp.token.parser.NCRuTokenParser
-import org.apache.nlpcraft.nlp.entity.parser.*
-import org.apache.nlpcraft.nlp.entity.parser.semantic.*
+import org.apache.nlpcraft.nlp.parsers.*
 
 /**
   *
diff --git a/nlpcraft-examples/lightswitch/src/main/scala/org/apache/nlpcraft/examples/lightswitch/LightSwitchScalaModel.scala b/nlpcraft-examples/lightswitch/src/main/scala/org/apache/nlpcraft/examples/lightswitch/LightSwitchScalaModel.scala
index 32ea84e7..42b43495 100644
--- a/nlpcraft-examples/lightswitch/src/main/scala/org/apache/nlpcraft/examples/lightswitch/LightSwitchScalaModel.scala
+++ b/nlpcraft-examples/lightswitch/src/main/scala/org/apache/nlpcraft/examples/lightswitch/LightSwitchScalaModel.scala
@@ -21,10 +21,8 @@ import org.apache.nlpcraft.*
 import org.apache.nlpcraft.annotations.*
 import org.apache.nlpcraft.internal.util.NCResourceReader
 import org.apache.nlpcraft.nlp.*
-import org.apache.nlpcraft.nlp.entity.parser.semantic.NCSemanticEntityParser
-import org.apache.nlpcraft.nlp.entity.parser.*
-import org.apache.nlpcraft.nlp.token.enricher.NCEnStopWordsTokenEnricher
-import org.apache.nlpcraft.nlp.token.parser.NCOpenNLPTokenParser
+import org.apache.nlpcraft.nlp.enrichers.NCEnStopWordsTokenEnricher
+import org.apache.nlpcraft.nlp.parsers.{NCOpenNLPTokenParser, NCSemanticEntityParser}
 
 /**
   * This example provides very simple implementation for NLI-powered light switch.
diff --git a/nlpcraft-examples/pizzeria/src/main/java/org/apache/nlpcraft/examples/pizzeria/components/PizzeriaModelPipeline.scala b/nlpcraft-examples/pizzeria/src/main/java/org/apache/nlpcraft/examples/pizzeria/components/PizzeriaModelPipeline.scala
index 9baf9dad..046cf159 100644
--- a/nlpcraft-examples/pizzeria/src/main/java/org/apache/nlpcraft/examples/pizzeria/components/PizzeriaModelPipeline.scala
+++ b/nlpcraft-examples/pizzeria/src/main/java/org/apache/nlpcraft/examples/pizzeria/components/PizzeriaModelPipeline.scala
@@ -2,11 +2,12 @@ package org.apache.nlpcraft.examples.pizzeria.components
 
 import edu.stanford.nlp.pipeline.StanfordCoreNLP
 import opennlp.tools.stemmer.PorterStemmer
-import org.apache.nlpcraft.nlp.entity.parser.semantic.*
+import org.apache.nlpcraft.nlp.parsers.*
 import org.apache.nlpcraft.nlp.entity.parser.stanford.NCStanfordNLPEntityParser
-import org.apache.nlpcraft.nlp.token.enricher.NCEnStopWordsTokenEnricher
 import org.apache.nlpcraft.nlp.token.parser.stanford.NCStanfordNLPTokenParser
 import org.apache.nlpcraft.*
+import org.apache.nlpcraft.nlp.enrichers.NCEnStopWordsTokenEnricher
+import org.apache.nlpcraft.nlp.parsers.{NCSemanticEntityParser, NCSemanticStemmer}
 
 import java.util.Properties
 
diff --git a/nlpcraft-examples/time/src/main/scala/org/apache/nlpcraft/examples/time/TimeModel.scala b/nlpcraft-examples/time/src/main/scala/org/apache/nlpcraft/examples/time/TimeModel.scala
index b98465bc..89c8fadb 100644
--- a/nlpcraft-examples/time/src/main/scala/org/apache/nlpcraft/examples/time/TimeModel.scala
+++ b/nlpcraft-examples/time/src/main/scala/org/apache/nlpcraft/examples/time/TimeModel.scala
@@ -24,7 +24,7 @@ import org.apache.nlpcraft.annotations.*
 import org.apache.nlpcraft.examples.time.utils.cities.*
 import org.apache.nlpcraft.examples.time.utils.keycdn.GeoManager
 import org.apache.nlpcraft.internal.util.NCResourceReader
-import org.apache.nlpcraft.nlp.entity.parser.NCOpenNLPEntityParser
+import org.apache.nlpcraft.nlp.parsers.NCOpenNLPEntityParser
 
 import java.time.format.DateTimeFormatter
 import java.time.format.FormatStyle.MEDIUM
diff --git a/nlpcraft/pom.xml b/nlpcraft/pom.xml
index aee34f12..9c21a98c 100644
--- a/nlpcraft/pom.xml
+++ b/nlpcraft/pom.xml
@@ -245,116 +245,6 @@
                 </executions>
             </plugin>
 
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-javadoc-plugin</artifactId>
-                <version>${maven.javadoc.plugin.ver}</version>
-                <configuration>
-                    <additionalOptions>--allow-script-in-comments --ignore-source-errors</additionalOptions>
-                    <javadocDirectory>${project.basedir}/../javadoc</javadocDirectory>
-                    <doclint>none</doclint>
-                    <docfilessubdirs>true</docfilessubdirs>
-                    <encoding>UTF-8</encoding>
-                    <failOnError>false</failOnError>
-                    <failOnWarnings>false</failOnWarnings>
-                    <sourcepath>${project.basedir}/src/main/scala</sourcepath>
-                    <stylesheetfile>${project.parent.basedir}/javadoc/stylesheet.css</stylesheetfile>
-                    <bottom>
-                        <![CDATA[
-                            <center>
-                                <br/>
-                                <span style="font-size: larger">Copyright &#169; {currentYear} Apache Software Foundation</span>
-                                <br/>
-                                <br/>
-                                <img src="https://www.apache.org/img/ASF20thAnniversary.jpg" height="64px" alt="ASF Logo">
-                            </center>
-                        ]]>
-                    </bottom>
-                    <top>
-                        <![CDATA[
-                            <link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">
-                            <script src="https://nlpcraft.apache.org/javadoc/resources/sh/scripts/XRegExp.js" type="text/javascript"></script>
-                            <script src="https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shCore.js" type="text/javascript"></script>
-                            <script src="https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shAutoloader.js" type="text/javascript"></script>
-                            <link href="https://nlpcraft.apache.org/javadoc/resources/sh/styles/shCoreNLPCraft.css" rel="stylesheet" type="text/css" title="Style">
-                            <link href="https://nlpcraft.apache.org/javadoc/resources/sh/styles/shThemeNLPCraft.css" rel="stylesheet" type="text/css" title="Style">
-                            <link href="https://fonts.googleapis.com/css?family=Roboto+Mono" rel="stylesheet">
-                            <link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet">
-                            <script async defer src="https://buttons.github.io/buttons.js"></script>
-                        ]]>
-                    </top>
-                    <excludePackageNames>
-                        org.apache.nlpcraft.internal.*:org.apache.nlpcraft.nlp.token.impl.*:org.apache.nlpcraft.nlp.token.enricher.impl.*:org.apache.nlpcraft.nlp.token.parser.impl.*:org.apache.nlpcraft.nlp.entity.parser.impl.*
-                    </excludePackageNames>
-                    <groups>
-                        <group>
-                            <title>Main API</title>
-                            <packages>
-                                org.apache.nlpcraft
-                            </packages>
-                        </group>
-                        <group>
-                            <title>Entities</title>
-                            <packages>
-                                org.apache.nlpcraft.nlp.entity.parser:org.apache.nlpcraft.nlp.entity.parser.semantic
-                            </packages>
-                        </group>
-                        <group>
-                            <title>Tokens</title>
-                            <packages>
-                                org.apache.nlpcraft.nlp.token.parser:org.apache.nlpcraft.nlp.token.enricher
-                            </packages>
-                        </group>
-                    </groups>
-                    <header>
-                        <![CDATA[
-                            Apache NLPCraft <span style="font-size: 80%">${project.version}</span>
-                        ]]>
-                    </header>
-                    <footer>
-                        <![CDATA[
-                            <span style="vertical-align: super">Apache NLPCraft <span style="font-size: 80%">${project.version}</span></span>
-                            <a style="vertical-align: super; margin-right: 10px" href="https://github.com/apache/incubator-nlpcraft" target="github"><i class="fa fa-github github-logo"></i></a>
-                            <a class="github-button" href="https://github.com/apache/incubator-nlpcraft/tree/master/nlpcraft-examples" data-icon="octicon-eye" aria-label="NLPCraft Examples">Examples</a>
-                            <a class="github-button" href="https://github.com/apache/incubator-nlpcraft" data-icon="octicon-star" aria-label="Star on GitHub">Star</a>
-                            <a class="github-button" href="https://github.com/apache/incubator-nlpcraft/fork" data-icon="octicon-repo-forked" aria-label="Fork on GitHub">Fork</a>
-                            <script type="text/javascript">
-                                SyntaxHighlighter.defaults["auto-links"] = false;
-                                SyntaxHighlighter.defaults["tab-size"] = 2;
-
-                                SyntaxHighlighter.autoloader(
-                                    'java                   https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shBrushJava.js',
-                                    'js jscript javascript  https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shBrushJScript.js',
-                                    'text plain             https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shBrushPlain.js',
-                                    'py python              https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shBrushPython.js',
-                                    'ruby rails ror rb      https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shBrushRuby.js',
-                                    'scala                  https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shBrushScala.js',
-                                    'sql                    https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shBrushSql.js',
-                                    'xml xhtml xslt html    https://nlpcraft.apache.org/javadoc/resources/sh/scripts/shBrushXml.js'
-                                );
-                                SyntaxHighlighter.all();
-                            </script>
-                        ]]>
-                    </footer>
-                    <doctitle>
-                        <![CDATA[
-                            <img style="margin-top: 15px" src="https://nlpcraft.apache.org/images/nlpcraft_logo_darkblue.png" height="54px">
-                        ]]>
-                    </doctitle>
-                    <windowtitle>Apache NLPCraft ${project.version}</windowtitle>
-                    <show>public</show>
-                    <verbose>false</verbose>
-                </configuration>
-                <executions>
-                    <execution>
-                        <phase>package</phase>
-                        <goals>
-                            <goal>jar</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-site-plugin</artifactId>
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/NCPipelineBuilder.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/NCPipelineBuilder.scala
index a787e353..a6d05adf 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/NCPipelineBuilder.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/NCPipelineBuilder.scala
@@ -19,9 +19,8 @@ package org.apache.nlpcraft
 
 import opennlp.tools.stemmer.PorterStemmer
 import org.apache.nlpcraft.internal.util.NCResourceReader
-import org.apache.nlpcraft.nlp.entity.parser.semantic.*
-import org.apache.nlpcraft.nlp.token.enricher.*
-import org.apache.nlpcraft.nlp.token.parser.NCOpenNLPTokenParser
+import org.apache.nlpcraft.nlp.parsers.*
+import org.apache.nlpcraft.nlp.enrichers.*
 
 import java.util.Objects
 
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCEnBracketsTokenEnricher.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnBracketsTokenEnricher.scala
similarity index 97%
rename from nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCEnBracketsTokenEnricher.scala
rename to nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnBracketsTokenEnricher.scala
index b55d1f6d..3faf33c5 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCEnBracketsTokenEnricher.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnBracketsTokenEnricher.scala
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.nlpcraft.nlp.token.enricher
+package org.apache.nlpcraft.nlp.enrichers
 
 import com.typesafe.scalalogging.LazyLogging
 import org.apache.nlpcraft.*
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCEnDictionaryTokenEnricher.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnDictionaryTokenEnricher.scala
similarity index 96%
rename from nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCEnDictionaryTokenEnricher.scala
rename to nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnDictionaryTokenEnricher.scala
index ce649ffc..7960f2e8 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCEnDictionaryTokenEnricher.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnDictionaryTokenEnricher.scala
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.nlpcraft.nlp.token.enricher
+package org.apache.nlpcraft.nlp.enrichers
 
 import org.apache.nlpcraft.*
 import org.apache.nlpcraft.internal.util.NCUtils
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCEnQuotesTokenEnricher.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnQuotesTokenEnricher.scala
similarity index 97%
rename from nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCEnQuotesTokenEnricher.scala
rename to nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnQuotesTokenEnricher.scala
index 94117620..320ffe86 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCEnQuotesTokenEnricher.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnQuotesTokenEnricher.scala
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.nlpcraft.nlp.token.enricher
+package org.apache.nlpcraft.nlp.enrichers
 
 import com.typesafe.scalalogging.LazyLogging
 import org.apache.nlpcraft.*
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCEnStopWordsTokenEnricher.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnStopWordsTokenEnricher.scala
similarity index 98%
rename from nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCEnStopWordsTokenEnricher.scala
rename to nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnStopWordsTokenEnricher.scala
index b184f807..1174a978 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCEnStopWordsTokenEnricher.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnStopWordsTokenEnricher.scala
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.nlpcraft.nlp.token.enricher
+package org.apache.nlpcraft.nlp.enrichers
 
 import com.typesafe.scalalogging.LazyLogging
 import opennlp.tools.stemmer.PorterStemmer
@@ -110,7 +110,7 @@ object NCEnStopWordsTokenEnricher:
       * @param tokens Tokens.
       * @param maxLen Maximum number of tokens in the sequence.
       */
-    private[enricher] def tokenMixWithStopWords(tokens: Seq[NCToken], maxLen: Int = Integer.MAX_VALUE): Seq[Seq[NCToken]] =
+    private[enrichers] def tokenMixWithStopWords(tokens: Seq[NCToken], maxLen: Int = Integer.MAX_VALUE): Seq[Seq[NCToken]] =
         /**
           * Gets all combinations for sequence of mandatory tokens with stop-words and without.
           *
@@ -161,7 +161,7 @@ object NCEnStopWordsTokenEnricher:
     private def tokenMix(toks: Seq[NCToken], maxLen: Int = Integer.MAX_VALUE): Seq[Seq[NCToken]] =
         (for (n <- toks.length until 0 by -1 if n <= maxLen) yield toks.sliding(n)).flatten
 
-import org.apache.nlpcraft.nlp.token.enricher.NCEnStopWordsTokenEnricher.*
+import org.apache.nlpcraft.nlp.enrichers.NCEnStopWordsTokenEnricher.*
 
 /**
   *
@@ -318,6 +318,7 @@ class NCEnStopWordsTokenEnricher(addStopsSet: Set[String] = Set.empty, exclStops
         // 1. Prepares accumulation data structure.
         enum WordForm:
             case STEM, LEM, ORIG
+
         import WordForm.*
 
         class Condition[T]:
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCEnSwearWordsTokenEnricher.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnSwearWordsTokenEnricher.scala
similarity index 97%
rename from nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCEnSwearWordsTokenEnricher.scala
rename to nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnSwearWordsTokenEnricher.scala
index 9f7f565e..404c996d 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCEnSwearWordsTokenEnricher.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCEnSwearWordsTokenEnricher.scala
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.nlpcraft.nlp.token.enricher
+package org.apache.nlpcraft.nlp.enrichers
 
 import com.typesafe.scalalogging.LazyLogging
 import opennlp.tools.stemmer.PorterStemmer
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCOpenNLPLemmaPosTokenEnricher.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCOpenNLPLemmaPosTokenEnricher.scala
similarity index 98%
rename from nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCOpenNLPLemmaPosTokenEnricher.scala
rename to nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCOpenNLPLemmaPosTokenEnricher.scala
index ed4adb2d..ddcc2c16 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/NCOpenNLPLemmaPosTokenEnricher.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/NCOpenNLPLemmaPosTokenEnricher.scala
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.nlpcraft.nlp.token.enricher
+package org.apache.nlpcraft.nlp.enrichers
 
 import com.typesafe.scalalogging.LazyLogging
 import opennlp.tools.lemmatizer.DictionaryLemmatizer
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/tools/NCEnStopWordGenerator.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/tools/NCEnStopWordGenerator.scala
similarity index 99%
rename from nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/tools/NCEnStopWordGenerator.scala
rename to nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/tools/NCEnStopWordGenerator.scala
index e6190031..2b9fe730 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/enricher/tools/NCEnStopWordGenerator.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/enrichers/tools/NCEnStopWordGenerator.scala
@@ -1,4 +1,4 @@
-package org.apache.nlpcraft.nlp.token.enricher.tools
+package org.apache.nlpcraft.nlp.enrichers.tools
 
 import opennlp.tools.stemmer.PorterStemmer
 import org.apache.nlpcraft.internal.util.NCUtils
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/NCNLPEntityParser.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCNLPEntityParser.scala
similarity index 94%
rename from nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/NCNLPEntityParser.scala
rename to nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCNLPEntityParser.scala
index b809a57a..def5527b 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/NCNLPEntityParser.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCNLPEntityParser.scala
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.nlpcraft.nlp.entity.parser
+package org.apache.nlpcraft.nlp.parsers
 
 import org.apache.nlpcraft.*
 
@@ -28,7 +28,7 @@ import java.util.stream.Collectors
 object NCNLPEntityParser:
     private def id = "nlp:token"
 
-import NCNLPEntityParser.*
+import org.apache.nlpcraft.nlp.parsers.NCNLPEntityParser.*
 
 /**
   *
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/NCOpenNLPEntityParser.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCOpenNLPEntityParser.scala
similarity index 96%
rename from nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/NCOpenNLPEntityParser.scala
rename to nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCOpenNLPEntityParser.scala
index 854bf9b2..ee99cfdc 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/NCOpenNLPEntityParser.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCOpenNLPEntityParser.scala
@@ -15,12 +15,13 @@
  * limitations under the License.
  */
 
-package org.apache.nlpcraft.nlp.entity.parser
+package org.apache.nlpcraft.nlp.parsers
 
 import com.typesafe.scalalogging.LazyLogging
 import opennlp.tools.namefind.*
 import org.apache.nlpcraft.*
 import org.apache.nlpcraft.internal.util.NCUtils
+import org.apache.nlpcraft.nlp.parsers.NCOpenNLPEntityParser
 
 import java.io.*
 import java.util
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/parser/NCOpenNLPTokenParser.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCOpenNLPTokenParser.scala
similarity index 97%
rename from nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/parser/NCOpenNLPTokenParser.scala
rename to nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCOpenNLPTokenParser.scala
index f25652cb..80775925 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/token/parser/NCOpenNLPTokenParser.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCOpenNLPTokenParser.scala
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.nlpcraft.nlp.token.parser
+package org.apache.nlpcraft.nlp.parsers
 
 import com.typesafe.scalalogging.LazyLogging
 import opennlp.tools.tokenize.*
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/NCSemanticElement.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticElement.scala
similarity index 73%
rename from nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/NCSemanticElement.scala
rename to nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticElement.scala
index f27c6866..6341beed 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/NCSemanticElement.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticElement.scala
@@ -14,7 +14,21 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.nlpcraft.nlp.entity.parser.semantic
+
+package org.apache.nlpcraft.nlp.parsers
+
+/*
+   _________            ______________
+   __  ____/_______________  __ \__  /_____ _____  __
+   _  /    _  __ \_  ___/_  /_/ /_  /_  __ `/_  / / /
+   / /___  / /_/ /(__  )_  ____/_  / / /_/ /_  /_/ /
+   \____/  \____//____/ /_/     /_/  \__,_/ _\__, /
+                                            /____/
+
+          2D ASCII GAME ENGINE FOR SCALA3
+            (C) 2021 Rowan Games, Inc.
+               ALl rights reserved.
+*/
 
 /**
   *
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/NCSemanticEntityParser.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParser.scala
similarity index 97%
rename from nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/NCSemanticEntityParser.scala
rename to nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParser.scala
index 2c6a173a..ec9787d3 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/NCSemanticEntityParser.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParser.scala
@@ -15,14 +15,14 @@
  * limitations under the License.
  */
 
-package org.apache.nlpcraft.nlp.entity.parser.semantic
+package org.apache.nlpcraft.nlp.parsers
 
 import com.typesafe.scalalogging.LazyLogging
 import org.apache.nlpcraft.*
 import org.apache.nlpcraft.internal.makro.NCMacroParser
 import org.apache.nlpcraft.internal.util.NCUtils
-import org.apache.nlpcraft.nlp.entity.parser.semantic.*
-import org.apache.nlpcraft.nlp.entity.parser.semantic.impl.*
+import org.apache.nlpcraft.nlp.parsers.*
+import org.apache.nlpcraft.nlp.parsers.impl.*
 
 import java.io.*
 import java.util
@@ -174,7 +174,7 @@ object NCSemanticEntityParser:
         else if i >= data1.size then tmp
         else combine(data1, data2, i + 1, tmp.map(_ :+ data1(i)) ++ tmp.map(_ :+ data2(i)))
 
-import org.apache.nlpcraft.nlp.entity.parser.semantic.NCSemanticEntityParser.*
+import org.apache.nlpcraft.nlp.parsers.NCSemanticEntityParser.*
 
 /**
   *
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/NCSemanticStemmer.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticStemmer.scala
similarity index 66%
rename from nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/NCSemanticStemmer.scala
rename to nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticStemmer.scala
index 7fa335cf..e08f4845 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/NCSemanticStemmer.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/NCSemanticStemmer.scala
@@ -14,7 +14,21 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.nlpcraft.nlp.entity.parser.semantic
+
+package org.apache.nlpcraft.nlp.parsers
+
+/*
+   _________            ______________
+   __  ____/_______________  __ \__  /_____ _____  __
+   _  /    _  __ \_  ___/_  /_/ /_  /_  __ `/_  / / /
+   / /___  / /_/ /(__  )_  ____/_  / / /_/ /_  /_/ /
+   \____/  \____//____/ /_/     /_/  \__,_/ _\__, /
+                                            /____/
+
+          2D ASCII GAME ENGINE FOR SCALA3
+            (C) 2021 Rowan Games, Inc.
+               ALl rights reserved.
+*/
 
 /**
   *
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/impl/NCSemanticSourceReader.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/impl/NCSemanticSourceReader.scala
similarity index 86%
rename from nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/impl/NCSemanticSourceReader.scala
rename to nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/impl/NCSemanticSourceReader.scala
index 86d59eed..15601666 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/impl/NCSemanticSourceReader.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/impl/NCSemanticSourceReader.scala
@@ -14,15 +14,16 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.nlpcraft.nlp.entity.parser.semantic.impl
+package org.apache.nlpcraft.nlp.parsers.impl
 
 import com.fasterxml.jackson.core.JsonParser
 import com.fasterxml.jackson.databind.*
 import com.fasterxml.jackson.dataformat.yaml.*
 import com.fasterxml.jackson.module.scala.DefaultScalaModule
 import org.apache.nlpcraft.*
-import org.apache.nlpcraft.nlp.entity.parser.semantic.*
-import org.apache.nlpcraft.nlp.entity.parser.semantic.impl.NCSemanticSourceType.*
+import org.apache.nlpcraft.nlp.parsers.*
+import org.apache.nlpcraft.nlp.parsers.NCSemanticElement
+import org.apache.nlpcraft.nlp.parsers.impl.NCSemanticSourceType.*
 
 import java.io.InputStream
 import java.util
@@ -31,7 +32,7 @@ import scala.jdk.CollectionConverters.*
 /**
   *
   */
-private[semantic] object NCSemanticSourceType:
+private[parsers] object NCSemanticSourceType:
     def detect(src: String): NCSemanticSourceType =
         val lc = src.toLowerCase
 
@@ -42,18 +43,18 @@ private[semantic] object NCSemanticSourceType:
 /**
   *
   */
-private[semantic] enum NCSemanticSourceType:
+private[parsers] enum NCSemanticSourceType:
     case JSON, YAML
 
 /**
   *
   */
-private[semantic] case class NCSemanticSourceData(macros: Map[String, String], elements: Seq[NCSemanticElement])
+private[parsers] case class NCSemanticSourceData(macros: Map[String, String], elements: Seq[NCSemanticElement])
 
 /**
   *
   */
-private[semantic] object NCSemanticSourceReader:
+private[parsers] object NCSemanticSourceReader:
     case class Element  (
         id: String,
         description: String,
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/impl/NCSemanticSynonym.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/impl/NCSemanticSynonym.scala
similarity index 93%
rename from nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/impl/NCSemanticSynonym.scala
rename to nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/impl/NCSemanticSynonym.scala
index bb8aeb6d..c50a227b 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/impl/NCSemanticSynonym.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/impl/NCSemanticSynonym.scala
@@ -14,10 +14,10 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.nlpcraft.nlp.entity.parser.semantic.impl
+package org.apache.nlpcraft.nlp.parsers.impl
 
 import org.apache.nlpcraft.NCToken
-import org.apache.nlpcraft.nlp.entity.parser.semantic.impl.NCSemanticChunkKind.*
+import org.apache.nlpcraft.nlp.parsers.impl.NCSemanticChunkKind.*
 
 import java.util.regex.Pattern
 
diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/impl/NCSemanticSynonymsProcessor.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/impl/NCSemanticSynonymsProcessor.scala
similarity index 95%
rename from nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/impl/NCSemanticSynonymsProcessor.scala
rename to nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/impl/NCSemanticSynonymsProcessor.scala
index 5dda3214..e0618287 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/entity/parser/semantic/impl/NCSemanticSynonymsProcessor.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/nlp/parsers/impl/NCSemanticSynonymsProcessor.scala
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.nlpcraft.nlp.entity.parser.semantic.impl
+package org.apache.nlpcraft.nlp.parsers.impl
 
 import com.fasterxml.jackson.databind.*
 import com.fasterxml.jackson.dataformat.yaml.*
@@ -23,8 +23,8 @@ import com.typesafe.scalalogging.LazyLogging
 import org.apache.nlpcraft.*
 import org.apache.nlpcraft.internal.makro.NCMacroParser
 import org.apache.nlpcraft.internal.util.NCUtils
-import org.apache.nlpcraft.nlp.entity.parser.semantic.*
-import org.apache.nlpcraft.nlp.entity.parser.semantic.impl.NCSemanticChunkKind.*
+import org.apache.nlpcraft.nlp.parsers.*
+import org.apache.nlpcraft.nlp.parsers.impl.NCSemanticChunkKind.*
 
 import java.io.InputStream
 import java.util
@@ -37,14 +37,14 @@ import scala.collection.mutable.ArrayBuffer
   * @param elementId
   * @param value
   */
-private[semantic] case class NCSemanticSynonymsElementData(elementId: String, value: Option[String])
+private[parsers] case class NCSemanticSynonymsElementData(elementId: String, value: Option[String])
 
 /**
   *
   * @param textSynonyms
   * @param mixedSynonyms
   */
-private[semantic] case class NCSemanticSynonymsHolder(
+private[parsers] case class NCSemanticSynonymsHolder(
     textSynonyms: Map[String, Set[NCSemanticSynonymsElementData]],
     mixedSynonyms: Map[Int, Map[String, Seq[NCSemanticSynonym]]]
 )
@@ -52,7 +52,7 @@ private[semantic] case class NCSemanticSynonymsHolder(
 /**
   *
   */
-private[semantic] object NCSemanticSynonymsProcessor extends LazyLogging:
+private[parsers] object NCSemanticSynonymsProcessor extends LazyLogging:
     private final val SUSP_SYNS_CHARS = Seq("?", "*", "+")
     private final val REGEX_FIX = "//"
     private final val ID_REGEX = "^[_a-zA-Z]+[a-zA-Z0-9:\\-_]*$"
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/conversation/NCConversationManagerSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/conversation/NCConversationManagerSpec.scala
index f2fb54ce..e0c1d413 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/conversation/NCConversationManagerSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/conversation/NCConversationManagerSpec.scala
@@ -18,8 +18,8 @@
 package org.apache.nlpcraft.internal.conversation
 
 import org.apache.nlpcraft.*
-import org.apache.nlpcraft.nlp.util.*
 import org.junit.jupiter.api.Test
+import org.apache.nlpcraft.nlp.util.*
 
 import java.util.function.Predicate
 
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/conversation/NCConversationSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/conversation/NCConversationSpec.scala
index 18084985..9ca15df3 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/conversation/NCConversationSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/conversation/NCConversationSpec.scala
@@ -18,12 +18,12 @@
 package org.apache.nlpcraft.internal.conversation
 
 import org.apache.nlpcraft.*
-import org.apache.nlpcraft.annotations.*
-import org.apache.nlpcraft.nlp.entity.parser.semantic.NCSemanticTestElement
-import org.apache.nlpcraft.nlp.util.*
+import annotations.*
+import nlp.util.*
+import nlp.parsers.*
+
 import org.junit.jupiter.api.Assertions.*
 import org.junit.jupiter.api.Test
-
 import scala.jdk.CollectionConverters.*
 import scala.util.Using
 
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/conversation/NCConversationTimeoutSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/conversation/NCConversationTimeoutSpec.scala
index 62e5119b..3417b93b 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/conversation/NCConversationTimeoutSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/conversation/NCConversationTimeoutSpec.scala
@@ -18,12 +18,12 @@
 package org.apache.nlpcraft.internal.conversation
 
 import org.apache.nlpcraft.*
-import org.apache.nlpcraft.annotations.*
-import org.apache.nlpcraft.nlp.entity.parser.semantic.NCSemanticTestElement
-import org.apache.nlpcraft.nlp.util.*
+import annotations.*
+import nlp.util.*
+import nlp.parsers.*
+
 import org.junit.jupiter.api.Assertions.*
 import org.junit.jupiter.api.Test
-
 import scala.jdk.CollectionConverters.*
 import scala.util.Using
 
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelCallbacksSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelCallbacksSpec.scala
index 6fe529ad..25d4c9e2 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelCallbacksSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelCallbacksSpec.scala
@@ -20,9 +20,7 @@ package org.apache.nlpcraft.internal.impl
 import org.apache.nlpcraft.*
 import org.apache.nlpcraft.NCResultType.*
 import org.apache.nlpcraft.annotations.*
-import org.apache.nlpcraft.nlp.entity.parser.*
-import org.apache.nlpcraft.nlp.entity.parser.semantic.*
-import org.apache.nlpcraft.nlp.util.*
+import org.apache.nlpcraft.nlp.parsers.*
 import org.junit.jupiter.api.*
 
 import scala.jdk.CollectionConverters.*
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelClientSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelClientSpec.scala
index 471bac4b..795f716c 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelClientSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelClientSpec.scala
@@ -19,9 +19,7 @@ package org.apache.nlpcraft.internal.impl
 
 import org.apache.nlpcraft.*
 import org.apache.nlpcraft.annotations.*
-import org.apache.nlpcraft.nlp.entity.parser.*
-import org.apache.nlpcraft.nlp.entity.parser.semantic.NCSemanticEntityParser
-import org.apache.nlpcraft.nlp.util.*
+import org.apache.nlpcraft.nlp.parsers.*
 import org.junit.jupiter.api.Test
 
 import scala.jdk.CollectionConverters.*
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelClientSpec2.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelClientSpec2.scala
index 4333fa2b..b896447c 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelClientSpec2.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelClientSpec2.scala
@@ -19,9 +19,7 @@ package org.apache.nlpcraft.internal.impl
 
 import org.apache.nlpcraft.*
 import org.apache.nlpcraft.annotations.*
-import org.apache.nlpcraft.nlp.entity.parser.*
-import org.apache.nlpcraft.nlp.entity.parser.semantic.{NCSemanticTestElement, *}
-import org.apache.nlpcraft.nlp.util.*
+import org.apache.nlpcraft.nlp.parsers.*
 import org.junit.jupiter.api.Test
 
 import java.util
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelClientSpec3.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelClientSpec3.scala
index 4dbe4379..0e25ca4d 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelClientSpec3.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelClientSpec3.scala
@@ -19,9 +19,7 @@ package org.apache.nlpcraft.internal.impl
 
 import org.apache.nlpcraft.*
 import org.apache.nlpcraft.annotations.*
-import org.apache.nlpcraft.nlp.entity.parser.*
-import org.apache.nlpcraft.nlp.entity.parser.semantic.*
-import org.apache.nlpcraft.nlp.util.*
+import org.apache.nlpcraft.nlp.parsers.*
 import org.junit.jupiter.api.Test
 
 import java.util
diff --git a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelPingPongSpec.scala b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelPingPongSpec.scala
index 8f47d0cd..97c07c50 100644
--- a/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelPingPongSpec.scala
+++ b/nlpcraft/src/test/scala/org/apache/nlpcraft/internal/impl/NCModelPingPongSpec.scala
@@ -20,9 +20,7 @@ package org.apache.nlpcraft.internal.impl
... 611 lines suppressed ...