You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: ParforProgressStarter2.m
    path of file: ./repos/CS_MoCo_LAB/reconstruction/matlab/CS_LAB_matlab/utils/general/ParforProgress2
    
    the code of the file until where you have to start completion: function ppm = ParforProgressStarter2(s, n, percentage, do_debug)
% Starter function for parfor progress-monitor, that will automatically 
% choose between a text or a GUI progress monitor. You can use this 
% progress-monitor in both for and parfor loops.
%
% ParforProgressStarter2 is the successor of ParforProgressStarter - it is 
% roughly 12 times more performant during GUI mode!
% 
% you should use it like this:
% 
%   N = 1000;
%   try % Initialization
%       ppm = ParforProgressStarter2('test', N, 0.1);
%   catch me % make sure "ParforProgressStarter2" didn't get moved to a different directory
%       if strcmp(me.message, 'Undefined function or method ''ParforProgressStarter2'' for input arguments of type ''char''.')
%           error('ParforProgressStarter2 not in path.');
%       else
%           % this should NEVER EVER happen.
%           msg{1} = 'Unknown error while initializing "ParforProgressStarter2":';

    
function ppm = ParforProgressStarter2(s, n, percentage, do_debug)
% Starter function for parfor progress-monitor, that will automatically 
% choose between a text or a GUI progress monitor. You can use this 
% progress-monitor in both for and parfor loops.
%
% ParforProgressStarter2 is the successor of ParforProgressStarter - it is 
% roughly 12 times more performant during GUI mode!
% 
% you should use it like this:
% 
%   N = 1000;
%   try % Initialization
%       ppm = ParforProgressStarter2('test', N, 0.1);
%   catch me % make sure "ParforProgressStarter2" didn't get moved to a different directory
%       if strcmp(me.message, 'Undefined function or method ''ParforProgressStarter2'' for input arguments of type ''char''.')
%           error('ParforProgressStarter2 not in path.');
%       else
%           % this should NEVER EVER happen.
%           msg{1} = 'Unknown error while initializing "ParforProgressStarter2":';
%           msg{2} = me.message;
%           print_error_red(msg);
%           % backup solution so that we can still continue.
%           ppm.increment = nan(1, nbr_files);
%       end