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: tutorial_coherence.m
    path of file: ./repos/brainstorm3/toolbox/script
    
    the code of the file until where you have to start completion: function tutorial_coherence(tutorial_dir, reports_dir)
% TUTORIAL_COHERENCE: Script that runs the Brainstorm corticomuscular coherence tutorial
% https://neuroimage.usc.edu/brainstorm/Tutorials/CorticomuscularCoherence
%
% INPUTS: 
%    - tutorial_dir : Directory where the SubjectCMC.zip file has been unzipped
%    - reports_dir  : Directory where to save the execution report (instead of displaying it)

% @=============================================================================
% This function is part of the Brainstorm software:
% https://neuroimage.usc.edu/brainstorm
% 
% Copyright (c) University of Southern California & McGill University
% This software is distributed under the terms of the GNU General Public License
% as published by the Free Software Foundation. Further details on the GPLv3

    
function tutorial_coherence(tutorial_dir, reports_dir)
% TUTORIAL_COHERENCE: Script that runs the Brainstorm corticomuscular coherence tutorial
% https://neuroimage.usc.edu/brainstorm/Tutorials/CorticomuscularCoherence
%
% INPUTS: 
%    - tutorial_dir : Directory where the SubjectCMC.zip file has been unzipped
%    - reports_dir  : Directory where to save the execution report (instead of displaying it)

% @=============================================================================
% This function is part of the Brainstorm software:
% https://neuroimage.usc.edu/brainstorm
% 
% Copyright (c) University of Southern California & McGill University
% This software is distributed under the terms of the GNU General Public License
% as published by the Free Software Foundation. Further details on the GPLv3
% license can be found at http://www.gnu.org/copyleft/gpl.html.
% 
% FOR RESEARCH PURPOSES ONLY. THE SOFTWARE IS PROVIDED "AS IS," AND THE
% UNIVERSITY OF SOUTHERN CALIFORNIA AND ITS COLLABORATORS DO NOT MAKE ANY
% WARRANTY, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF
% MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, NOR DO THEY ASSUME ANY
% LIABILITY OR RESPONSIBILITY FOR THE USE OF THIS SOFTWARE.
%
% For more information type "brainstorm license" at command prompt.
% =============================================================================@
%
% Author: Raymundo Cassani & Francois Tadel, 2022

% Output folder for reports
if (nargin < 2) || isempty(reports_dir) || ~isfolder(reports_dir)
    reports_dir = [];
end
% You have to specify the folder in which the tutorial dataset is unzipped
if (nargin == 0) || isempty(tutorial_dir) || ~file_exist(tutorial_dir)
    error('The first argument must be the full path to the dataset folder.');
end

% Protocol name
ProtocolName = 'TutorialCMC';
% Subject name
SubjectName = 'Subject01';
% Channel selection
emg_channel = 'EMGlft';   % Name of EMG channel
meg_sensor  = 'MRC21';    % MEG sensor over the left motor-cortex (MRC21)
% Coherence parameters
cohmeasure = 'mscohere'; % Magnitude-squared Coherence|C|^2 = |Cxy|^2/(Cxx*Cyy)
win_length = 0.5;        % 500ms
overlap    = 50;         % 50%
maxfreq    = 80;         % 80Hz

% Build the path of the files to import
MriFilePath = fullfile(tutorial_dir, 'SubjectCMC', 'SubjectCMC.mri');
MegFilePath = fullfile(tutorial_dir, 'SubjectCMC', 'SubjectCMC.ds');
% Check if the folder contains the required files
if ~file_exist(MriFilePath) || ~file_exist(MegFilePath)
    error(['The folder ' tutorial_dir ' does not contain the folder from the file SubjectCMC.zip.']);
end