niwrap-afni 0.6.3__py3-none-any.whl → 0.7.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- niwrap_afni/afni/__init__.py +601 -18
- niwrap_afni/afni/abids_json_info_py.py +35 -51
- niwrap_afni/afni/abids_json_tool_py.py +48 -59
- niwrap_afni/afni/{abids_tool.py → abids_tool_py.py} +60 -78
- niwrap_afni/afni/adjunct_apqc_tsnr_general.py +83 -84
- niwrap_afni/afni/adjunct_aw_tableize_roi_info_py.py +31 -50
- niwrap_afni/afni/adjunct_calc_mont_dims_py.py +20 -43
- niwrap_afni/afni/adjunct_combine_str_py.py +29 -51
- niwrap_afni/afni/adjunct_is_label_py.py +22 -44
- niwrap_afni/afni/adjunct_make_script_and_rst_py.py +35 -55
- niwrap_afni/afni/adjunct_select_str_py.py +24 -45
- niwrap_afni/afni/{adjunct_simplify_cost.py → adjunct_simplify_cost_py.py} +49 -70
- niwrap_afni/afni/adjunct_suma_fs_mask_and_qc.py +36 -55
- niwrap_afni/afni/adjunct_suma_fs_roi_info.py +28 -48
- niwrap_afni/afni/adjunct_tort_plot_dp_align.py +38 -58
- niwrap_afni/afni/adwarp.py +43 -59
- niwrap_afni/afni/afni.py +77 -77
- niwrap_afni/afni/afni_batch_r.py +28 -47
- niwrap_afni/afni/afni_check_omp.py +21 -44
- niwrap_afni/afni/afni_history.py +72 -75
- niwrap_afni/afni/afni_open.py +49 -58
- niwrap_afni/afni/afni_proc_py.py +50 -64
- niwrap_afni/afni/afni_run_r.py +22 -44
- niwrap_afni/afni/afni_system_check_py.py +43 -57
- niwrap_afni/afni/aiv.py +33 -51
- niwrap_afni/afni/{align_epi_anat.py → align_epi_anat_py.py} +84 -92
- niwrap_afni/afni/analyze_trace.py +48 -61
- niwrap_afni/afni/{ap_run_simple_rest.py → ap_run_simple_rest_tcsh.py} +72 -90
- niwrap_afni/afni/{apqc_make_html.py → apqc_make_html_py.py} +45 -68
- niwrap_afni/afni/apqc_make_tcsh_py.py +34 -53
- niwrap_afni/afni/apsearch.py +26 -48
- niwrap_afni/afni/auto_warp_py.py +98 -89
- niwrap_afni/afni/balloon.py +33 -51
- niwrap_afni/afni/bayes_view.py +29 -50
- niwrap_afni/afni/bayesian_group_ana_py.py +57 -68
- niwrap_afni/afni/brain_skin.py +64 -76
- niwrap_afni/afni/build_afni_py.py +62 -71
- niwrap_afni/afni/cat_matvec.py +26 -46
- niwrap_afni/afni/ccalc.py +23 -45
- niwrap_afni/afni/cifti_tool.py +42 -58
- niwrap_afni/afni/cjpeg.py +34 -52
- niwrap_afni/afni/clust_exp_hist_table_py.py +33 -54
- niwrap_afni/afni/clust_exp_stat_parse_py.py +57 -69
- niwrap_afni/afni/column_cat.py +32 -54
- niwrap_afni/afni/compare_surfaces.py +58 -68
- niwrap_afni/afni/{convert_cdiflist_to_grads.py → convert_cdiflist_to_grads_py.py} +60 -78
- niwrap_afni/afni/convert_dset.py +73 -77
- niwrap_afni/afni/convert_surface.py +47 -62
- niwrap_afni/afni/convex_hull.py +68 -77
- niwrap_afni/afni/count.py +56 -66
- niwrap_afni/afni/create_icosahedron.py +44 -58
- niwrap_afni/afni/dcm2niix_afni.py +102 -98
- niwrap_afni/afni/dicom_hdr.py +39 -53
- niwrap_afni/afni/dicom_hinfo.py +31 -49
- niwrap_afni/afni/dicom_to_raw.py +21 -45
- niwrap_afni/afni/dimon.py +45 -64
- niwrap_afni/afni/djpeg.py +34 -52
- niwrap_afni/afni/drive_suma.py +99 -92
- niwrap_afni/afni/dsetstat2p.py +30 -49
- niwrap_afni/afni/dtistudio_fiberto_segments.py +26 -48
- niwrap_afni/afni/{epi_b0_correct.py → epi_b0_correct_py.py} +110 -111
- niwrap_afni/afni/examine_xmat.py +45 -62
- niwrap_afni/afni/fat_mat2d_plot_py.py +88 -86
- niwrap_afni/afni/fat_mat_sel_py.py +87 -89
- niwrap_afni/afni/{fat_mat_tableize.py → fat_mat_tableize_py.py} +72 -87
- niwrap_afni/afni/fat_mvm_gridconv_py.py +24 -51
- niwrap_afni/afni/{fat_mvm_prep.py → fat_mvm_prep_py.py} +61 -79
- niwrap_afni/afni/fat_mvm_scripter_py.py +53 -65
- niwrap_afni/afni/fat_proc_align_anat_pair.py +50 -63
- niwrap_afni/afni/fat_proc_axialize_anat.py +76 -79
- niwrap_afni/afni/fat_proc_connec_vis.py +56 -70
- niwrap_afni/afni/fat_proc_convert_dcm_anat.py +44 -59
- niwrap_afni/afni/fat_proc_convert_dcm_dwis.py +74 -79
- niwrap_afni/afni/fat_proc_decmap.py +51 -65
- niwrap_afni/afni/fat_proc_dwi_to_dt.py +94 -93
- niwrap_afni/afni/fat_proc_filter_dwis.py +47 -61
- niwrap_afni/afni/fat_proc_imit2w_from_t1w.py +41 -62
- niwrap_afni/afni/fat_proc_map_to_dti.py +53 -65
- niwrap_afni/afni/fat_proc_select_vols.py +38 -55
- niwrap_afni/afni/{fat_roi_row.py → fat_roi_row_py.py} +58 -79
- niwrap_afni/afni/fatcat_matplot.py +22 -44
- niwrap_afni/afni/fdrval.py +34 -51
- niwrap_afni/afni/fftest.py +26 -46
- niwrap_afni/afni/file_tool.py +111 -94
- niwrap_afni/afni/fim2.py +85 -87
- niwrap_afni/afni/{find_variance_lines.py → find_variance_lines_tcsh.py} +90 -109
- niwrap_afni/afni/firdesign.py +33 -51
- niwrap_afni/afni/float_scan.py +27 -48
- niwrap_afni/afni/from3d.py +42 -60
- niwrap_afni/afni/fsread_annot.py +52 -66
- niwrap_afni/afni/gen_epi_review_py.py +47 -61
- niwrap_afni/afni/{gen_group_command.py → gen_group_command_py.py} +82 -95
- niwrap_afni/afni/{gen_ss_review_scripts.py → gen_ss_review_scripts_py.py} +100 -106
- niwrap_afni/afni/gen_ss_review_table_py.py +55 -66
- niwrap_afni/afni/get_afni_model_prf.py +26 -46
- niwrap_afni/afni/get_afni_model_prf_6.py +32 -49
- niwrap_afni/afni/get_afni_model_prf_6_bad.py +30 -48
- niwrap_afni/afni/gifti_tool.py +77 -80
- niwrap_afni/afni/gltsymtest.py +28 -49
- niwrap_afni/afni/help_format.py +20 -44
- niwrap_afni/afni/im2niml.py +24 -48
- niwrap_afni/afni/images_equal.py +24 -46
- niwrap_afni/afni/imand.py +30 -52
- niwrap_afni/afni/imaver.py +32 -54
- niwrap_afni/afni/imcalc.py +30 -51
- niwrap_afni/afni/imcat.py +89 -87
- niwrap_afni/afni/imcutup.py +35 -55
- niwrap_afni/afni/imdump.py +20 -44
- niwrap_afni/afni/immask.py +35 -53
- niwrap_afni/afni/imreg.py +70 -75
- niwrap_afni/afni/imrotate.py +33 -51
- niwrap_afni/afni/imstack.py +28 -50
- niwrap_afni/afni/imstat.py +29 -50
- niwrap_afni/afni/imupsam.py +27 -48
- niwrap_afni/afni/init_user_dotfiles_py.py +59 -66
- niwrap_afni/afni/inspec.py +37 -54
- niwrap_afni/afni/iso_surface.py +56 -67
- niwrap_afni/afni/make_color_map.py +77 -82
- niwrap_afni/afni/make_pq_script_py.py +27 -48
- niwrap_afni/afni/make_random_timing_py.py +85 -88
- niwrap_afni/afni/make_stim_times_py.py +49 -62
- niwrap_afni/afni/map_icosahedron.py +51 -62
- niwrap_afni/afni/map_track_id.py +35 -52
- niwrap_afni/afni/mba.py +62 -72
- niwrap_afni/afni/meica_py.py +38 -55
- niwrap_afni/afni/myget.py +26 -48
- niwrap_afni/afni/neuro_deconvolve_py.py +51 -66
- niwrap_afni/afni/nicat.py +27 -47
- niwrap_afni/afni/niccc.py +50 -63
- niwrap_afni/afni/nifti_tool.py +52 -65
- niwrap_afni/afni/niml_feedme.py +36 -53
- niwrap_afni/afni/nsize.py +23 -46
- niwrap_afni/afni/p2dsetstat.py +34 -51
- niwrap_afni/afni/parse_fs_lt_log_py.py +29 -48
- niwrap_afni/afni/plugout_drive.py +56 -65
- niwrap_afni/afni/plugout_ijk.py +46 -59
- niwrap_afni/afni/plugout_tt.py +48 -60
- niwrap_afni/afni/plugout_tta.py +49 -63
- niwrap_afni/afni/prompt_popup.py +35 -53
- niwrap_afni/afni/prompt_user.py +26 -47
- niwrap_afni/afni/pta.py +44 -61
- niwrap_afni/afni/qdelaunay.py +100 -91
- niwrap_afni/afni/qhull.py +63 -67
- niwrap_afni/afni/quick_alpha_vals_py.py +23 -46
- niwrap_afni/afni/quickspec.py +41 -59
- niwrap_afni/afni/quickspec_sl.py +46 -63
- niwrap_afni/afni/quotize.py +25 -47
- niwrap_afni/afni/r_pkgs_install.py +30 -50
- niwrap_afni/afni/rba.py +93 -92
- niwrap_afni/afni/rbox.py +68 -71
- niwrap_afni/afni/read_matlab_files_py.py +32 -51
- niwrap_afni/afni/{realtime_receiver.py → realtime_receiver_py.py} +76 -88
- niwrap_afni/afni/retro_ts_py.py +84 -84
- niwrap_afni/afni/rmz.py +27 -47
- niwrap_afni/afni/roi2dataset.py +47 -60
- niwrap_afni/afni/roigrow.py +38 -55
- niwrap_afni/afni/rotcom.py +27 -50
- niwrap_afni/afni/rsfgen.py +53 -65
- niwrap_afni/afni/rtfeedme.py +47 -60
- niwrap_afni/afni/samp_bias.py +42 -60
- niwrap_afni/afni/scale_to_map.py +98 -90
- niwrap_afni/afni/serial_helper.py +48 -60
- niwrap_afni/afni/sfim.py +31 -54
- niwrap_afni/afni/slow_surf_clustsim_py.py +44 -57
- niwrap_afni/afni/spharm_deco.py +47 -68
- niwrap_afni/afni/spharm_reco.py +38 -54
- niwrap_afni/afni/stimband.py +34 -53
- niwrap_afni/afni/strblast.py +38 -55
- niwrap_afni/afni/suma_change_spec.py +34 -53
- niwrap_afni/afni/suma_glxdino.py +24 -47
- niwrap_afni/afni/surf2_vol_coord.py +46 -60
- niwrap_afni/afni/surf_clust.py +113 -99
- niwrap_afni/afni/surf_dist.py +37 -54
- niwrap_afni/afni/surf_dset_info.py +59 -64
- niwrap_afni/afni/surf_extrema.py +43 -60
- niwrap_afni/afni/surf_fwhm.py +59 -70
- niwrap_afni/afni/surf_info.py +67 -72
- niwrap_afni/afni/surf_layers.py +49 -70
- niwrap_afni/afni/surf_localstat.py +33 -52
- niwrap_afni/afni/surf_measures.py +64 -71
- niwrap_afni/afni/surf_mesh.py +37 -54
- niwrap_afni/afni/surf_patch.py +68 -72
- niwrap_afni/afni/surf_qual.py +38 -57
- niwrap_afni/afni/surf_retino_map.py +32 -52
- niwrap_afni/afni/surf_smooth.py +63 -72
- niwrap_afni/afni/surf_to_surf.py +55 -67
- niwrap_afni/afni/surface_metrics.py +68 -69
- niwrap_afni/afni/tedana_wrapper_py.py +51 -63
- niwrap_afni/afni/tfim.py +39 -57
- niwrap_afni/afni/timing_tool_py.py +72 -78
- niwrap_afni/afni/to3d.py +125 -110
- niwrap_afni/afni/tokens.py +24 -46
- niwrap_afni/afni/trr.py +70 -77
- niwrap_afni/afni/uber_align_test_py.py +41 -55
- niwrap_afni/afni/uber_proc_py.py +21 -44
- niwrap_afni/afni/{uber_skel.py → uber_skel_py.py} +72 -85
- niwrap_afni/afni/uber_subject_py.py +143 -124
- niwrap_afni/afni/un_warp_epi_py.py +34 -50
- niwrap_afni/afni/uniq_images.py +26 -50
- niwrap_afni/afni/v_1d_apar2mat.py +42 -54
- niwrap_afni/afni/v_1d_astrip.py +20 -44
- niwrap_afni/afni/v_1d_bandpass.py +34 -51
- niwrap_afni/afni/v_1d_bport.py +47 -60
- niwrap_afni/afni/v_1d_correlate.py +42 -57
- niwrap_afni/afni/v_1d_dw_grad_o_mat__.py +72 -76
- niwrap_afni/afni/v_1d_flag_motion.py +30 -52
- niwrap_afni/afni/v_1d_marry.py +25 -47
- niwrap_afni/afni/v_1d_nlfit.py +29 -49
- niwrap_afni/afni/v_1d_rplot.py +72 -78
- niwrap_afni/afni/v_1d_sem.py +60 -69
- niwrap_afni/afni/v_1d_tool_py.py +53 -65
- niwrap_afni/afni/v_1d_tsort.py +31 -49
- niwrap_afni/afni/v_1d_upsample.py +24 -46
- niwrap_afni/afni/v_1dcat.py +38 -54
- niwrap_afni/afni/v_1ddot.py +34 -51
- niwrap_afni/afni/v_1deval.py +44 -61
- niwrap_afni/afni/v_1dfft.py +40 -56
- niwrap_afni/afni/v_1dgen_arma11.py +57 -70
- niwrap_afni/afni/v_1dgrayplot.py +38 -53
- niwrap_afni/afni/v_1dmatcalc.py +25 -49
- niwrap_afni/afni/v_1dnorm.py +31 -50
- niwrap_afni/afni/v_1dplot.py +191 -155
- niwrap_afni/afni/v_1dplot_py.py +110 -103
- niwrap_afni/afni/v_1dsound.py +44 -58
- niwrap_afni/afni/v_1dsum.py +36 -53
- niwrap_afni/afni/v_1dsvd.py +45 -59
- niwrap_afni/afni/v_1dtranspose.py +24 -47
- niwrap_afni/afni/v_24swap.py +25 -46
- niwrap_afni/afni/v_2d_im_reg.py +55 -68
- niwrap_afni/afni/v_2dcat.py +86 -86
- niwrap_afni/afni/v_2perm.py +35 -54
- niwrap_afni/afni/v_2swap.py +22 -44
- niwrap_afni/afni/v_3d_aboverlap.py +32 -51
- niwrap_afni/afni/v_3d_acost.py +28 -49
- niwrap_afni/afni/v_3d_afnito3_d.py +28 -49
- niwrap_afni/afni/v_3d_afnito_analyze.py +31 -52
- niwrap_afni/afni/v_3d_afnito_nifti.py +36 -53
- niwrap_afni/afni/v_3d_afnito_niml.py +27 -47
- niwrap_afni/afni/v_3d_afnito_raw.py +25 -46
- niwrap_afni/afni/v_3d_allineate.py +63 -74
- niwrap_afni/afni/v_3d_amp_to_rsfc.py +39 -58
- niwrap_afni/afni/v_3d_anhist.py +41 -56
- niwrap_afni/afni/v_3d_anova.py +64 -75
- niwrap_afni/afni/v_3d_anova2.py +101 -100
- niwrap_afni/afni/v_3d_anova3.py +138 -126
- niwrap_afni/afni/v_3d_attribute.py +40 -55
- niwrap_afni/afni/v_3d_auto_tcorrelate.py +52 -64
- niwrap_afni/afni/v_3d_autobox.py +56 -66
- niwrap_afni/afni/v_3d_automask.py +40 -58
- niwrap_afni/afni/v_3d_ball_match.py +38 -56
- niwrap_afni/afni/v_3d_bandpass.py +66 -74
- niwrap_afni/afni/v_3d_blur_in_mask.py +45 -59
- niwrap_afni/afni/v_3d_blur_to_fwhm.py +41 -58
- niwrap_afni/afni/v_3d_brain_sync.py +40 -58
- niwrap_afni/afni/v_3d_brain_voyagerto_afni.py +52 -63
- niwrap_afni/afni/v_3d_brick_stat.py +83 -78
- niwrap_afni/afni/v_3d_clip_level.py +32 -52
- niwrap_afni/afni/v_3d_clust_count.py +30 -51
- niwrap_afni/afni/v_3d_clust_sim.py +85 -88
- niwrap_afni/afni/v_3d_clusterize.py +81 -82
- niwrap_afni/afni/v_3d_cm.py +43 -59
- niwrap_afni/afni/v_3d_compare_affine.py +31 -53
- niwrap_afni/afni/v_3d_conformist.py +24 -46
- niwrap_afni/afni/v_3d_convolve.py +26 -48
- niwrap_afni/afni/v_3d_cruiseto_afni.py +48 -60
- niwrap_afni/afni/v_3d_deconvolve.py +68 -78
- niwrap_afni/afni/v_3d_degree_centrality.py +49 -66
- niwrap_afni/afni/v_3d_depth_map.py +53 -65
- niwrap_afni/afni/v_3d_despike.py +28 -51
- niwrap_afni/afni/v_3d_detrend.py +24 -47
- niwrap_afni/afni/v_3d_dft.py +40 -58
- niwrap_afni/afni/v_3d_diff.py +37 -54
- niwrap_afni/afni/v_3d_dteig.py +35 -55
- niwrap_afni/afni/v_3d_dtto_dwi.py +37 -54
- niwrap_afni/afni/v_3d_dtto_noisy_dwi.py +45 -60
- niwrap_afni/afni/v_3d_dwito_dt.py +84 -86
- niwrap_afni/afni/v_3d_dwuncert.py +43 -59
- niwrap_afni/afni/v_3d_ecm.py +65 -73
- niwrap_afni/afni/v_3d_edu_01_scale.py +28 -53
- niwrap_afni/afni/v_3d_eigs_to_dt.py +38 -55
- niwrap_afni/afni/v_3d_empty.py +31 -52
- niwrap_afni/afni/v_3d_entropy.py +22 -44
- niwrap_afni/afni/v_3d_errts_cormat.py +39 -58
- niwrap_afni/afni/v_3d_exchange.py +30 -50
- niwrap_afni/afni/v_3d_extract_group_in_corr.py +28 -51
- niwrap_afni/afni/v_3d_extrema.py +67 -72
- niwrap_afni/afni/v_3d_fdr.py +54 -65
- niwrap_afni/afni/v_3d_fft.py +52 -65
- niwrap_afni/afni/v_3d_friedman.py +30 -53
- niwrap_afni/afni/v_3d_fwhmx.py +51 -63
- niwrap_afni/afni/v_3d_gen_feature_dist.py +50 -63
- niwrap_afni/afni/v_3d_gen_priors.py +87 -86
- niwrap_afni/afni/v_3d_getrow.py +34 -54
- niwrap_afni/afni/v_3d_grayplot.py +58 -69
- niwrap_afni/afni/v_3d_group_in_corr.py +87 -84
- niwrap_afni/afni/v_3d_hist.py +74 -78
- niwrap_afni/afni/v_3d_icc.py +55 -66
- niwrap_afni/afni/v_3d_intracranial.py +41 -57
- niwrap_afni/afni/v_3d_inv_fmri.py +48 -62
- niwrap_afni/afni/v_3d_isc.py +43 -59
- niwrap_afni/afni/v_3d_kruskal_wallis.py +31 -51
- niwrap_afni/afni/v_3d_lfcd.py +47 -63
- niwrap_afni/afni/v_3d_lme.py +97 -92
- niwrap_afni/afni/v_3d_lmer.py +77 -80
- niwrap_afni/afni/v_3d_local_acf.py +35 -55
- niwrap_afni/afni/v_3d_local_bistat.py +50 -63
- niwrap_afni/afni/v_3d_local_histog.py +46 -61
- niwrap_afni/afni/v_3d_local_pv.py +50 -64
- niwrap_afni/afni/v_3d_local_svd.py +38 -54
- niwrap_afni/afni/v_3d_local_unifize.py +46 -62
- niwrap_afni/afni/v_3d_localstat.py +76 -81
- niwrap_afni/afni/v_3d_lomb_scargle.py +42 -59
- niwrap_afni/afni/v_3d_lrflip.py +35 -55
- niwrap_afni/afni/v_3d_lss.py +39 -56
- niwrap_afni/afni/v_3d_mann_whitney.py +30 -54
- niwrap_afni/afni/v_3d_mask_to_ascii.py +25 -47
- niwrap_afni/afni/v_3d_match.py +49 -65
- niwrap_afni/afni/v_3d_mean.py +64 -70
- niwrap_afni/afni/v_3d_median_filter.py +39 -58
- niwrap_afni/afni/v_3d_mema.py +89 -87
- niwrap_afni/afni/v_3d_mepfm.py +43 -63
- niwrap_afni/afni/v_3d_mse.py +44 -60
- niwrap_afni/afni/v_3d_mss.py +66 -73
- niwrap_afni/afni/v_3d_multi_thresh.py +47 -61
- niwrap_afni/afni/v_3d_mvm.py +62 -72
- niwrap_afni/afni/v_3d_mvm_validator.py +23 -49
- niwrap_afni/afni/v_3d_net_corr.py +67 -72
- niwrap_afni/afni/v_3d_nlfim.py +134 -122
- niwrap_afni/afni/v_3d_normality_test.py +27 -48
- niwrap_afni/afni/v_3d_notes.py +36 -53
- niwrap_afni/afni/v_3d_nwarp_adjust.py +34 -56
- niwrap_afni/afni/v_3d_nwarp_apply.py +59 -73
- niwrap_afni/afni/v_3d_nwarp_cat.py +42 -58
- niwrap_afni/afni/v_3d_nwarp_funcs.py +35 -54
- niwrap_afni/afni/v_3d_nwarp_xyz.py +31 -52
- niwrap_afni/afni/v_3d_overlap.py +27 -49
- niwrap_afni/afni/{v_3d_par2_afni.py → v_3d_par2_afni_pl.py} +65 -80
- niwrap_afni/afni/v_3d_periodogram.py +35 -56
- niwrap_afni/afni/v_3d_pfm.py +62 -72
- niwrap_afni/afni/v_3d_polyfit.py +62 -73
- niwrap_afni/afni/v_3d_pval.py +32 -51
- niwrap_afni/afni/v_3d_pvmap.py +31 -52
- niwrap_afni/afni/v_3d_qwarp.py +64 -67
- niwrap_afni/afni/v_3d_rank.py +30 -51
- niwrap_afni/afni/v_3d_rankizer.py +37 -56
- niwrap_afni/afni/v_3d_re_ho.py +65 -76
- niwrap_afni/afni/v_3d_reg_ana.py +58 -68
- niwrap_afni/afni/v_3d_remlfit.py +64 -74
- niwrap_afni/afni/v_3d_retino_phase.py +71 -80
- niwrap_afni/afni/{v_3_droimaker.py → v_3d_roimaker.py} +100 -105
- niwrap_afni/afni/v_3d_roistats.py +52 -62
- niwrap_afni/afni/v_3d_row_fillin.py +33 -53
- niwrap_afni/afni/v_3d_rprog_demo.py +43 -57
- niwrap_afni/afni/v_3d_rsfc.py +78 -79
- niwrap_afni/afni/v_3d_seg.py +80 -86
- niwrap_afni/afni/v_3d_setup_group_in_corr.py +46 -60
- niwrap_afni/afni/v_3d_sharpen.py +30 -52
- niwrap_afni/afni/v_3d_signatures.py +33 -52
- niwrap_afni/afni/v_3d_skull_strip.py +27 -49
- niwrap_afni/afni/v_3d_slice_ndice.py +36 -54
- niwrap_afni/afni/v_3d_space_time_corr.py +36 -54
- niwrap_afni/afni/v_3d_spat_norm.py +40 -56
- niwrap_afni/afni/v_3d_stat_clust.py +44 -60
- niwrap_afni/afni/v_3d_surf2_vol.py +84 -87
- niwrap_afni/afni/v_3d_surf_mask.py +44 -60
- niwrap_afni/afni/v_3d_synthesize.py +34 -51
- niwrap_afni/afni/v_3d_tagalign.py +54 -64
- niwrap_afni/afni/v_3d_tcat.py +34 -53
- niwrap_afni/afni/v_3d_tcorr1_d.py +40 -57
- niwrap_afni/afni/v_3d_tcorr_map.py +66 -73
- niwrap_afni/afni/v_3d_tcorrelate.py +59 -68
- niwrap_afni/afni/v_3d_tfilter.py +29 -51
- niwrap_afni/afni/v_3d_tfitter.py +71 -78
- niwrap_afni/afni/v_3d_threeto_rgb.py +41 -58
- niwrap_afni/afni/v_3d_tnorm.py +37 -54
- niwrap_afni/afni/v_3d_tortoiseto_here.py +36 -55
- niwrap_afni/afni/v_3d_toutcount.py +44 -59
- niwrap_afni/afni/v_3d_toy_prog.py +54 -62
- niwrap_afni/afni/v_3d_tproject.py +77 -83
- niwrap_afni/afni/v_3d_tqual.py +36 -53
- niwrap_afni/afni/v_3d_track_id.py +139 -120
- niwrap_afni/afni/v_3d_trfix.py +33 -53
- niwrap_afni/afni/v_3d_tsgen.py +55 -66
- niwrap_afni/afni/v_3d_tshift.py +59 -71
- niwrap_afni/afni/v_3d_tsmooth.py +58 -69
- niwrap_afni/afni/v_3d_tsort.py +43 -57
- niwrap_afni/afni/v_3d_tsplit4_d.py +27 -51
- niwrap_afni/afni/v_3d_tstat.py +151 -115
- niwrap_afni/afni/v_3d_tto1_d.py +34 -53
- niwrap_afni/afni/v_3d_twoto_complex.py +35 -54
- niwrap_afni/afni/v_3d_undump.py +65 -72
- niwrap_afni/afni/v_3d_unifize.py +56 -67
- niwrap_afni/afni/v_3d_upsample.py +34 -53
- niwrap_afni/afni/v_3d_vec_rgb_to_hsl.py +33 -54
- niwrap_afni/afni/v_3d_vol2_surf.py +125 -108
- niwrap_afni/afni/v_3d_warp.py +71 -73
- niwrap_afni/afni/v_3d_warp_drive.py +108 -95
- niwrap_afni/afni/v_3d_wilcoxon.py +35 -53
- niwrap_afni/afni/v_3d_winsor.py +45 -61
- niwrap_afni/afni/v_3d_xclust_sim.py +64 -74
- niwrap_afni/afni/v_3d_xyzcat.py +30 -51
- niwrap_afni/afni/v_3d_zcat.py +36 -54
- niwrap_afni/afni/v_3d_zcutup.py +27 -49
- niwrap_afni/afni/v_3d_zeropad.py +62 -72
- niwrap_afni/afni/v_3d_zipper_zapper.py +63 -72
- niwrap_afni/afni/v_3d_zregrid.py +36 -55
- niwrap_afni/afni/v_3danisosmooth.py +72 -75
- niwrap_afni/afni/v_3daxialize.py +41 -56
- niwrap_afni/afni/v_3dbucket.py +43 -57
- niwrap_afni/afni/v_3dcalc.py +46 -61
- niwrap_afni/afni/v_3dclust.py +64 -69
- niwrap_afni/afni/v_3dcopy.py +32 -49
- niwrap_afni/afni/v_3ddelay.py +83 -84
- niwrap_afni/afni/v_3ddot.py +50 -60
- niwrap_afni/afni/v_3ddot_beta.py +28 -49
- niwrap_afni/afni/v_3dedge3.py +40 -56
- niwrap_afni/afni/v_3dedgedog.py +59 -72
- niwrap_afni/afni/v_3dfim_.py +60 -73
- niwrap_afni/afni/v_3dfractionize.py +36 -54
- niwrap_afni/afni/v_3dhistog.py +63 -70
- niwrap_afni/afni/v_3dinfill.py +48 -63
- niwrap_afni/afni/v_3dinfo.py +250 -161
- niwrap_afni/afni/v_3dkmeans.py +73 -79
- niwrap_afni/afni/v_3dmask_svd.py +46 -62
- niwrap_afni/afni/v_3dmask_tool.py +53 -65
- niwrap_afni/afni/v_3dmaskave.py +36 -56
- niwrap_afni/afni/v_3dmaskdump.py +73 -78
- niwrap_afni/afni/v_3dmatcalc.py +29 -50
- niwrap_afni/afni/v_3dmatmult.py +31 -51
- niwrap_afni/afni/v_3dmaxdisp.py +30 -50
- niwrap_afni/afni/v_3dmaxima.py +68 -70
- niwrap_afni/afni/v_3dmerge.py +48 -61
- niwrap_afni/afni/v_3dnewid.py +37 -53
- niwrap_afni/afni/v_3dnvals.py +24 -45
- niwrap_afni/afni/v_3dpc.py +58 -68
- niwrap_afni/afni/v_3drefit.py +65 -73
- niwrap_afni/afni/v_3drename.py +22 -44
- niwrap_afni/afni/v_3dresample.py +38 -56
- niwrap_afni/afni/v_3dretroicor.py +51 -67
- niwrap_afni/afni/v_3drotate.py +83 -83
- niwrap_afni/afni/v_3dsvm.py +90 -88
- niwrap_afni/afni/v_3dsvm_linpredict.py +25 -47
- niwrap_afni/afni/v_3dto_xdataset.py +25 -47
- niwrap_afni/afni/v_3dttest__.py +77 -81
- niwrap_afni/afni/v_3dvolreg.py +60 -70
- niwrap_afni/afni/v_4swap.py +22 -44
- niwrap_afni/afni/v__1d_diff_mag.py +20 -44
- niwrap_afni/afni/v__2dwarper.py +20 -44
- niwrap_afni/afni/v__2dwarper_allin.py +28 -50
- niwrap_afni/afni/v__4_daverage.py +22 -44
- niwrap_afni/afni/v__add_edge.py +59 -69
- niwrap_afni/afni/v__afni_env.py +42 -56
- niwrap_afni/afni/v__afni_orient2_raimap.py +20 -43
- niwrap_afni/afni/v__afni_orient_sign.py +21 -45
- niwrap_afni/afni/v__afni_r_package_install.py +34 -52
- niwrap_afni/afni/v__afni_refacer_make_master.py +20 -44
- niwrap_afni/afni/v__afni_refacer_make_onebig_a12.py +21 -45
- niwrap_afni/afni/v__afni_refacer_run.py +55 -67
- niwrap_afni/afni/v__afni_run_me.py +24 -45
- niwrap_afni/afni/v__align_centers.py +57 -68
- niwrap_afni/afni/v__align_partial_oblique.py +42 -58
- niwrap_afni/afni/v__anaticor.py +50 -61
- niwrap_afni/afni/v__animal_warper.py +113 -104
- niwrap_afni/afni/v__atlasize.py +67 -74
- niwrap_afni/afni/v__auto_tlrc.py +119 -105
- niwrap_afni/afni/v__build_afni_xlib.py +30 -48
- niwrap_afni/afni/v__center_distance.py +22 -45
- niwrap_afni/afni/v__chauffeur_afni.py +68 -75
- niwrap_afni/afni/v__check_for_afni_dset.py +21 -45
- niwrap_afni/afni/v__clip_volume.py +71 -78
- niwrap_afni/afni/v__clust_exp_cat_lab.py +25 -47
- niwrap_afni/afni/v__clust_exp_run_shiny.py +22 -44
- niwrap_afni/afni/v__command_globb.py +27 -51
- niwrap_afni/afni/v__compute_gcor.py +38 -56
- niwrap_afni/afni/v__compute_oc_weights.py +47 -62
- niwrap_afni/afni/v__deblank_file_names.py +35 -51
- niwrap_afni/afni/v__demo_prompt.py +20 -44
- niwrap_afni/afni/v__dice_metric.py +48 -59
- niwrap_afni/afni/v__diff_files.py +47 -58
- niwrap_afni/afni/v__diff_tree.py +61 -67
- niwrap_afni/afni/v__djunct_4d_imager.py +37 -58
- niwrap_afni/afni/v__djunct_4d_slices_to_3d_vol.py +20 -44
- niwrap_afni/afni/v__djunct_anonymize.py +28 -48
- niwrap_afni/afni/v__djunct_dwi_selector_tcsh.py +170 -0
- niwrap_afni/afni/v__djunct_edgy_align_check.py +88 -86
- niwrap_afni/afni/v__djunct_modal_smoothing_with_rep.py +43 -60
- niwrap_afni/afni/v__djunct_montage_coordinator.py +36 -54
- niwrap_afni/afni/v__djunct_overlap_check.py +80 -80
- niwrap_afni/afni/v__djunct_ssw_intermed_edge_imgs.py +54 -63
- niwrap_afni/afni/v__do_examples.py +20 -44
- niwrap_afni/afni/v__electro_grid.py +35 -54
- niwrap_afni/afni/v__examine_gen_feat_dists.py +42 -57
- niwrap_afni/afni/v__extract_meica_ortvec.py +36 -55
- niwrap_afni/afni/v__fast_roi.py +41 -56
- niwrap_afni/afni/v__fat_tract_colorize.py +37 -55
- niwrap_afni/afni/v__find_afni_dset_path.py +30 -48
- niwrap_afni/afni/v__fix_fssphere.py +32 -51
- niwrap_afni/afni/v__float_fix.py +24 -47
- niwrap_afni/afni/v__from_rai.py +22 -44
- niwrap_afni/afni/v__fs_roi_label.py +45 -60
- niwrap_afni/afni/v__fslabel2dset.py +33 -52
- niwrap_afni/afni/v__get_afni_dims.py +20 -44
- niwrap_afni/afni/v__get_afni_id.py +20 -44
- niwrap_afni/afni/v__get_afni_orient.py +23 -46
- niwrap_afni/afni/v__get_afni_prefix.py +23 -45
- niwrap_afni/afni/v__get_afni_res.py +23 -45
- niwrap_afni/afni/v__get_afni_version.py +21 -45
- niwrap_afni/afni/v__get_afni_view.py +20 -44
- niwrap_afni/afni/v__grad_flip_test.py +58 -69
- niwrap_afni/afni/v__grayplot.py +33 -53
- niwrap_afni/afni/v__help_afni.py +31 -49
- niwrap_afni/afni/v__is_oblique.py +20 -44
- niwrap_afni/afni/v__iso_masks.py +23 -45
- niwrap_afni/afni/v__make_label_table.py +116 -106
- niwrap_afni/afni/v__make_plug_diff.py +32 -49
- niwrap_afni/afni/v__measure_bb_thick.py +59 -72
- niwrap_afni/afni/v__measure_erosion_thick.py +45 -60
- niwrap_afni/afni/v__measure_in2out.py +50 -63
- niwrap_afni/afni/v__move_to_series_dirs.py +41 -57
- niwrap_afni/afni/v__no_ext.py +23 -46
- niwrap_afni/afni/v__no_pound.py +20 -43
- niwrap_afni/afni/v__noisy_skull_strip.py +29 -51
- niwrap_afni/afni/v__np.py +28 -50
- niwrap_afni/afni/v__parse_afni_name.py +24 -48
- niwrap_afni/afni/v__purify_1_d.py +26 -47
- niwrap_afni/afni/v__quiet_talkers.py +38 -54
- niwrap_afni/afni/v__radial_correlate.py +74 -79
- niwrap_afni/afni/v__rename_panga.py +43 -58
- niwrap_afni/afni/v__reorder.py +38 -56
- niwrap_afni/afni/v__retino_proc.py +130 -114
- niwrap_afni/afni/v__roi_corr_mat.py +42 -57
- niwrap_afni/afni/v__roi_decluster.py +40 -57
- niwrap_afni/afni/v__roi_modal_grow.py +39 -56
- niwrap_afni/afni/v__scale_volume.py +38 -55
- niwrap_afni/afni/v__script_check.py +25 -47
- niwrap_afni/afni/v__shift_volume.py +36 -55
- niwrap_afni/afni/v__show_dynamic_range.py +26 -50
- niwrap_afni/afni/v__simulate_motion.py +58 -67
- niwrap_afni/afni/v__skull_strip_touch_up.py +36 -55
- niwrap_afni/afni/v__snapshot_volreg.py +29 -50
- niwrap_afni/afni/v__spharm_examples.py +31 -49
- niwrap_afni/afni/v__sswarper.py +89 -89
- niwrap_afni/afni/v__statauxcode.py +20 -44
- niwrap_afni/afni/v__suma_acknowledge.py +40 -58
- niwrap_afni/afni/v__suma_align_to_experiment.py +75 -78
- niwrap_afni/afni/v__suma_fsvol_to_brik.py +24 -47
- niwrap_afni/afni/v__suma_make_spec_caret.py +35 -54
- niwrap_afni/afni/v__suma_make_spec_fs.py +60 -69
- niwrap_afni/afni/v__suma_make_spec_sf.py +28 -50
- niwrap_afni/afni/v__suma_renumber_fs.py +29 -53
- niwrap_afni/afni/v__suma_reprefixize_spec.py +28 -51
- niwrap_afni/afni/v__surf_smooth_heat_07_examples.py +20 -43
- niwrap_afni/afni/v__surf_to_vol_spackle.py +57 -68
- niwrap_afni/afni/v__t1scale.py +50 -61
- niwrap_afni/afni/v__thickness_master.py +28 -50
- niwrap_afni/afni/v__time_diff.py +22 -44
- niwrap_afni/afni/v__to_mni_awarp.py +22 -48
- niwrap_afni/afni/v__to_mni_qwarpar.py +23 -46
- niwrap_afni/afni/v__to_rai.py +22 -44
- niwrap_afni/afni/v__update_afni_binaries.py +73 -73
- niwrap_afni/afni/v__vol_center.py +23 -45
- niwrap_afni/afni/v__xyz_to_ijk.py +30 -50
- niwrap_afni/afni/vecwarp.py +41 -59
- niwrap_afni/afni/waver.py +80 -83
- niwrap_afni/afni/whirlgif.py +42 -60
- niwrap_afni/afni/xmat_tool_py.py +66 -70
- niwrap_afni-0.7.0.dist-info/METADATA +8 -0
- niwrap_afni-0.7.0.dist-info/RECORD +569 -0
- niwrap_afni-0.7.0.dist-info/WHEEL +4 -0
- niwrap_afni/afni/v__djunct_dwi_selector.py +0 -192
- niwrap_afni-0.6.3.dist-info/METADATA +0 -8
- niwrap_afni-0.6.3.dist-info/RECORD +0 -569
- niwrap_afni-0.6.3.dist-info/WHEEL +0 -4
niwrap_afni/afni/fim2.py
CHANGED
|
@@ -6,7 +6,7 @@ import pathlib
|
|
|
6
6
|
from styxdefs import *
|
|
7
7
|
|
|
8
8
|
FIM2_METADATA = Metadata(
|
|
9
|
-
id="
|
|
9
|
+
id="5a4e1f8896d5725c0337f94e013785705278b663.boutiques",
|
|
10
10
|
name="fim2",
|
|
11
11
|
package="afni",
|
|
12
12
|
container_image_tag="afni/afni_make_build:AFNI_24.2.06",
|
|
@@ -14,7 +14,33 @@ FIM2_METADATA = Metadata(
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
Fim2Parameters = typing.TypedDict('Fim2Parameters', {
|
|
17
|
-
"
|
|
17
|
+
"@type": typing.NotRequired[typing.Literal["afni/fim2"]],
|
|
18
|
+
"image_files": list[InputPathType],
|
|
19
|
+
"pcnt": typing.NotRequired[float | None],
|
|
20
|
+
"pcthresh": typing.NotRequired[float | None],
|
|
21
|
+
"im1": typing.NotRequired[int | None],
|
|
22
|
+
"num": typing.NotRequired[int | None],
|
|
23
|
+
"non": bool,
|
|
24
|
+
"coef": typing.NotRequired[float | None],
|
|
25
|
+
"ort": typing.NotRequired[list[InputPathType] | None],
|
|
26
|
+
"ideal": typing.NotRequired[list[InputPathType] | None],
|
|
27
|
+
"polref": typing.NotRequired[int | None],
|
|
28
|
+
"fimfile": typing.NotRequired[str | None],
|
|
29
|
+
"corr": bool,
|
|
30
|
+
"corfile": typing.NotRequired[str | None],
|
|
31
|
+
"cnrfile": typing.NotRequired[str | None],
|
|
32
|
+
"sigfile": typing.NotRequired[str | None],
|
|
33
|
+
"fitfile": typing.NotRequired[str | None],
|
|
34
|
+
"subort": typing.NotRequired[str | None],
|
|
35
|
+
"flim": bool,
|
|
36
|
+
"clean": bool,
|
|
37
|
+
"clip": bool,
|
|
38
|
+
"q": bool,
|
|
39
|
+
"dfspace": bool,
|
|
40
|
+
"regbase": typing.NotRequired[str | None],
|
|
41
|
+
})
|
|
42
|
+
Fim2ParametersTagged = typing.TypedDict('Fim2ParametersTagged', {
|
|
43
|
+
"@type": typing.Literal["afni/fim2"],
|
|
18
44
|
"image_files": list[InputPathType],
|
|
19
45
|
"pcnt": typing.NotRequired[float | None],
|
|
20
46
|
"pcthresh": typing.NotRequired[float | None],
|
|
@@ -39,43 +65,11 @@ Fim2Parameters = typing.TypedDict('Fim2Parameters', {
|
|
|
39
65
|
"dfspace": bool,
|
|
40
66
|
"regbase": typing.NotRequired[str | None],
|
|
41
67
|
})
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
def dyn_cargs(
|
|
45
|
-
t: str,
|
|
46
|
-
) -> typing.Any:
|
|
47
|
-
"""
|
|
48
|
-
Get build cargs function by command type.
|
|
49
|
-
|
|
50
|
-
Args:
|
|
51
|
-
t: Command type.
|
|
52
|
-
Returns:
|
|
53
|
-
Build cargs function.
|
|
54
|
-
"""
|
|
55
|
-
return {
|
|
56
|
-
"fim2": fim2_cargs,
|
|
57
|
-
}.get(t)
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
def dyn_outputs(
|
|
61
|
-
t: str,
|
|
62
|
-
) -> typing.Any:
|
|
63
|
-
"""
|
|
64
|
-
Get build outputs function by command type.
|
|
65
|
-
|
|
66
|
-
Args:
|
|
67
|
-
t: Command type.
|
|
68
|
-
Returns:
|
|
69
|
-
Build outputs function.
|
|
70
|
-
"""
|
|
71
|
-
return {
|
|
72
|
-
"fim2": fim2_outputs,
|
|
73
|
-
}.get(t)
|
|
74
68
|
|
|
75
69
|
|
|
76
70
|
class Fim2Outputs(typing.NamedTuple):
|
|
77
71
|
"""
|
|
78
|
-
Output object returned when calling `
|
|
72
|
+
Output object returned when calling `Fim2Parameters(...)`.
|
|
79
73
|
"""
|
|
80
74
|
root: OutputPathType
|
|
81
75
|
"""Output root folder. This is the root folder for all outputs."""
|
|
@@ -117,7 +111,7 @@ def fim2_params(
|
|
|
117
111
|
q: bool = False,
|
|
118
112
|
dfspace: bool = False,
|
|
119
113
|
regbase: str | None = None,
|
|
120
|
-
) ->
|
|
114
|
+
) -> Fim2ParametersTagged:
|
|
121
115
|
"""
|
|
122
116
|
Build parameters.
|
|
123
117
|
|
|
@@ -157,7 +151,7 @@ def fim2_params(
|
|
|
157
151
|
Parameter dictionary
|
|
158
152
|
"""
|
|
159
153
|
params = {
|
|
160
|
-
"
|
|
154
|
+
"@type": "afni/fim2",
|
|
161
155
|
"image_files": image_files,
|
|
162
156
|
"non": non,
|
|
163
157
|
"corr": corr,
|
|
@@ -215,95 +209,95 @@ def fim2_cargs(
|
|
|
215
209
|
"""
|
|
216
210
|
cargs = []
|
|
217
211
|
cargs.append("fim2")
|
|
218
|
-
cargs.extend([execution.input_file(f) for f in params.get("image_files")])
|
|
219
|
-
if params.get("pcnt") is not None:
|
|
212
|
+
cargs.extend([execution.input_file(f) for f in params.get("image_files", None)])
|
|
213
|
+
if params.get("pcnt", None) is not None:
|
|
220
214
|
cargs.extend([
|
|
221
215
|
"-pcnt",
|
|
222
|
-
str(params.get("pcnt"))
|
|
216
|
+
str(params.get("pcnt", None))
|
|
223
217
|
])
|
|
224
|
-
if params.get("pcthresh") is not None:
|
|
218
|
+
if params.get("pcthresh", None) is not None:
|
|
225
219
|
cargs.extend([
|
|
226
220
|
"-pcthresh",
|
|
227
|
-
str(params.get("pcthresh"))
|
|
221
|
+
str(params.get("pcthresh", None))
|
|
228
222
|
])
|
|
229
|
-
if params.get("im1") is not None:
|
|
223
|
+
if params.get("im1", None) is not None:
|
|
230
224
|
cargs.extend([
|
|
231
225
|
"-im1",
|
|
232
|
-
str(params.get("im1"))
|
|
226
|
+
str(params.get("im1", None))
|
|
233
227
|
])
|
|
234
|
-
if params.get("num") is not None:
|
|
228
|
+
if params.get("num", None) is not None:
|
|
235
229
|
cargs.extend([
|
|
236
230
|
"-num",
|
|
237
|
-
str(params.get("num"))
|
|
231
|
+
str(params.get("num", None))
|
|
238
232
|
])
|
|
239
|
-
if params.get("non"):
|
|
233
|
+
if params.get("non", False):
|
|
240
234
|
cargs.append("-non")
|
|
241
|
-
if params.get("coef") is not None:
|
|
235
|
+
if params.get("coef", None) is not None:
|
|
242
236
|
cargs.extend([
|
|
243
237
|
"-coef",
|
|
244
|
-
str(params.get("coef"))
|
|
238
|
+
str(params.get("coef", None))
|
|
245
239
|
])
|
|
246
|
-
if params.get("ort") is not None:
|
|
240
|
+
if params.get("ort", None) is not None:
|
|
247
241
|
cargs.extend([
|
|
248
242
|
"-ort",
|
|
249
|
-
*[execution.input_file(f) for f in params.get("ort")]
|
|
243
|
+
*[execution.input_file(f) for f in params.get("ort", None)]
|
|
250
244
|
])
|
|
251
|
-
if params.get("ideal") is not None:
|
|
245
|
+
if params.get("ideal", None) is not None:
|
|
252
246
|
cargs.extend([
|
|
253
247
|
"-ideal",
|
|
254
|
-
*[execution.input_file(f) for f in params.get("ideal")]
|
|
248
|
+
*[execution.input_file(f) for f in params.get("ideal", None)]
|
|
255
249
|
])
|
|
256
|
-
if params.get("polref") is not None:
|
|
250
|
+
if params.get("polref", None) is not None:
|
|
257
251
|
cargs.extend([
|
|
258
252
|
"-polref",
|
|
259
|
-
str(params.get("polref"))
|
|
253
|
+
str(params.get("polref", None))
|
|
260
254
|
])
|
|
261
|
-
if params.get("fimfile") is not None:
|
|
255
|
+
if params.get("fimfile", None) is not None:
|
|
262
256
|
cargs.extend([
|
|
263
257
|
"-fimfile",
|
|
264
|
-
params.get("fimfile")
|
|
258
|
+
params.get("fimfile", None)
|
|
265
259
|
])
|
|
266
|
-
if params.get("corr"):
|
|
260
|
+
if params.get("corr", False):
|
|
267
261
|
cargs.append("-corr")
|
|
268
|
-
if params.get("corfile") is not None:
|
|
262
|
+
if params.get("corfile", None) is not None:
|
|
269
263
|
cargs.extend([
|
|
270
264
|
"-corfile",
|
|
271
|
-
params.get("corfile")
|
|
265
|
+
params.get("corfile", None)
|
|
272
266
|
])
|
|
273
|
-
if params.get("cnrfile") is not None:
|
|
267
|
+
if params.get("cnrfile", None) is not None:
|
|
274
268
|
cargs.extend([
|
|
275
269
|
"-cnrfile",
|
|
276
|
-
params.get("cnrfile")
|
|
270
|
+
params.get("cnrfile", None)
|
|
277
271
|
])
|
|
278
|
-
if params.get("sigfile") is not None:
|
|
272
|
+
if params.get("sigfile", None) is not None:
|
|
279
273
|
cargs.extend([
|
|
280
274
|
"-sigfile",
|
|
281
|
-
params.get("sigfile")
|
|
275
|
+
params.get("sigfile", None)
|
|
282
276
|
])
|
|
283
|
-
if params.get("fitfile") is not None:
|
|
277
|
+
if params.get("fitfile", None) is not None:
|
|
284
278
|
cargs.extend([
|
|
285
279
|
"-fitfile",
|
|
286
|
-
params.get("fitfile")
|
|
280
|
+
params.get("fitfile", None)
|
|
287
281
|
])
|
|
288
|
-
if params.get("subort") is not None:
|
|
282
|
+
if params.get("subort", None) is not None:
|
|
289
283
|
cargs.extend([
|
|
290
284
|
"-subort",
|
|
291
|
-
params.get("subort")
|
|
285
|
+
params.get("subort", None)
|
|
292
286
|
])
|
|
293
|
-
if params.get("flim"):
|
|
287
|
+
if params.get("flim", False):
|
|
294
288
|
cargs.append("-flim")
|
|
295
|
-
if params.get("clean"):
|
|
289
|
+
if params.get("clean", False):
|
|
296
290
|
cargs.append("-clean")
|
|
297
|
-
if params.get("clip"):
|
|
291
|
+
if params.get("clip", False):
|
|
298
292
|
cargs.append("-clip")
|
|
299
|
-
if params.get("q"):
|
|
293
|
+
if params.get("q", False):
|
|
300
294
|
cargs.append("-q")
|
|
301
|
-
if params.get("dfspace"):
|
|
295
|
+
if params.get("dfspace", False):
|
|
302
296
|
cargs.append("-dfspace")
|
|
303
|
-
if params.get("regbase") is not None:
|
|
297
|
+
if params.get("regbase", None) is not None:
|
|
304
298
|
cargs.extend([
|
|
305
299
|
"-regbase",
|
|
306
|
-
params.get("regbase")
|
|
300
|
+
params.get("regbase", None)
|
|
307
301
|
])
|
|
308
302
|
return cargs
|
|
309
303
|
|
|
@@ -323,21 +317,23 @@ def fim2_outputs(
|
|
|
323
317
|
"""
|
|
324
318
|
ret = Fim2Outputs(
|
|
325
319
|
root=execution.output_file("."),
|
|
326
|
-
activation_magnitudes=execution.output_file(params.get("fimfile")) if (params.get("fimfile") is not None) else None,
|
|
327
|
-
correlation_image=execution.output_file(params.get("corfile")) if (params.get("corfile") is not None) else None,
|
|
328
|
-
contrast_to_noise_image=execution.output_file(params.get("cnrfile")) if (params.get("cnrfile") is not None) else None,
|
|
329
|
-
std_deviation_image=execution.output_file(params.get("sigfile")) if (params.get("sigfile") is not None) else None,
|
|
330
|
-
ls_fit_coefficients=execution.output_file(params.get("fitfile")) if (params.get("fitfile") is not None) else None,
|
|
331
|
-
subtracted_references=execution.output_file(params.get("subort")) if (params.get("subort") is not None) else None,
|
|
320
|
+
activation_magnitudes=execution.output_file(params.get("fimfile", None)) if (params.get("fimfile") is not None) else None,
|
|
321
|
+
correlation_image=execution.output_file(params.get("corfile", None)) if (params.get("corfile") is not None) else None,
|
|
322
|
+
contrast_to_noise_image=execution.output_file(params.get("cnrfile", None)) if (params.get("cnrfile") is not None) else None,
|
|
323
|
+
std_deviation_image=execution.output_file(params.get("sigfile", None)) if (params.get("sigfile") is not None) else None,
|
|
324
|
+
ls_fit_coefficients=execution.output_file(params.get("fitfile", None)) if (params.get("fitfile") is not None) else None,
|
|
325
|
+
subtracted_references=execution.output_file(params.get("subort", None)) if (params.get("subort") is not None) else None,
|
|
332
326
|
)
|
|
333
327
|
return ret
|
|
334
328
|
|
|
335
329
|
|
|
336
330
|
def fim2_execute(
|
|
337
331
|
params: Fim2Parameters,
|
|
338
|
-
|
|
332
|
+
runner: Runner | None = None,
|
|
339
333
|
) -> Fim2Outputs:
|
|
340
334
|
"""
|
|
335
|
+
fim2
|
|
336
|
+
|
|
341
337
|
Functional Imaging Mapping Tool.
|
|
342
338
|
|
|
343
339
|
Author: AFNI Developers
|
|
@@ -346,10 +342,12 @@ def fim2_execute(
|
|
|
346
342
|
|
|
347
343
|
Args:
|
|
348
344
|
params: The parameters.
|
|
349
|
-
|
|
345
|
+
runner: Command runner.
|
|
350
346
|
Returns:
|
|
351
347
|
NamedTuple of outputs (described in `Fim2Outputs`).
|
|
352
348
|
"""
|
|
349
|
+
runner = runner or get_global_runner()
|
|
350
|
+
execution = runner.start_execution(FIM2_METADATA)
|
|
353
351
|
params = execution.params(params)
|
|
354
352
|
cargs = fim2_cargs(params, execution)
|
|
355
353
|
ret = fim2_outputs(params, execution)
|
|
@@ -384,6 +382,8 @@ def fim2(
|
|
|
384
382
|
runner: Runner | None = None,
|
|
385
383
|
) -> Fim2Outputs:
|
|
386
384
|
"""
|
|
385
|
+
fim2
|
|
386
|
+
|
|
387
387
|
Functional Imaging Mapping Tool.
|
|
388
388
|
|
|
389
389
|
Author: AFNI Developers
|
|
@@ -426,8 +426,6 @@ def fim2(
|
|
|
426
426
|
Returns:
|
|
427
427
|
NamedTuple of outputs (described in `Fim2Outputs`).
|
|
428
428
|
"""
|
|
429
|
-
runner = runner or get_global_runner()
|
|
430
|
-
execution = runner.start_execution(FIM2_METADATA)
|
|
431
429
|
params = fim2_params(
|
|
432
430
|
image_files=image_files,
|
|
433
431
|
pcnt=pcnt,
|
|
@@ -453,13 +451,13 @@ def fim2(
|
|
|
453
451
|
dfspace=dfspace,
|
|
454
452
|
regbase=regbase,
|
|
455
453
|
)
|
|
456
|
-
return fim2_execute(params,
|
|
454
|
+
return fim2_execute(params, runner)
|
|
457
455
|
|
|
458
456
|
|
|
459
457
|
__all__ = [
|
|
460
458
|
"FIM2_METADATA",
|
|
461
459
|
"Fim2Outputs",
|
|
462
|
-
"Fim2Parameters",
|
|
463
460
|
"fim2",
|
|
461
|
+
"fim2_execute",
|
|
464
462
|
"fim2_params",
|
|
465
463
|
]
|
|
@@ -5,16 +5,34 @@ import typing
|
|
|
5
5
|
import pathlib
|
|
6
6
|
from styxdefs import *
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
id="
|
|
10
|
-
name="find_variance_lines",
|
|
8
|
+
FIND_VARIANCE_LINES_TCSH_METADATA = Metadata(
|
|
9
|
+
id="3447eee105e11d76e6ca8bbc5dda2062c2674033.boutiques",
|
|
10
|
+
name="find_variance_lines.tcsh",
|
|
11
11
|
package="afni",
|
|
12
12
|
container_image_tag="afni/afni_make_build:AFNI_24.2.06",
|
|
13
13
|
)
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
"
|
|
16
|
+
FindVarianceLinesTcshParameters = typing.TypedDict('FindVarianceLinesTcshParameters', {
|
|
17
|
+
"@type": typing.NotRequired[typing.Literal["afni/find_variance_lines.tcsh"]],
|
|
18
|
+
"input_files": list[InputPathType],
|
|
19
|
+
"mask": typing.NotRequired[str | None],
|
|
20
|
+
"min_cvox": typing.NotRequired[int | None],
|
|
21
|
+
"min_nt": typing.NotRequired[int | None],
|
|
22
|
+
"nerode": typing.NotRequired[int | None],
|
|
23
|
+
"nfirst": typing.NotRequired[int | None],
|
|
24
|
+
"percentile": typing.NotRequired[int | None],
|
|
25
|
+
"polort": typing.NotRequired[str | None],
|
|
26
|
+
"output_dir": typing.NotRequired[str | None],
|
|
27
|
+
"do_clean": typing.NotRequired[int | None],
|
|
28
|
+
"do_img": typing.NotRequired[int | None],
|
|
29
|
+
"echo": bool,
|
|
30
|
+
"help": bool,
|
|
31
|
+
"hist": bool,
|
|
32
|
+
"ver": bool,
|
|
33
|
+
})
|
|
34
|
+
FindVarianceLinesTcshParametersTagged = typing.TypedDict('FindVarianceLinesTcshParametersTagged', {
|
|
35
|
+
"@type": typing.Literal["afni/find_variance_lines.tcsh"],
|
|
18
36
|
"input_files": list[InputPathType],
|
|
19
37
|
"mask": typing.NotRequired[str | None],
|
|
20
38
|
"min_cvox": typing.NotRequired[int | None],
|
|
@@ -33,55 +51,17 @@ FindVarianceLinesParameters = typing.TypedDict('FindVarianceLinesParameters', {
|
|
|
33
51
|
})
|
|
34
52
|
|
|
35
53
|
|
|
36
|
-
|
|
37
|
-
t: str,
|
|
38
|
-
) -> typing.Any:
|
|
39
|
-
"""
|
|
40
|
-
Get build cargs function by command type.
|
|
41
|
-
|
|
42
|
-
Args:
|
|
43
|
-
t: Command type.
|
|
44
|
-
Returns:
|
|
45
|
-
Build cargs function.
|
|
46
|
-
"""
|
|
47
|
-
return {
|
|
48
|
-
"find_variance_lines": find_variance_lines_cargs,
|
|
49
|
-
}.get(t)
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
def dyn_outputs(
|
|
53
|
-
t: str,
|
|
54
|
-
) -> typing.Any:
|
|
55
|
-
"""
|
|
56
|
-
Get build outputs function by command type.
|
|
57
|
-
|
|
58
|
-
Args:
|
|
59
|
-
t: Command type.
|
|
60
|
-
Returns:
|
|
61
|
-
Build outputs function.
|
|
62
|
-
"""
|
|
63
|
-
return {
|
|
64
|
-
"find_variance_lines": find_variance_lines_outputs,
|
|
65
|
-
}.get(t)
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
class FindVarianceLinesOutputs(typing.NamedTuple):
|
|
54
|
+
class FindVarianceLinesTcshOutputs(typing.NamedTuple):
|
|
69
55
|
"""
|
|
70
|
-
Output object returned when calling `
|
|
56
|
+
Output object returned when calling `FindVarianceLinesTcshParameters(...)`.
|
|
71
57
|
"""
|
|
72
58
|
root: OutputPathType
|
|
73
59
|
"""Output root folder. This is the root folder for all outputs."""
|
|
74
|
-
|
|
75
|
-
"""
|
|
76
|
-
scaled_variance_maps: OutputPathType | None
|
|
77
|
-
"""Scaled variance maps per run"""
|
|
78
|
-
cluster_reports: OutputPathType | None
|
|
79
|
-
"""Cluster reports"""
|
|
80
|
-
jpeg_images: OutputPathType | None
|
|
81
|
-
"""JPEG images showing locations of high variance"""
|
|
60
|
+
output_directory: OutputPathType | None
|
|
61
|
+
"""Output directory containing maps and reports."""
|
|
82
62
|
|
|
83
63
|
|
|
84
|
-
def
|
|
64
|
+
def find_variance_lines_tcsh_params(
|
|
85
65
|
input_files: list[InputPathType],
|
|
86
66
|
mask: str | None = None,
|
|
87
67
|
min_cvox: int | None = None,
|
|
@@ -97,7 +77,7 @@ def find_variance_lines_params(
|
|
|
97
77
|
help_: bool = False,
|
|
98
78
|
hist: bool = False,
|
|
99
79
|
ver: bool = False,
|
|
100
|
-
) ->
|
|
80
|
+
) -> FindVarianceLinesTcshParametersTagged:
|
|
101
81
|
"""
|
|
102
82
|
Build parameters.
|
|
103
83
|
|
|
@@ -121,7 +101,7 @@ def find_variance_lines_params(
|
|
|
121
101
|
Parameter dictionary
|
|
122
102
|
"""
|
|
123
103
|
params = {
|
|
124
|
-
"
|
|
104
|
+
"@type": "afni/find_variance_lines.tcsh",
|
|
125
105
|
"input_files": input_files,
|
|
126
106
|
"echo": echo,
|
|
127
107
|
"help": help_,
|
|
@@ -151,8 +131,8 @@ def find_variance_lines_params(
|
|
|
151
131
|
return params
|
|
152
132
|
|
|
153
133
|
|
|
154
|
-
def
|
|
155
|
-
params:
|
|
134
|
+
def find_variance_lines_tcsh_cargs(
|
|
135
|
+
params: FindVarianceLinesTcshParameters,
|
|
156
136
|
execution: Execution,
|
|
157
137
|
) -> list[str]:
|
|
158
138
|
"""
|
|
@@ -166,72 +146,72 @@ def find_variance_lines_cargs(
|
|
|
166
146
|
"""
|
|
167
147
|
cargs = []
|
|
168
148
|
cargs.append("find_variance_lines.tcsh")
|
|
169
|
-
cargs.extend([execution.input_file(f) for f in params.get("input_files")])
|
|
170
|
-
if params.get("mask") is not None:
|
|
149
|
+
cargs.extend([execution.input_file(f) for f in params.get("input_files", None)])
|
|
150
|
+
if params.get("mask", None) is not None:
|
|
171
151
|
cargs.extend([
|
|
172
152
|
"-mask",
|
|
173
|
-
params.get("mask")
|
|
153
|
+
params.get("mask", None)
|
|
174
154
|
])
|
|
175
|
-
if params.get("min_cvox") is not None:
|
|
155
|
+
if params.get("min_cvox", None) is not None:
|
|
176
156
|
cargs.extend([
|
|
177
157
|
"-min_cvox",
|
|
178
|
-
str(params.get("min_cvox"))
|
|
158
|
+
str(params.get("min_cvox", None))
|
|
179
159
|
])
|
|
180
|
-
if params.get("min_nt") is not None:
|
|
160
|
+
if params.get("min_nt", None) is not None:
|
|
181
161
|
cargs.extend([
|
|
182
162
|
"-min_nt",
|
|
183
|
-
str(params.get("min_nt"))
|
|
163
|
+
str(params.get("min_nt", None))
|
|
184
164
|
])
|
|
185
|
-
if params.get("nerode") is not None:
|
|
165
|
+
if params.get("nerode", None) is not None:
|
|
186
166
|
cargs.extend([
|
|
187
167
|
"-nerode",
|
|
188
|
-
str(params.get("nerode"))
|
|
168
|
+
str(params.get("nerode", None))
|
|
189
169
|
])
|
|
190
|
-
if params.get("nfirst") is not None:
|
|
170
|
+
if params.get("nfirst", None) is not None:
|
|
191
171
|
cargs.extend([
|
|
192
172
|
"-nfirst",
|
|
193
|
-
str(params.get("nfirst"))
|
|
173
|
+
str(params.get("nfirst", None))
|
|
194
174
|
])
|
|
195
|
-
if params.get("percentile") is not None:
|
|
175
|
+
if params.get("percentile", None) is not None:
|
|
196
176
|
cargs.extend([
|
|
197
177
|
"-perc",
|
|
198
|
-
str(params.get("percentile"))
|
|
178
|
+
str(params.get("percentile", None))
|
|
199
179
|
])
|
|
200
|
-
if params.get("polort") is not None:
|
|
180
|
+
if params.get("polort", None) is not None:
|
|
201
181
|
cargs.extend([
|
|
202
182
|
"-polort",
|
|
203
|
-
params.get("polort")
|
|
183
|
+
params.get("polort", None)
|
|
204
184
|
])
|
|
205
|
-
if params.get("output_dir") is not None:
|
|
185
|
+
if params.get("output_dir", None) is not None:
|
|
206
186
|
cargs.extend([
|
|
207
187
|
"-rdir",
|
|
208
|
-
params.get("output_dir")
|
|
188
|
+
params.get("output_dir", None)
|
|
209
189
|
])
|
|
210
|
-
if params.get("do_clean") is not None:
|
|
190
|
+
if params.get("do_clean", None) is not None:
|
|
211
191
|
cargs.extend([
|
|
212
192
|
"-do_clean",
|
|
213
|
-
str(params.get("do_clean"))
|
|
193
|
+
str(params.get("do_clean", None))
|
|
214
194
|
])
|
|
215
|
-
if params.get("do_img") is not None:
|
|
195
|
+
if params.get("do_img", None) is not None:
|
|
216
196
|
cargs.extend([
|
|
217
197
|
"-do_img",
|
|
218
|
-
str(params.get("do_img"))
|
|
198
|
+
str(params.get("do_img", None))
|
|
219
199
|
])
|
|
220
|
-
if params.get("echo"):
|
|
200
|
+
if params.get("echo", False):
|
|
221
201
|
cargs.append("-echo")
|
|
222
|
-
if params.get("help"):
|
|
202
|
+
if params.get("help", False):
|
|
223
203
|
cargs.append("-help")
|
|
224
|
-
if params.get("hist"):
|
|
204
|
+
if params.get("hist", False):
|
|
225
205
|
cargs.append("-hist")
|
|
226
|
-
if params.get("ver"):
|
|
206
|
+
if params.get("ver", False):
|
|
227
207
|
cargs.append("-ver")
|
|
228
208
|
return cargs
|
|
229
209
|
|
|
230
210
|
|
|
231
|
-
def
|
|
232
|
-
params:
|
|
211
|
+
def find_variance_lines_tcsh_outputs(
|
|
212
|
+
params: FindVarianceLinesTcshParameters,
|
|
233
213
|
execution: Execution,
|
|
234
|
-
) ->
|
|
214
|
+
) -> FindVarianceLinesTcshOutputs:
|
|
235
215
|
"""
|
|
236
216
|
Build outputs object containing output file paths and possibly stdout/stderr.
|
|
237
217
|
|
|
@@ -241,23 +221,22 @@ def find_variance_lines_outputs(
|
|
|
241
221
|
Returns:
|
|
242
222
|
Outputs object.
|
|
243
223
|
"""
|
|
244
|
-
ret =
|
|
224
|
+
ret = FindVarianceLinesTcshOutputs(
|
|
245
225
|
root=execution.output_file("."),
|
|
246
|
-
|
|
247
|
-
scaled_variance_maps=execution.output_file(params.get("output_dir") + "/scaled_variance_map_run*.nii.gz") if (params.get("output_dir") is not None) else None,
|
|
248
|
-
cluster_reports=execution.output_file(params.get("output_dir") + "/cluster_report_run*.txt") if (params.get("output_dir") is not None) else None,
|
|
249
|
-
jpeg_images=execution.output_file(params.get("output_dir") + "/*.jpg") if (params.get("output_dir") is not None) else None,
|
|
226
|
+
output_directory=execution.output_file(params.get("output_dir", None)) if (params.get("output_dir") is not None) else None,
|
|
250
227
|
)
|
|
251
228
|
return ret
|
|
252
229
|
|
|
253
230
|
|
|
254
|
-
def
|
|
255
|
-
params:
|
|
256
|
-
|
|
257
|
-
) ->
|
|
231
|
+
def find_variance_lines_tcsh_execute(
|
|
232
|
+
params: FindVarianceLinesTcshParameters,
|
|
233
|
+
runner: Runner | None = None,
|
|
234
|
+
) -> FindVarianceLinesTcshOutputs:
|
|
258
235
|
"""
|
|
259
|
-
|
|
260
|
-
|
|
236
|
+
find_variance_lines.tcsh
|
|
237
|
+
|
|
238
|
+
Look for bars of high variance that might suggest scanner interference in
|
|
239
|
+
EPI datasets.
|
|
261
240
|
|
|
262
241
|
Author: AFNI Developers
|
|
263
242
|
|
|
@@ -265,18 +244,20 @@ def find_variance_lines_execute(
|
|
|
265
244
|
|
|
266
245
|
Args:
|
|
267
246
|
params: The parameters.
|
|
268
|
-
|
|
247
|
+
runner: Command runner.
|
|
269
248
|
Returns:
|
|
270
|
-
NamedTuple of outputs (described in `
|
|
249
|
+
NamedTuple of outputs (described in `FindVarianceLinesTcshOutputs`).
|
|
271
250
|
"""
|
|
251
|
+
runner = runner or get_global_runner()
|
|
252
|
+
execution = runner.start_execution(FIND_VARIANCE_LINES_TCSH_METADATA)
|
|
272
253
|
params = execution.params(params)
|
|
273
|
-
cargs =
|
|
274
|
-
ret =
|
|
254
|
+
cargs = find_variance_lines_tcsh_cargs(params, execution)
|
|
255
|
+
ret = find_variance_lines_tcsh_outputs(params, execution)
|
|
275
256
|
execution.run(cargs)
|
|
276
257
|
return ret
|
|
277
258
|
|
|
278
259
|
|
|
279
|
-
def
|
|
260
|
+
def find_variance_lines_tcsh(
|
|
280
261
|
input_files: list[InputPathType],
|
|
281
262
|
mask: str | None = None,
|
|
282
263
|
min_cvox: int | None = None,
|
|
@@ -293,10 +274,12 @@ def find_variance_lines(
|
|
|
293
274
|
hist: bool = False,
|
|
294
275
|
ver: bool = False,
|
|
295
276
|
runner: Runner | None = None,
|
|
296
|
-
) ->
|
|
277
|
+
) -> FindVarianceLinesTcshOutputs:
|
|
297
278
|
"""
|
|
298
|
-
|
|
299
|
-
|
|
279
|
+
find_variance_lines.tcsh
|
|
280
|
+
|
|
281
|
+
Look for bars of high variance that might suggest scanner interference in
|
|
282
|
+
EPI datasets.
|
|
300
283
|
|
|
301
284
|
Author: AFNI Developers
|
|
302
285
|
|
|
@@ -320,11 +303,9 @@ def find_variance_lines(
|
|
|
320
303
|
ver: Show the current version.
|
|
321
304
|
runner: Command runner.
|
|
322
305
|
Returns:
|
|
323
|
-
NamedTuple of outputs (described in `
|
|
306
|
+
NamedTuple of outputs (described in `FindVarianceLinesTcshOutputs`).
|
|
324
307
|
"""
|
|
325
|
-
|
|
326
|
-
execution = runner.start_execution(FIND_VARIANCE_LINES_METADATA)
|
|
327
|
-
params = find_variance_lines_params(
|
|
308
|
+
params = find_variance_lines_tcsh_params(
|
|
328
309
|
input_files=input_files,
|
|
329
310
|
mask=mask,
|
|
330
311
|
min_cvox=min_cvox,
|
|
@@ -341,13 +322,13 @@ def find_variance_lines(
|
|
|
341
322
|
hist=hist,
|
|
342
323
|
ver=ver,
|
|
343
324
|
)
|
|
344
|
-
return
|
|
325
|
+
return find_variance_lines_tcsh_execute(params, runner)
|
|
345
326
|
|
|
346
327
|
|
|
347
328
|
__all__ = [
|
|
348
|
-
"
|
|
349
|
-
"
|
|
350
|
-
"
|
|
351
|
-
"
|
|
352
|
-
"
|
|
329
|
+
"FIND_VARIANCE_LINES_TCSH_METADATA",
|
|
330
|
+
"FindVarianceLinesTcshOutputs",
|
|
331
|
+
"find_variance_lines_tcsh",
|
|
332
|
+
"find_variance_lines_tcsh_execute",
|
|
333
|
+
"find_variance_lines_tcsh_params",
|
|
353
334
|
]
|