<commit_before>module.exports = exports = function (options, cmd, shell) {
    // If the command has pre-defined options then parse through them and validate against the supplied options.
    if (cmd.options) {

        var nonNamedIndex = 0;

        // Loop through the command's pre-defined options.
        for (var key in cmd.options) {

            // The option defined by the command.
            var definedOption = cmd.options[key];

            // Hook for additional defined options logic that can be passed in.
            if (shell.settings.parseOptions) shell.settings.parseOptions(key, options, cmd, shell);

            // If noName:false, attach non-named parameters as option and remove from `options._` array.
            if (!options.hasOwnProperty(key) && definedOption.noName && options._.length > 0) {
                options[key] = options._[nonNamedIndex];
                options._.splice(nonNamedIndex, 1);
            }

            // If defined option was not supplied and it has aliases, check if aliases were supplied and attach option.
            if (!definedOption.hasOwnProperty('noName') && !options.hasOwnProperty(key)
                && definedOption.hasOwnProperty('aliases')) {
                var aliases = definedOption.aliases;
                if (typeof(aliases) === 'string')
                    aliases = aliases.toString().replace(/, /, ',').split(',').unique();
                aliases.forEach(function (alias) {
                    if (alias in options) {
                        options[key] = options[alias];
                        delete options[alias];
                    }
                });
            }

            // If option has default value and was not found in supplied options then assign it.
            if (definedOption.hasOwnProperty('default') && !options.hasOwnProperty(key)) {
                switch (typeof(definedOption.default)) {
                    case 'function':
                        options[key] = definedOption.default(shell, options);
                        break;
                    default:
                        options[key] = definedOption.default;
                        break;
                }
            }

            // If prompt is enabled then prompt the user for a value if:
            // A) The option was not supplied and it is required or
            // B) the option was supplied but without a value.
            if (definedOption.hasOwnProperty('prompt')) {
                if (!options.hasOwnProperty(key)&& definedOption.required
                    || options.hasOwnProperty(key) && options[key] === true) {<commit_msg>Let's try this one more time.<commit_after>module.exports = exports = function (options, cmd, shell) {
    // If the command has pre-defined options then parse through them and validate against the supplied options.
    if (cmd.options) {

        var nonNamedIndex = 0;

        // Loop through the command's pre-defined options.
        for (var key in cmd.options) {

            // The option defined by the command.
            var definedOption = cmd.options[key];

            // If noName:false, attach non-named parameters as option and remove from `options._` array.
            if (!options.hasOwnProperty(key) && definedOption.noName && options._.length > 0) {
                options[key] = options._[nonNamedIndex];
                options._.splice(nonNamedIndex, 1);
            }

            // If defined option was not supplied and it has aliases, check if aliases were supplied and attach option.
            if (!definedOption.hasOwnProperty('noName') && !options.hasOwnProperty(key)
                && definedOption.hasOwnProperty('aliases')) {
                var aliases = definedOption.aliases;
                if (typeof(aliases) === 'string')
                    aliases = aliases.toString().replace(/, /, ',').split(',').unique();
                aliases.forEach(function (alias) {
                    if (alias in options) {
                        options[key] = options[alias];
                        delete options[alias];
                    }
                });
            }

            // Hook for additional defined options logic that can be passed in.
            if (shell.settings.parseOptions) shell.settings.parseOptions(key, options, cmd, shell);

            // If option has default value and was not found in supplied options then assign it.
            if (definedOption.hasOwnProperty('default') && !options.hasOwnProperty(key)) {
                switch (typeof(definedOption.default)) {
                    case 'function':
                        options[key] = definedOption.default(shell, options);
                        break;
                    default:
                        options[key] = definedOption.default;
                        break;
                }
            }

            // If prompt is enabled then prompt the user for a value if:
            // A) The option was not supplied and it is required or
            // B) the option was supplied but without a value.
            if (definedOption.hasOwnProperty('prompt')) {
                if (!options.hasOwnProperty(key)&& definedOption.required
                    || options.hasOwnProperty(key) && options[key] === true) {
{'fraction_non_alphanumeric': 0.0982615268329554, 'fraction_numerical': 0.0011337868480725624, 'mean_word_length': 1.696383087111564, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '905020', 'n_tokens_mistral': 1256, 'n_tokens_neox': 1200, 'n_words': 397}