<commit_before>
namespace Ice\Mvc\Route\Dispatcher;

use Ice\Mvc\Route\Dispatcher\Regex;
use Ice\Mvc\Router;

class GroupCount extends Regex
{

    protected staticRouteMap { set };
    protected variableRouteData { set };

    public function __construct(array data = [])
    {
        if count(data) {
            let this->staticRouteMap = data[0],
                this->variableRouteData = data[1];
        }
    }

    protected function dispatchVariableRoute(routeData, uri)
    {
        var data, matches, handler, varName, varNames, vars;
        int i, j;

        let matches = null;

        for data in routeData {
            if !preg_match(data["regex"], uri, matches) {
                continue;
            }

            let j = count(matches),
                handler = data["routeMap"][j][0],
                varNames = data["routeMap"][j][1];

            let vars = [],
                i = 0;

            for varName in varNames {
                let i++,
                    vars[varName] = matches[i];
            }

            return [Router::FOUND, handler, vars];
        }

        return [Router::NOT_FOUND];
    }
}<commit_msg>Update groupcount.zep<commit_after>
namespace Ice\Mvc\Route\Dispatcher;

use Ice\Mvc\Route\Dispatcher\Regex;
use Ice\Mvc\FastRouter;

class GroupCount extends Regex
{

    protected staticRouteMap { set };
    protected variableRouteData { set };

    public function __construct(array data = [])
    {
        if count(data) {
            let this->staticRouteMap = data[0],
                this->variableRouteData = data[1];
        }
    }

    protected function dispatchVariableRoute(routeData, uri)
    {
        var data, matches, handler, varName, varNames, vars;
        int i, j;

        let matches = null;

        for data in routeData {
            if !preg_match(data["regex"], uri, matches) {
                continue;
            }

            let j = count(matches),
                handler = data["routeMap"][j][0],
                varNames = data["routeMap"][j][1];

            let vars = [],
                i = 0;

            for varName in varNames {
                let i++,
                    vars[varName] = matches[i];
            }

            return [FastRouter::FOUND, handler, vars];
        }

        return [FastRouter::NOT_FOUND];
    }
}
{'fraction_non_alphanumeric': 0.10992301112061591, 'fraction_numerical': 0.00427715996578272, 'mean_word_length': 1.6549375709421112, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 7, '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': '1773533', 'n_tokens_mistral': 675, 'n_tokens_neox': 637, 'n_words': 159}