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: ica_fuse_run_analysis.m
    path of file: ./repos/fit/FITv2.0e/ica_fuse/ica_fuse_analysis
    
    the code of the file until where you have to start completion: function ica_fuse_run_analysis(fusionFile, resume_analysis)
%% Run fusion analysis
%
% Inputs:
% 1. fusionFile - full file path of the fusion file.
% 2. resume_analysis - Resume analysis. Options are 0 and 1. A value of 0
% will restart the analysis.
%
% Analysis steps:
% 1. All steps
% 2. PCA
% 3. ICA
% 4. Back reconstruct
% 5. Scale components (Only for the first combination)
%

try
    
    %% Load defaults
    ica_fuse_defaults;
    
    global FUSION_INFO_MAT_FILE; % Fusion information file
    global JOINT_COMPONENT_NAMING; % JOINT COMPONENT IMAGE FILE NAMING
    global FLIP_ANALYZE_IM; % Flip parameter for analyze images
    global OPTIMIZE_FEATURES;
    global STACK_ALL_FEATURES;
 
    
function stepsToRun = selectAnalysisSteps
%% Select analysis step/steps to run
%

stepsToRun = ica_fuse_listdlg('promptstring', 'Which Step/Steps Of The Analysis You Want To Run', 'liststring', ...
    {'All', 'Data Reduction', 'Calculate ICA', 'Back Reconstruction', 'Scaling Components'}, 'title_fig', 'Run Analysis', 'help', struct('title', 'Run Analysis', 'str', char('You could select step/steps of the analysis to run. These need to be in serial order. For example if you run ICA, subsequent steps need to be run inorder to see the changes. Steps are as follows:', ...
    '', '1. All - All the analysis steps are run. This is same as running from data reduction to scaling components.', ...
    '2. Data Reduction - Data is organized as subjects by samples and reduced in the subject dimension to few components.', ...
    '3. Calculate ICA - ICA is run on the reduced data and maximally independent components are found.', ...
    '4. Back reconstruction - Mixing coefficients of the aggregate components are computed. Also computed are the backreconstructed components of each group.', ...
    '5. Scaling components - Components are scaled to data units or z-scores.')));

if (isempty(stepsToRun))
    error('Analysis step/steps are not selected');
end