diff --git a/conf/hicstuff.config b/conf/hicstuff.config
deleted file mode 100644
index 55f6a237b70f04dca2f026b5e272bb42369cfec3..0000000000000000000000000000000000000000
--- a/conf/hicstuff.config
+++ /dev/null
@@ -1,402 +0,0 @@
-params {
-
-    // Input options
-    input = null
-
-
-    // References
-    genome = null
-    igenomes_base = 's3://ngi-igenomes/igenomes'
-    igenomes_ignore = false
-    chromosome_size = null
-    restriction_fragments = null
-    save_reference = false
-
-    // Mapping
-    split_fastq = false
-    fastq_chunks_size = 20000000
-    save_interaction_bam = false
-    save_aligned_intermediates = false
-    bwt2_opts_end2end = '--very-sensitive -L 30 --score-min L,-0.6,-0.2 --end-to-end --reorder'
-    bwt2_opts_trimmed = '--very-sensitive -L 20 --score-min L,-0.6,-0.2 --end-to-end --reorder'
-    keep_dups = false
-    keep_multi = false
-    min_mapq = 10
-
-    // Digestion Hi-C
-    digestion = null
-    ligation_site = null
-    restriction_site = null
-    digest {
-      'hindiii'{
-         restriction_site='A^AGCTT'
-         ligation_site='AAGCTAGCTT'
-      }
-      'mboi' {
-         restriction_site='^GATC'
-         ligation_site='GATCGATC'
-      }
-      'dpnii' {
-         restriction_site='^GATC'
-         ligation_site='GATCGATC'
-      }
-      'arima' {
-         restriction_site='^GATC,G^ANTC'
-         ligation_site='GATCGATC,GATCANTC,GANTGATC,GANTANTC'
-      }
-    }
-
-    min_restriction_fragment_size = 0
-    max_restriction_fragment_size = 0
-    min_insert_size = 0
-    max_insert_size = 0
-    save_pairs_intermediates = false
-
-    // Dnase Hi-C
-    dnase = false
-    min_cis_dist = 0
-
-    // Contact maps
-    save_raw_maps = false
-    bin_size = '1000000'
-    res_zoomify = null
-    hicpro_maps = false
-    ice_max_iter = 100
-    ice_filter_low_count_perc = 0.02
-    ice_filter_high_count_perc =  0
-    ice_eps = 0.1
-
-    // Downstream Analysis
-    res_dist_decay = '250000'
-    tads_caller = 'insulation'
-    res_tads = '40000'
-    res_compartments = '250000'
-
-    // Workflow
-    skip_maps = false
-    skip_balancing = false
-    skip_mcool = false
-    skip_dist_decay = false
-    skip_compartments = false
-    skip_tads = false
-    skip_multiqc = false
-
-    // MultiQC options
-    multiqc_config             = null
-    multiqc_title              = null
-    multiqc_logo               = null
-    max_multiqc_email_size     = '25.MB'
-    multiqc_methods_description = null
-
-    // Boilerplate options
-    outdir                     = '${params.outdir}'
-    tracedir                   = "${params.outdir}/pipeline_info"
-    publish_dir_mode           = 'copy'
-    email                      = null
-    email_on_fail              = null
-    plaintext_email            = false
-    monochrome_logs            = false
-    hook_url                   = null
-    help                       = false
-    version                    = false
-    validate_params            = true
-    show_hidden_params         = false
-    schema_ignore_params       = 'genomes,digest'
-
-    // Config options
-    custom_config_version      = 'master'
-    custom_config_base         = "https://raw.githubusercontent.com/nf-core/configs/${params.custom_config_version}"
-    config_profile_description = null
-    config_profile_contact     = null
-    config_profile_url         = null
-    config_profile_name        = null
-
-
-    // Max resource options
-    // Defaults only, expecting to be overwritten
-    max_memory                 = '128.GB'
-    max_cpus                   = 16
-    max_time                   = '240.h'
-
-    // Hicstuff
-    hicstuff_bwt2_align_opts = '--very-sensitive-local'
-    hicstuff_min_size = 0
-    hicstuff_circular = 'false'
-    hicstuff_output_contigs = 'info_contigs.txt'
-    hicstuff_output_frags = 'fragments_list.txt'
-    hicstuff_frags_plot = 'false'
-    hicstuff_frags_plot_path = 'frags_hist.pdf'
-    hicstuff_valid_pairs = 'valid.pairs'
-    hicstuff_valid_idx = 'valid_idx.pairs'
-    hicstuff_min_qual = 30
-    hicstuff_matrix = 'abs_fragments_contacts_weighted.txt'
-    hicstuff_bin = 10000
-    hicstuff_valid_idx_filtered = 'valid_idx_filtered.pairs'
-    hicstuff_plot_events = 'false'
-    hicstuff_pie_plot = 'distrib'
-    hicstuff_dist_plot = 'dist'
-    hicstuff_centro_file = 'None'       //give absolute path or 'None'
-    hicstuff_base = 1.1
-    hicstuff_distance_out_file = 'distance_law.txt'
-    hicstuff_rm_centro = 'None'         //int or 'None'
-    hicstuff_distance_plot = 'false'
-    hicstuff_distance_out_plot = 'plot_distance_law.pdf'
-    hicstuff_filter_pcr_out_file = 'valid_idx_pcrfree.pairs'
-
-    //Hicstuff optional modules
-    filter_event = false
-    distance_law = false
-    filter_pcr = false
-    filter_pcr_picard = true
-
-    workflow = 'hicstuff'
-}
-
-process {
-    //Default
-    publishDir = [
-        path: { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" },
-        mode: 'copy',
-        saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
-    ]
-
-    withName: 'BOWTIE2_ALIGNMENT' {
-        ext.prefix = { "${meta.id}_${meta.chunk}_${meta.mates}" }
-        ext.args = params.hicstuff_bwt2_align_opts
-        publishDir = [
-            path: { "${params.outdir}/hicstuff/reads"},
-            mode: 'copy'
-        ]
-    }
-
-    withName: 'FRAGMENT_ENZYME' {
-        ext.args = { [
-            " -m ${params.hicstuff_min_size}",
-            " -c ${params.hicstuff_circular}",
-            " -o ${params.hicstuff_output_contigs}",
-            " -f ${params.hicstuff_output_frags}",
-            " -p ${params.hicstuff_frags_plot}",
-            " -g ${params.hicstuff_frags_plot_path}"
-        ].join('').trim() }
-        publishDir = [
-            path: { "${params.outdir}/hicstuff/fragment_enzyme" },
-            mode: 'copy'
-        ]
-    }
-
-    withName: 'BAM2PAIRS' {
-        ext.pairs = params.hicstuff_valid_pairs
-        ext.index = params.hicstuff_valid_idx
-        ext.args = { [
-            " -q ${params.hicstuff_min_qual}",
-            " -c ${params.hicstuff_circular}"
-        ].join('').trim() }
-        publishDir = [
-            path: { "${params.outdir}/hicstuff/pairs" },
-            mode: 'copy'
-        ]
-    }
-
-    withName: 'FILTER_EVENT' {
-        ext.args = { [
-           " -o ${params.hicstuff_valid_idx_filtered}",
-           " --plot ${params.hicstuff_plot_events}",
-           " -d ${params.hicstuff_dist_plot}",
-           " -q ${params.hicstuff_pie_plot}"
-        ].join('').trim() }
-        publishDir = [
-            path: { "${params.outdir}/hicstuff/pairs" },
-            mode: 'copy'
-        ]
-    }
-
-    withName: 'DISTANCE_LAW' {
-        ext.args = { [
-            " -c ${params.hicstuff_centro_file}",
-            " -b ${params.hicstuff_base}",
-            " -o ${params.hicstuff_distance_out_file}",
-            " -u ${params.hicstuff_circular}",
-            " -r ${params.hicstuff_rm_centro}",
-            " -l ${params.hicstuff_distance_plot}",
-            " -d ${params.hicstuff_distance_out_plot}"
-        ].join('').trim() }
-        publishDir = [
-            path: { "${params.outdir}/hicstuff/pairs" },
-            mode: 'copy'
-        ]
-    }
-
-    withName: 'FILTER_PCR' {
-        ext.args = { [
-            "-o ${params.hicstuff_filter_pcr_out_file}"
-        ].join('').trim() }
-        publishDir = [
-            path: { "${params.outdir}/hicstuff/pairs" },
-            mode: 'copy'
-        ]
-    }
-
-    withName: 'GATK4_MARKDUPLICATES' {
-        ext.prefix = { "${meta.id}_${meta.chunk}_${meta.mates}.bam" }
-        ext.args = { [
-            "--REMOVE_DUPLICATES true"
-        ].join('').trim() }
-        publishDir = [
-            path: { "${params.outdir}/gatk4/bam" },
-            mode: 'copy'
-        ]
-    }
-
-    withName: 'PICARD_MARKDUPLICATES' {
-        ext.prefix = { "${meta.id}_${meta.chunk}_${meta.mates}" }
-        ext.args = { [
-            "--REMOVE_DUPLICATES true"
-        ].join('').trim() }
-        publishDir = [
-            path: { "${params.outdir}/picard/bam" },
-            mode: 'copy'
-        ]
-    }
-
-    withName: 'SAMTOOLS_SORT' {
-        ext.prefix = { "${meta.id}_${meta.chunk}_${meta.mates}_sorted" }
-        ext.args = { [
-            ""
-        ].join('').trim() }
-    }
-
-    withName: 'SAMTOOLS_SORT_N' {
-        ext.prefix = { "${meta.id}_${meta.chunk}_${meta.mates}_nsorted" }
-        ext.args = { [
-            "-n"
-        ].join('').trim() }
-        publishDir = [
-            path: { "${params.outdir}/gatk4/bam" },
-            mode: 'copy'
-        ]
-    }
-
-    withName: 'SAMTOOLS_INDEX' {
-        ext.args = { [
-            ""
-        ].join('').trim() }
-    }
-
-    withName: 'BUILD_MATRIX' {
-        ext.args = params.hicstuff_matrix
-        publishDir = [
-            path: { "${params.outdir}/hicstuff/matrix" },
-            mode: 'copy'
-        ]
-    }
-    withName: 'BUILD_MATRIX_COOL' {
-        ext.args = params.hicstuff_matrix
-        publishDir = [
-            path: { "${params.outdir}/hicstuff/matrix" },
-            mode: 'copy'
-        ]
-    }
-        withName: 'BUILD_MATRIX_COOL_ALT' {
-        ext.outname = params.hicstuff_matrix
-        ext.bin = params.hicstuff_bin
-        ext.args = {"-c1 2 -p1 3 -p2 4 -c2 5"}
-        publishDir = [
-            path: { "${params.outdir}/hicstuff/matrix" },
-            mode: 'copy'
-        ]
-    }
-
-    //**********************************************
-    // PREPARE_GENOME
-    withName: 'BOWTIE2_BUILD' {
-        publishDir = [
-            path: { "${params.outdir}/genome/bowtie2_index" },
-            mode: 'copy'
-        ]
-    }
-
-    withName: 'CUSTOM_GETCHROMSIZES' {
-        publishDir = [
-            path: { "${params.outdir}/genome" },
-            mode: 'copy'
-        ]
-    }
-
-    withName: 'GET_RESTRICTION_FRAGMENTS' {
-        publishDir = [
-            path: { "${params.outdir}/genome" },
-            mode: 'copy'
-        ]
-    }
-
-}
-
-profiles {
-    debug { process.beforeScript = 'echo $HOSTNAME' }
-    conda {
-        conda.enabled          = true
-        docker.enabled         = false
-        singularity.enabled    = false
-        podman.enabled         = false
-        shifter.enabled        = false
-        charliecloud.enabled   = false
-    }
-    mamba {
-        conda.enabled          = true
-        conda.useMamba         = true
-        docker.enabled         = false
-        singularity.enabled    = false
-        podman.enabled         = false
-        shifter.enabled        = false
-        charliecloud.enabled   = false
-    }
-    docker {
-        docker.enabled         = true
-        docker.registry        = 'quay.io'
-        docker.userEmulation   = true
-        singularity.enabled    = false
-        podman.enabled         = false
-        shifter.enabled        = false
-        charliecloud.enabled   = false
-    }
-    arm {
-        docker.runOptions = '-u $(id -u):$(id -g) --platform=linux/amd64'
-    }
-    singularity {
-        singularity.enabled    = true
-        singularity.autoMounts = true
-        docker.enabled         = false
-        podman.enabled         = false
-        shifter.enabled        = false
-        charliecloud.enabled   = false
-    }
-    podman {
-        podman.enabled         = true
-        docker.enabled         = false
-        singularity.enabled    = false
-        shifter.enabled        = false
-        charliecloud.enabled   = false
-    }
-    shifter {
-        shifter.enabled        = true
-        docker.enabled         = false
-        singularity.enabled    = false
-        podman.enabled         = false
-        charliecloud.enabled   = false
-    }
-    charliecloud {
-        charliecloud.enabled   = true
-        docker.enabled         = false
-        singularity.enabled    = false
-        podman.enabled         = false
-        shifter.enabled        = false
-    }
-    gitpod {
-        executor.name          = 'local'
-        executor.cpus          = 16
-        executor.memory        = 60.GB
-    }
-    test      { includeConfig 'conf/test.config'      }
-    test_full { includeConfig 'conf/test_full.config' }
-}
-includeConfig 'base.config'
diff --git a/main.nf b/main.nf
index 942feda8495cb7decfaafdb3d01163461d4cbab9..82aaf0f200b77db6710472f821c715376d2e5668 100644
--- a/main.nf
+++ b/main.nf
@@ -35,18 +35,12 @@ WorkflowMain.initialise(workflow, params, log)
 */
 
 include { HIC } from './workflows/hic'
-include { HICSTUFF } from './workflows/hicstuff'
 
 //
 // WORKFLOW: Run main nf-core/hic analysis pipeline
 //
 workflow NFCORE_HIC {
-    if (params.workflow == "hicpro" ){
-        HIC ()
-    }
-    else if ( params.workflow == "hicstuff") {
-        HICSTUFF ()
-    }
+    HIC ()
 }
 
 /*
diff --git a/subworkflows/local/hicstuff_sub.nf b/subworkflows/local/hicstuff.nf
similarity index 97%
rename from subworkflows/local/hicstuff_sub.nf
rename to subworkflows/local/hicstuff.nf
index b3070d5bfa2726b7683d3cb5d2bed1d266072613..d9c60abaaa47d6d04750c7072305497bcd384367 100644
--- a/subworkflows/local/hicstuff_sub.nf
+++ b/subworkflows/local/hicstuff.nf
@@ -31,7 +31,7 @@ def singleToPair(row){
     return [ meta, row[1] ]
 }
 
-workflow HICSTUFF_SUB {
+workflow HICSTUFF {
 
     take:
     reads
@@ -128,7 +128,6 @@ workflow HICSTUFF_SUB {
         ch_idx_pairs
     )
 
-    HIC_PLOT_MATRIX(
-        BUILD_MATRIX_COOL_ALT.out.matrix
-    )
+    emit:
+    cool = BUILD_MATRIX_COOL_ALT.out.matrix
 }
diff --git a/workflows/hic.nf b/workflows/hic.nf
index 67ccd439ba8a57240f7a70fe08238043c852883f..70c1f8d671574d8da3aadd6710e41fe9eabd7164 100644
--- a/workflows/hic.nf
+++ b/workflows/hic.nf
@@ -109,6 +109,7 @@ include { MULTIQC } from '../modules/local/multiqc'
 //
 include { INPUT_CHECK } from '../subworkflows/local/input_check'
 include { PREPARE_GENOME } from '../subworkflows/local/prepare_genome'
+include { HICSTUFF } from '../subworkflows/local/hicstuff'
 include { HICPRO } from '../subworkflows/local/hicpro'
 include { COOLER } from '../subworkflows/local/cooler'
 include { COMPARTMENTS } from '../subworkflows/local/compartments'
@@ -177,17 +178,18 @@ workflow HIC {
   //
   // SUB-WORFLOW: HiC-Pro
   //
-  INPUT_CHECK.out.reads.view()
-  HICPRO (
-    INPUT_CHECK.out.reads,
-    PREPARE_GENOME.out.index,
-    PREPARE_GENOME.out.res_frag,
-    PREPARE_GENOME.out.chromosome_size,
-    ch_ligation_site,
-    ch_map_res,
-    ch_fasta
-  )
-  ch_versions = ch_versions.mix(HICPRO.out.versions)
+  if (params.workflow == "hicpro"){
+    HICPRO (
+        INPUT_CHECK.out.reads,
+        PREPARE_GENOME.out.index,
+        PREPARE_GENOME.out.res_frag,
+        PREPARE_GENOME.out.chromosome_size,
+        ch_ligation_site,
+        ch_map_res,
+        ch_fasta
+    )
+    ch_mqc = HICPRO.out.mqc
+    ch_versions = ch_versions.mix(HICPRO.out.versions)
 
   //
   // SUB-WORKFLOW: COOLER
@@ -214,13 +216,28 @@ workflow HIC {
     )
     ch_versions = ch_versions.mix(HIC_PLOT_DIST_VS_COUNTS.out.versions)
   }
+  ch_cool = COOLER.out.cool
+}
+
+  else {
+    HICSTUFF(
+        INPUT_CHECK.out.reads,
+        PREPARE_GENOME.out.index,
+        ch_ligation_site,
+        params.digestion, //str enzyme
+        ch_fasta,
+        PREPARE_GENOME.out.chromosome_size
+    )
+    ch_cool = HICSTUFF.out.cool
+    ch_mqc = Channel.empty()
+  }
 
   //
   // MODULE: HICEXPLORER/HIC_PLOT_MATRIX
   //
   if (!params.skip_plot_matrix){
     HIC_PLOT_MATRIX(
-        COOLER.out.cool
+        ch_cool
     )
   ch_versions = ch_versions.mix(HIC_PLOT_MATRIX.out.versions)
   }
@@ -229,7 +246,7 @@ workflow HIC {
   // SUB-WORKFLOW: COMPARTMENT CALLING
   //
   if (!params.skip_compartments){
-    COOLER.out.cool
+    ch_cool
       .combine(ch_comp_res)
       .filter{ it[0].resolution == it[2] }
       .map { it -> [it[0], it[1], it[2]]}
@@ -247,7 +264,7 @@ workflow HIC {
   // SUB-WORKFLOW : TADS CALLING
   //
   if (!params.skip_tads){
-    COOLER.out.cool
+    ch_cool
       .combine(ch_tads_res)
       .filter{ it[0].resolution == it[2] }
       .map { it -> [it[0], it[1]]}
@@ -277,14 +294,14 @@ workflow HIC {
   ch_multiqc_files = ch_multiqc_files.mix(ch_multiqc_custom_config.collect().ifEmpty([]))
   ch_multiqc_files = ch_multiqc_files.mix(ch_workflow_summary.collectFile(name: 'workflow_summary_mqc.yaml'))
   ch_multiqc_files = ch_multiqc_files.mix(FASTQC.out.zip.map{it->it[1]})
-  ch_multiqc_files = ch_multiqc_files.mix(HICPRO.out.mqc)
+  ch_multiqc_files = ch_multiqc_files.mix(ch_mqc)
 
   MULTIQC (
     ch_multiqc_config,
     ch_multiqc_custom_config.collect().ifEmpty([]),
     ch_workflow_summary.collectFile(name: 'workflow_summary_mqc.yaml'),
     FASTQC.out.zip.map{it->it[1]},
-    HICPRO.out.mqc.collect()
+    ch_mqc.collect()
   )
   multiqc_report = MULTIQC.out.report.toList()
 }
diff --git a/workflows/hicstuff.nf b/workflows/hicstuff.nf
deleted file mode 100644
index 8263bd3db82361774f74c84884e373cdc8d51a7c..0000000000000000000000000000000000000000
--- a/workflows/hicstuff.nf
+++ /dev/null
@@ -1,45 +0,0 @@
-def summary_params = NfcoreSchema.paramsSummaryMap(workflow, params)
-// Validate input parameters
-WorkflowHic.initialise(params, log)
-// Check mandatory parameters
-if (params.input) { ch_input = file(params.input) } else { exit 1, 'Input samplesheet not specified!' }
-// Digestion parameters
-if (params.digestion){
-    restriction_site = params.digestion ? params.digest[ params.digestion ].restriction_site ?: false : false
-    ch_restriction_site = Channel.value(restriction_site) //str seq avec ^ pour cut
-    ligation_site = params.digestion ? params.digest[ params.digestion ].ligation_site ?: false : false
-    ch_ligation_site = Channel.value(ligation_site) //str seq
-}else if (params.dnase){
-    ch_restriction_site = Channel.empty()
-    ch_ligation_site = Channel.empty()
-}else{
-    exit 1, "Ligation motif not found. Please either use the `--digestion` parameters or specify the `--restriction_site` and `--ligation_site`. For DNase Hi-C, please use '--dnase' option"
-}
-
-Channel.fromPath( params.fasta )
-    .ifEmpty { exit 1, "Genome index: Fasta file not found: ${params.fasta}" }
-    .map{it->[[:],it]}
-    .set { ch_fasta }
-
-
-include { INPUT_CHECK } from '../subworkflows/local/input_check'
-include { PREPARE_GENOME } from '../subworkflows/local/prepare_genome'
-include { HICSTUFF_SUB } from '../subworkflows/local/hicstuff_sub'
-
-workflow HICSTUFF {
-    INPUT_CHECK (
-        ch_input
-    )
-    PREPARE_GENOME(
-        ch_fasta,
-        ch_restriction_site
-    )
-    HICSTUFF_SUB(
-        INPUT_CHECK.out.reads,
-        PREPARE_GENOME.out.index,
-        ch_ligation_site,
-        params.digestion, //str enzyme
-        ch_fasta,
-        PREPARE_GENOME.out.chromosome_size
-    )
-}