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: ft_statfun_diff_itc.m
    path of file: ./repos/spm12/external/fieldtrip/statfun
    
    the code of the file until where you have to start completion: function [s, cfg] = ft_statfun_diff_itc(cfg, dat, design)

% FT_STATFUN_DIFF_ITC computes the difference in the inter-trial coherence between
% two conditions. The input data for this test should consist of complex-values
% spectral estimates, e.g. computed using FT_FREQANALYSIS with method=mtmfft, wavelet
% or mtmconvcol.
%
% The ITC is a measure of phase consistency over trials. By randomlly shuffling the
% trials  between the two consitions and repeatedly computing the ITC difference, you
% can test the significance of the two conditions having a different ITC.
%
% A difference in the number of trials poer condition will affect the ITC, however
% since the number of trials remains the same for each random permutation, this bias
% is reflected in the randomization distribution.
%
% Use this function by calling the high-level statistic functions as
%   [stat] = ft_freqstatistics(cfg, freq1, freq2, ...)
% with the following configuration options
%   cfg.method    = 'montecarlo'
%   cfg.statistic = 'diff_itc'
% and optionally the options
%  cfg.complex    = 'diffabs' to compute the difference of the absolute ITC values (default), or
%                   'absdiff' to compute the absolute value of the difference in the complex ITC values.
% 
% For this specific statistic there is no known parametric distribution, hence the
% probability and critical value cannot be computed. This specific statistic can
% therefore only be used with cfg.method='montecarlo'. If you want to do this in
% combination with cfg.correctm='cluster', you also need either
% cfg.clusterthreshold='nonparametric_common' or 'nonparametric_individual'.
%
% See FT_FREQSTATISTICS and FT_STATISTICS_MONTECARLO for more details

% Copyright (C) 2008-2014, Robert Oostenveld
%
% This file is part of FieldTrip, see http://www.fieldtriptoolbox.org
% for the documentation and details.
%
%    FieldTrip is free software: you can redistribute it and/or modify
%    it under the terms of the GNU General Public License as published by
%    the Free Software Foundation, either version 3 of the License, or
%    (at your option) any later version.
%
%    FieldTrip is distributed in the hope that it will be useful,
%    but WITHOUT ANY WARRANTY; without even the implied warranty of
%    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the

    
function [s, cfg] = ft_statfun_diff_itc(cfg, dat, design)

% FT_STATFUN_DIFF_ITC computes the difference in the inter-trial coherence between
% two conditions. The input data for this test should consist of complex-values
% spectral estimates, e.g. computed using FT_FREQANALYSIS with method=mtmfft, wavelet
% or mtmconvcol.
%
% The ITC is a measure of phase consistency over trials. By randomlly shuffling the
% trials  between the two consitions and repeatedly computing the ITC difference, you
% can test the significance of the two conditions having a different ITC.
%
% A difference in the number of trials poer condition will affect the ITC, however
% since the number of trials remains the same for each random permutation, this bias
% is reflected in the randomization distribution.
%
% Use this function by calling the high-level statistic functions as
%   [stat] = ft_freqstatistics(cfg, freq1, freq2, ...)
% with the following configuration options
%   cfg.method    = 'montecarlo'
%   cfg.statistic = 'diff_itc'
% and optionally the options
%  cfg.complex    = 'diffabs' to compute the difference of the absolute ITC values (default), or
%                   'absdiff' to compute the absolute value of the difference in the complex ITC values.
% 
% For this specific statistic there is no known parametric distribution, hence the
% probability and critical value cannot be computed. This specific statistic can
% therefore only be used with cfg.method='montecarlo'. If you want to do this in
% combination with cfg.correctm='cluster', you also need either
% cfg.clusterthreshold='nonparametric_common' or 'nonparametric_individual'.
%
% See FT_FREQSTATISTICS and FT_STATISTICS_MONTECARLO for more details

% Copyright (C) 2008-2014, Robert Oostenveld
%
% This file is part of FieldTrip, see http://www.fieldtriptoolbox.org
% for the documentation and details.
%
%    FieldTrip is free software: you can redistribute it and/or modify
%    it under the terms of the GNU General Public License as published by
%    the Free Software Foundation, either version 3 of the License, or
%    (at your option) any later version.
%
%    FieldTrip is distributed in the hope that it will be useful,
%    but WITHOUT ANY WARRANTY; without even the implied warranty of
%    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
%    GNU General Public License for more details.
%
%    You should have received a copy of the GNU General Public License
%    along with FieldTrip. If not, see <http://www.gnu.org/licenses/>.
%
% $Id$

% set the defaults
if ~isfield(cfg, 'complex'), cfg.complex = 'diffabs';   end