diff --git a/modif b/modif
new file mode 100644
index 0000000000000000000000000000000000000000..68d4db483a3d8f917eda6ccb236bb7d728b4dd31
--- /dev/null
+++ b/modif
@@ -0,0 +1,7 @@
+FASTP
+
+Change of --qualified_quality_phred 20 to --qualified_quality_phred 30 in fastp process made by Laurent
+
+KB
+
+Add parameter to allow the user to change the 10X chemistery version
diff --git a/src/dev_scan10.nf b/src/dev_scan10.nf
index 40c201b6d86eba7d62d89811ba6f1a1883260241..cac4aec855bd4899ed8d3d9c400ab3734a37a906 100644
--- a/src/dev_scan10.nf
+++ b/src/dev_scan10.nf
@@ -261,8 +261,63 @@ workflow {
 
 //////////// Sub Workflow
 /*
+workflow CR_analysis_mkgtf_skip{
+take:
+    fastq_files
+	fasta_files
+	gtf_files
+
+main:
+
+    			fastp(fastq_files)
+                cellranger_mkgtf(gtf_files)
+                cellranger_mkref(fasta_files,cellranger_mkgtf.out.filtered_gtf)
+				cellranger_count(fastp.out.fastq,cellranger_mkref.out.index.collect())
+                r_cr_QC(cellranger_count.out.counts)
+                normalization_sanity(r_cr_QC.out.raw_filtered_mtx)
+
+emit:
+		trimmed_fastq = fastp.out.fastq
+		filtered_gtf=cellranger_mkgtf.out.filtered_gtf
+		cellranger_index=cellranger_mkref.out.index
+		cellranger_counts=cellranger_count.out.counts
+		cellranger_report=cellranger_count.out.report
+		seu_filtered = r_cr_QC.out.seu_obj
+		filtered_matrix = r_cr_QC.out.raw_filtered_mtx
+		normalized_matrix = normalization_sanity.out.normalize_filtered_mtx
 
 
+}
+
+workflow CR_analysis_mkgtf{
+take:
+    fastq_files
+	fasta_files
+	gtf_files
+
+main:
+
+    			fastp(fastq_files)
+                cellranger_mkgtf(gtf_files)
+                cellranger_mkref(fasta_files,cellranger_mkgtf.out.filtered_gtf)
+				cellranger_count(fastp.out.fastq,cellranger_mkref.out.index.collect())
+                r_cr_QC(cellranger_count.out.counts)
+                normalization_sanity(r_cr_QC.out.raw_filtered_mtx)
+				rviz(normalization_sanity.out.normalize_filtered_mtx,r_cr_QC.out.seu_obj)
+
+emit:
+		trimmed_fastq = fastp.out.fastq
+		filtered_gtf=cellranger_mkgtf.out.filtered_gtf
+		cellranger_index=cellranger_mkref.out.index
+		cellranger_counts=cellranger_count.out.counts
+		cellranger_report=cellranger_count.out.report
+		seu_filtered = r_cr_QC.out.seu_obj
+		filtered_matrix = r_cr_QC.out.raw_filtered_mtx
+		normalized_matrix = normalization_sanity.out.normalize_filtered_mtx
+		seu_obj_final = rviz.out.seu_filt_nor_obj
+
+
+}
 
 workflow CR_QC{
 
@@ -298,7 +353,7 @@ workflow CR_QC_skip{
                 
 }
 
-
+// All the analysis with cellranger
 workflow CR_analysis{
 take:
     fastq_files
diff --git a/src/nf_modules/fastp/main.nf b/src/nf_modules/fastp/main.nf
index 45ee8f9b6c593a6bd008eb40e6de4a71800296db..b10ed3a54d4d71917700fedce4157310b8ff28f6 100644
--- a/src/nf_modules/fastp/main.nf
+++ b/src/nf_modules/fastp/main.nf
@@ -59,7 +59,7 @@ publishDir "results/fastp_out", mode: 'copy'
   if (reads.size() == 2)
   """
   fastp --thread ${task.cpus} \
-    --qualified_quality_phred 20 \
+    --qualified_quality_phred 30 \
     --disable_length_filtering \
     --detect_adapter_for_pe \
     ${params.fastp} \
@@ -74,7 +74,7 @@ publishDir "results/fastp_out", mode: 'copy'
   else
   """
   fastp --thread ${task.cpus} \
-    --qualified_quality_phred 20 \
+    --qualified_quality_phred 30 \
     --disable_length_filtering \
     --detect_adapter_for_pe \
     ${params.fastp} \
diff --git a/src/nf_modules/kb/main.nf b/src/nf_modules/kb/main.nf
index e5ea0c66d3b47f27035bf5c1fb9daac720131b3c..1e6ecf50a7154d84e1341055c8c57b57552626ce 100644
--- a/src/nf_modules/kb/main.nf
+++ b/src/nf_modules/kb/main.nf
@@ -136,6 +136,8 @@ workflow count {
     report = res_report
 }
 
+params.version_chemistery=""
+
 process kb_default {
   container = "${container_url}"
   label "big_mem_multi_cpus"
@@ -183,7 +185,7 @@ publishDir "results/kb_out", mode: 'copy'
     -g ${transcript_to_gene} \
     -o ${file_prefix} \
     ${whitelist_param} \
-    -x 10XV3 \
+    -x ${params.version_chemistery} \
     --h5ad \
     ${params.count} \
     ${reads[0]} ${reads[1]} > ${file_prefix}_kb_mapping_report.txt
@@ -343,6 +345,7 @@ workflow count_velocity {
     report = res_report
 }
 
+
 process velocity_default {
   container = "${container_url}"
   label "big_mem_multi_cpus"
@@ -385,7 +388,7 @@ process velocity_default {
     -c2 ${intron_t2g} \
     --workflow lamanno \
     ${whitelist_param} \
-    -x 10XV3 \
+    -x ${params.version_chemistery} \
     --h5ad \
     --mm \
     ${params.count} \
diff --git a/src/scan10.nf b/src/scan10.nf
index 7e3f5392713d5d542e6b1a6efdd17f8dab30c00e..44f88e4c84a6af1fb65a9f79afa470d8be9651c7 100644
--- a/src/scan10.nf
+++ b/src/scan10.nf
@@ -10,7 +10,7 @@ log.info scan10Header()
 
 params.fastq = ""
 params.transcript_to_gene = ""
-params.whitelist = "./data/whitelist_10X/10x_V3_barcode_whitelist.txt"
+params.chemistery="V3"
 params.config = ""
 params.nexp=0.023
 params.cp=10
@@ -28,14 +28,18 @@ params.fasta=""
 params.gtf=""
 params.vis="umap"
 
+whitelist = "./data/whitelist_10X/10x_${params.chemistery}_barcode_whitelist.txt"
+kb_chemistery= "10X${params.chemistery}"
+
+
 
 
 include {tr2g} from "./nf_modules/r_tr2g/main.nf"
-include {index_default;count } from "./nf_modules/kb/main.nf"
+include {index_default;count;index_fasta_velocity_default;velocity_default } from "./nf_modules/kb/main.nf" addParams(version_chemistery:kb_chemistery)
 include {r_cr_QC } from "./nf_modules/r_cr_QC/main.nf"  addParams(mit: params.mit,nfeature_min: params.min_feature, min_cells:params.min_cells,min_feature:params.min_feature, nfeature_max: params.nfeature_max, ncount_min: params.ncount)
 include {normalization_sanity } from "./nf_modules/sanity/main.nf"
 include {rviz } from "./nf_modules/rvisualization/main.nf"  addParams(cp: params.cp, reso: params.reso,vis: params.vis)
-include { fastp } from "./nf_modules/fastp/main.nf" addParams( qualified_quality_phred: 30)
+include { fastp } from "./nf_modules/fastp/main.nf" 
 include {r_kb_QC } from "./nf_modules/r_kb_QC/main.nf"  addParams(mit: params.mit,nfeature_min: params.min_feature,min_cells:params.min_cells,min_feature:params.min_feature, nfeature_max: params.nfeature_max, ncount_min: params.ncount)
 include {cellranger_mkgtf;cellranger_mkref;cellranger_count } from "./nf_modules/cellranger/main.nf"
 
@@ -106,15 +110,11 @@ else  {
 
 
 
-if (params.whitelist == "") {
-  channel.empty()
-    .set { whitelist_files }
-} else {
-  channel
-    .fromPath( params.whitelist )
-    .map { it -> [it.simpleName, it]}
-    .set { whitelist_files }
-}
+Channel
+.fromPath( whitelist )
+.map { it -> [it.simpleName, it]}
+.set { whitelist_files }
+
 
 if (params.config == "") {
   channel.empty()
@@ -130,7 +130,7 @@ if (params.config == "") {
 
  
 log.info "fastq files (--fastq): ${params.fastq}"
-log.info "whitelist file (--whitelist): ${params.whitelist}"
+log.info "whitelist file (--whitelist): ${whitelist}"
 log.info "% of Mitochondrial counts  maximum in a cell (--mit): ${params.mit}"
 log.info "Number of feature maximum in a cell cutoff (--nfeature_max): ${params.nfeature_max}"
 log.info "N doublet expect  (--nexp): ${params.nexp}"