def default_preproc_settings():
    """
        TODO: document this function
    """
    settings = {}
    settings['bids_query'] = {'anat': {'modality': 'anat', 'type': 'T1w'},
        'func': {'modality': 'func', 'task': 'rest'}}
    settings['func_reference_run'] = 0
    settings['func_reference_frame'] = 4
    settings['anat_reference'] = 0
    settings['atlas'] = 'MNI152.nii.gz'
    settings['avganats'] = True
    settings['field_map_correction'] = True
    settings['slice_time_correction'] = True
    settings['despiking'] = True
    settings['run_recon_all'] = True
    settings['num_threads'] = 8
    settings['brain_radius'] = 50
    settings['min_bpm'] = 18.582
    settings['max_bpm'] = 25.7263
    settings['FD_threshold'] = 0.2
    settings['FD_filtered_threshold'] = 0.1
    settings['workflows'] = ['p3_bidsselector', 'p3_freesurfer',
        'p3_skullstrip', 'p3_stcdespikemoco', 'p3_fieldmapcorrection',
        'p3_alignanattoatlas', 'p3_alignfunctoanat', 'p3_alignfunctoatlas',
        'p3_create_fs_masks']
    settings['connections'] = [{'source': 'p3_bidsselector', 'destination':
        'p3_freesurfer', 'links': [['output.anat', 'input.T1'], [
        'output.subject', 'input.subject']]}, {'source': 'p3_bidsselector',
        'destination': 'p3_skullstrip', 'links': [['output.anat',
        'input.T1']]}, {'source': 'p3_freesurfer', 'destination':
        'p3_skullstrip', 'links': [['output.orig', 'input.orig'], [
        'output.brainmask', 'input.brainmask']]}, {'source':
        'p3_bidsselector', 'destination': 'p3_stcdespikemoco', 'links': [[
        'output.func', 'input.func']]}, {'source': 'p3_skullstrip',
        'destination': 'p3_alignanattoatlas', 'links': [[
        'output.T1_skullstrip', 'input.T1_skullstrip']]}, {'source':
        'p3_bidsselector', 'destination': 'p3_fieldmapcorrection', 'links':
        [['output.func', 'input.func']]}, {'source': 'p3_stcdespikemoco',
        'destination': 'p3_fieldmapcorrection', 'links': [[
        'output.func_aligned', 'input.func_aligned'], ['output.refimg',
        'input.refimg']]}, {'source': 'p3_fieldmapcorrection',
        'destination': 'p3_alignfunctoanat', 'links': [['output.refimg',
        'input.refimg']]}, {'source': 'p3_skullstrip', 'destination':
        'p3_alignfunctoanat', 'links': [['output.T1_skullstrip',
        'input.T1_skullstrip']]}, {'source': 'p3_bidsselector',
        'destination': 'p3_alignfunctoatlas', 'links': [['output.func',
        'input.func']]}, {'source': 'p3_stcdespikemoco', 'destination':
        'p3_alignfunctoatlas', 'links': [['output.func_stc_despike',
        'input.func_stc_despike'], ['output.warp_func_2_refimg',
        'input.warp_func_2_refimg']]}, {'source': 'p3_fieldmapcorrection',
        'destination': 'p3_alignfunctoatlas', 'links': [['output.warp_fmc',
        'input.warp_fmc'], ['output.refimg', 'input.refimg']]}, {'source':
        'p3_alignfunctoanat', 'destination': 'p3_alignfunctoatlas', 'links':
        [['output.affine_func_2_anat', 'input.affine_func_2_anat']]}, {
        'source': 'p3_alignanattoatlas', 'destination':
        'p3_alignfunctoatlas', 'links': [['output.affine_anat_2_atlas',
        'input.affine_anat_2_atlas'], ['output.warp_anat_2_atlas',
        'input.warp_anat_2_atlas']]}, {'source': 'p3_freesurfer',
        'destination': 'p3_create_fs_masks', 'links': [['output.aparc_aseg',
        'input.aparc_aseg'], ['output.orig', 'input.orig']]}, {'source':
        'p3_alignanattoatlas', 'destination': 'p3_create_fs_masks', 'links':
        [['output.affine_anat_2_atlas', 'input.affine_anat_2_atlas'], [
        'output.warp_anat_2_atlas', 'input.warp_anat_2_atlas'], [
        'output.anat_atlas', 'input.anat_atlas']]}, {'source':
        'p3_alignfunctoatlas', 'destination': 'p3_create_fs_masks', 'links':
        [['output.func_atlas', 'input.func_atlas']]}, {'source':
        'p3_bidsselector', 'destination': 'p3_create_fs_masks', 'links': [[
        'output.anat', 'input.T1']]}]
    settings['sideload'] = []
    return settings
