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: spm_cfg_exp_frames.m
    path of file: ./repos/ExploreASL/External/SPMmodified/config
    
    the code of the file until where you have to start completion: function exp_frames = spm_cfg_exp_frames
% SPM Configuration file for Expand image frames
%__________________________________________________________________________
% Copyright (C) 2009-2016 Wellcome Trust Centre for Neuroimaging

% $Id: spm_cfg_exp_frames.m 6952 2016-11-25 16:03:13Z guillaume $


%--------------------------------------------------------------------------
% files NIfTI file(s)

    
function exp_frames = spm_cfg_exp_frames
% SPM Configuration file for Expand image frames
%__________________________________________________________________________
% Copyright (C) 2009-2016 Wellcome Trust Centre for Neuroimaging

% $Id: spm_cfg_exp_frames.m 6952 2016-11-25 16:03:13Z guillaume $


%--------------------------------------------------------------------------
% files NIfTI file(s)
%--------------------------------------------------------------------------
files         = cfg_files;
files.tag     = 'files';
files.name    = 'NIfTI file(s)';
files.help    = {'Files to read. If the same multi-frame image is specified more than once, it will be expanded as often as it is listed.'};
files.filter  = 'image';
files.ufilter = '.*';
files.num     = [1 Inf];

%--------------------------------------------------------------------------
% frames Frames
%--------------------------------------------------------------------------
frames         = cfg_entry;
frames.tag     = 'frames';
frames.name    = 'Frames';
frames.help    = {'Frame number(s) requested. Only frames that are actually present in the image file(s) will be listed. Enter ''Inf'' to list all frames.'};
frames.strtype = 'n';
frames.num     = [1 Inf];

%--------------------------------------------------------------------------
% exp_frames Expand image frames
%--------------------------------------------------------------------------
exp_frames      = cfg_exbranch;
exp_frames.tag  = 'exp_frames';
exp_frames.name = 'Expand image frames';
exp_frames.val  = {files frames };
exp_frames.help = {'Return a list of image filenames with appended frame numbers.'};
exp_frames.prog = @run_frames;
exp_frames.vout = @vout_frames;


%==========================================================================
function out = run_frames(job)
out.files = {};
for k = 1:numel(job.files)
    F = spm_select('Expand',spm_file(job.files(k),'number',''));
    if all(isfinite(job.frames))
        F = F(job.frames(job.frames <= numel(F)));
    end