private function processGroups(): void
    {
        // Call the $group by reference because in the case : group of group the size of the array is modified because a new group is added in the group() function.
        foreach ($this->groups as $key => &$group) {
            unset($this->groups[$key]);
            $group();
            //array_pop($this->groups);
        }
    }