@prefix LoadListingRequirement: <http://commonwl.org/cwltool#LoadListingRequirement/> .
@prefix CommandLineBinding: <https://w3id.org/cwl/cwl#CommandLineBinding/> .
@prefix xsd:   <http://www.w3.org/2001/XMLSchema#> .
@prefix DockerRequirement: <https://w3id.org/cwl/cwl#DockerRequirement/> .
@prefix Workflow: <https://w3id.org/cwl/cwl#Workflow/> .
@prefix sld:   <https://w3id.org/cwl/salad#> .
@prefix rdfs:  <http://www.w3.org/2000/01/rdf-schema#> .
@prefix CommandOutputBinding: <https://w3id.org/cwl/cwl#CommandOutputBinding/> .
@prefix ns1:   <http://commonwl.org/cwltool#> .
@prefix NetworkAccess: <http://commonwl.org/cwltool#NetworkAccess/> .
@prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix cwl:   <https://w3id.org/cwl/cwl#> .
@prefix ResourceRequirement: <https://w3id.org/cwl/cwl#ResourceRequirement/> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/bgzip.cwl>
        a                        cwl:CommandLineTool ;
        rdfs:label               "bgzip VCF" ;
        ns1:original_cwlVersion  "v1.2" ;
        cwl:arguments            ( "-c" ) ;
        cwl:arguments            ( "-c" ) ;
        cwl:baseCommand          ( "/usr/local/bin/bgzip" ) ;
        cwl:baseCommand          ( "/usr/local/bin/bgzip" ) ;
        cwl:cwlVersion           <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/v1.2> ;
        cwl:hints                [ a                            <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/NetworkAccess> ;
                                   NetworkAccess:networkAccess  true
                                 ] ;
        cwl:hints                [ a                            <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/NetworkAccess> ;
                                   NetworkAccess:networkAccess  true
                                 ] ;
        cwl:hints                [ a       <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/LoadListingRequirement> ;
                                   LoadListingRequirement:loadListing
                                           "deep_listing"
                                 ] ;
        cwl:hints                [ a       <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/LoadListingRequirement> ;
                                   LoadListingRequirement:loadListing
                                           "deep_listing"
                                 ] ;
        cwl:inputs               <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/bgzip.cwl#file> ;
        cwl:outputs              <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/bgzip.cwl#bgzipped_file> ;
        cwl:requirements         [ a                             cwl:DockerRequirement ;
                                   DockerRequirement:dockerPull  "quay.io/biocontainers/samtools:1.11--h6270b1f_0"
                                 ] ;
        cwl:requirements         [ a                           cwl:ResourceRequirement ;
                                   ResourceRequirement:ramMin  4000
                                 ] ;
        cwl:requirements         [ a                           cwl:ResourceRequirement ;
                                   ResourceRequirement:ramMin  4000
                                 ] ;
        cwl:requirements         [ a                             cwl:DockerRequirement ;
                                   DockerRequirement:dockerPull  "quay.io/biocontainers/samtools:1.11--h6270b1f_0"
                                 ] ;
        cwl:stdout               "$(inputs.file.basename).gz" .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#reference>
        cwl:secondaryFiles  []  ;
        cwl:secondaryFiles  []  ;
        sld:type            cwl:File , xsd:string .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/index_vcf.cwl#indexed_vcf>
        cwl:outputBinding   [ CommandOutputBinding:glob
                          "$(inputs.vcf.basename)" ] ;
        cwl:outputBinding   [ CommandOutputBinding:glob
                          "$(inputs.vcf.basename)" ] ;
        cwl:secondaryFiles  []  ;
        cwl:secondaryFiles  []  ;
        sld:type            cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/docm_gatk_haplotype_caller.cwl#docm_vcf>
        cwl:inputBinding    [ CommandLineBinding:position
                          4 ] ;
        cwl:secondaryFiles  []  ;
        sld:type            cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#decompose/vcf>
        cwl:source  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#index/indexed_vcf> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/filter_vcf_docm.cwl#normal_bam>
        cwl:inputBinding  [ CommandLineBinding:position
                          -3 ] ;
        sld:type          cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/filter_vcf_docm.cwl#docm_raw_variants>
        cwl:inputBinding  [ CommandLineBinding:position
                          -4 ] ;
        sld:type          cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#interval_list>
        sld:type  cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#bgzip2>
        cwl:in   <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#bgzip2/file> ;
        cwl:out  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#bgzip2/bgzipped_file> ;
        cwl:run  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/bgzip.cwl> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#GATK_haplotype_caller/docm_vcf>
        cwl:source  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#docm_vcf> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#index>
        cwl:in   <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#index/vcf> ;
        cwl:out  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#index/indexed_vcf> ;
        cwl:run  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/index_vcf.cwl> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#GATK_haplotype_caller/reference>
        cwl:source  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#reference> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/filter_vcf_docm.cwl#docm_filtered_variants>
        cwl:outputBinding  [ CommandOutputBinding:glob
                          "docm_filtered_variants.vcf" ] ;
        sld:type           cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#docm_filter>
        cwl:in   <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#docm_filter/docm_raw_variants> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#docm_filter/filter_docm_variants> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#docm_filter/normal_bam> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#docm_filter/tumor_bam> ;
        cwl:out  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#docm_filter/docm_filtered_variants> ;
        cwl:run  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/filter_vcf_docm.cwl> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/filter_vcf_docm.cwl>
        a                        cwl:CommandLineTool ;
        rdfs:label               "Filter variants from the DoCM detector" ;
        ns1:original_cwlVersion  "v1.0" ;
        cwl:arguments            ( "$(runtime.outdir)/docm_filtered_variants.vcf" ) ;
        cwl:baseCommand          ( "/usr/bin/perl" "docm_filter.pl" ) ;
        cwl:cwlVersion           <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/v1.2> ;
        cwl:hints                [ a       <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/LoadListingRequirement> ;
                                   LoadListingRequirement:loadListing
                                           "deep_listing"
                                 ] ;
        cwl:hints                [ a                            <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/NetworkAccess> ;
                                   NetworkAccess:networkAccess  true
                                 ] ;
        cwl:inputs               <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/filter_vcf_docm.cwl#docm_raw_variants> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/filter_vcf_docm.cwl#normal_bam> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/filter_vcf_docm.cwl#tumor_bam> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/filter_vcf_docm.cwl#filter_docm_variants> ;
        cwl:outputs              <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/filter_vcf_docm.cwl#docm_filtered_variants> ;
        cwl:requirements         [ a                           cwl:ResourceRequirement ;
                                   ResourceRequirement:ramMin  4000
                                 ] ;
        cwl:requirements         [ a                             cwl:DockerRequirement ;
                                   DockerRequirement:dockerPull  "mgibio/cle:v1.4.2"
                                 ] ;
        cwl:requirements         [ a            cwl:InitialWorkDirRequirement ;
                                   cwl:listing  [ cwl:entry      "#!/usr/bin/perl\n\nuse strict;\nuse warnings;\n\nuse feature qw(say);\n\ndie(\"Wrong number of arguments. Provide docm_vcf, normal_cram, tumor_cram, output_vcf_file, set_filter_flag\") unless scalar(@ARGV) == 5;\nmy ($docm_vcf, $normal_cram, $tumor_cram, $output_vcf_file, $set_filter_flag) = @ARGV;\n\nmy $samtools = '/opt/samtools/bin/samtools';\nmy $normal_header_str = `$samtools view -H $normal_cram | grep \"^\\@RG\" | head -n 1`;\nmy $tumor_header_str  = `$samtools view -H $tumor_cram | grep \"^\\@RG\" | head -n 1`;\n\nmy ($normal_name) = $normal_header_str =~ /\\@RG.+\\tSM:([ -~]+)/;\nmy ($tumor_name)  = $tumor_header_str =~ /\\@RG.+\\tSM:([ -~]+)/;\n\nunless ($normal_name and $tumor_name) {\n    die \"Failed to get normal_name: $normal_name from $normal_cram AND tumor_name: $tumor_name from $tumor_cram\";\n}\n\nmy $docm_vcf_fh;\nif($docm_vcf =~ /.gz$/){\n    open($docm_vcf_fh, \"gunzip -c $docm_vcf |\") or die(\"couldn't open $docm_vcf to read\");\n} else {\n    open($docm_vcf_fh, $docm_vcf) or die(\"couldn't open $docm_vcf to read\");\n}\nopen(my $docm_out_fh, \">\", \"$output_vcf_file\") or die(\"couldn't open $output_vcf_file for write\");\n\nmy ($normal_index, $tumor_index);\n\nwhile (<$docm_vcf_fh>) {\n    chomp;\n    if (/^##/) {\n        say $docm_out_fh $_;\n    }\n    elsif (/^#CHROM/) {\n        if ($set_filter_flag) {\n            say $docm_out_fh '##FILTER=<ID=DOCM_ONLY,Description=\"ignore Docm variants\">';\n        }\n        my @columns = split /\\t/, $_;\n        my %index = (\n            $columns[9]  => 9,\n            $columns[10] => 10,\n        );\n        ($normal_index, $tumor_index) = map{$index{$_}}($normal_name, $tumor_name);\n        unless ($normal_index and $tumor_index) {\n            die \"Failed to get normal_index: $normal_index for $normal_name AND tumor_index: $tumor_index for $tumor_name\";\n        }\n        $columns[9]  = $normal_name;\n        $columns[10] = $tumor_name;\n        my $header = join \"\\t\", @columns;\n        say $docm_out_fh $header;\n    }\n    else {\n        my @columns = split /\\t/, $_;\n        my @tumor_info = split /:/, $columns[$tumor_index];\n        my ($AD, $DP) = ($tumor_info[1], $tumor_info[2]);\n        next unless $AD;\n        my @AD = split /,/, $AD;\n        shift @AD; #the first one is ref count\n        \n        for my $ad (@AD) {\n            if ($ad > 5 and $ad/$DP > 0.01) {\n                my ($normal_col, $tumor_col) = map{$columns[$_]}($normal_index, $tumor_index);\n                $columns[9]  = $normal_col;\n                $columns[10] = $tumor_col;\n                if ($set_filter_flag) {\n                    $columns[6] = 'DOCM_ONLY';\n                }\n                else {\n                    $columns[6] = '.';\n                }\n                my $new_line = join \"\\t\", @columns;\n                say $docm_out_fh $new_line;\n                last;\n            }\n        }\n    }\n}\n\nclose($docm_vcf_fh);\nclose($docm_out_fh);\n" ;
                                                  cwl:entryname  "docm_filter.pl"
                                                ]
                                 ] ;
        cwl:requirements         [ a  cwl:StepInputExpressionRequirement ] .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#bgzip2/file>
        cwl:source  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#docm_filter/docm_filtered_variants> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#GATK_haplotype_caller/bam>
        cwl:source  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#tumor_bam> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#index2>
        cwl:in   <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#index2/vcf> ;
        cwl:out  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#index2/indexed_vcf> ;
        cwl:run  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/index_vcf.cwl> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#decompose>
        cwl:in   <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#decompose/vcf> ;
        cwl:out  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#decompose/decomposed_vcf> ;
        cwl:run  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/vt_decompose.cwl> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#GATK_haplotype_caller/interval_list>
        cwl:source  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#interval_list> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#index2/vcf>
        cwl:source  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#bgzip2/bgzipped_file> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/docm_gatk_haplotype_caller.cwl#normal_bam>
        cwl:inputBinding    [ CommandLineBinding:position
                          2 ] ;
        cwl:secondaryFiles  []  ;
        sld:type            cwl:File , sld:null .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#GATK_haplotype_caller/normal_bam>
        cwl:source  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#normal_bam> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/docm_gatk_haplotype_caller.cwl#docm_raw_variants>
        cwl:outputBinding  [ CommandOutputBinding:glob
                          "docm_raw_variants.vcf" ] ;
        sld:type           cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/filter_vcf_docm.cwl#filter_docm_variants>
        cwl:inputBinding  [ CommandLineBinding:position  1 ;
                            cwl:valueFrom                "${\n  if(inputs.filter_docm_variants){\n    return \"1\";\n  } else {\n    return \"0\";\n  }\n}\n"
                          ] ;
        sld:type          xsd:boolean .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/bgzip.cwl#bgzipped_file>
        cwl:outputBinding  [ CommandOutputBinding:glob
                          "$(inputs.file.basename).gz" ] ;
        cwl:outputBinding  [ CommandOutputBinding:glob
                          "$(inputs.file.basename).gz" ] ;
        sld:type           cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#docm_filter/tumor_bam>
        cwl:source  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#tumor_bam> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#index/vcf>
        cwl:source  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#bgzip/bgzipped_file> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#bgzip>
        cwl:in   <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#bgzip/file> ;
        cwl:out  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#bgzip/bgzipped_file> ;
        cwl:run  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/bgzip.cwl> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#docm_filter/filter_docm_variants>
        cwl:source  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#filter_docm_variants> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#docm_filter/normal_bam>
        cwl:source  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#normal_bam> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/docm_gatk_haplotype_caller.cwl#bam>
        cwl:inputBinding    [ CommandLineBinding:position
                          3 ] ;
        cwl:secondaryFiles  []  ;
        sld:type            cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/vt_decompose.cwl#vcf>
        cwl:inputBinding    [ CommandLineBinding:position
                          1 ] ;
        cwl:secondaryFiles  []  ;
        sld:type            cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#filter_docm_variants>
        sld:type  xsd:boolean .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/vt_decompose.cwl>
        a                        cwl:CommandLineTool ;
        rdfs:label               "run vt decompose" ;
        ns1:original_cwlVersion  "v1.0" ;
        cwl:arguments            ( "-s" "-o"
                                   [ cwl:valueFrom  "$(runtime.outdir)/decomposed.vcf.gz" ]
                                 ) ;
        cwl:baseCommand          ( "vt" "decompose" ) ;
        cwl:cwlVersion           <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/v1.2> ;
        cwl:hints                [ a                            <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/NetworkAccess> ;
                                   NetworkAccess:networkAccess  true
                                 ] ;
        cwl:hints                [ a       <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/LoadListingRequirement> ;
                                   LoadListingRequirement:loadListing
                                           "deep_listing"
                                 ] ;
        cwl:inputs               <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/vt_decompose.cwl#vcf> ;
        cwl:outputs              <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/vt_decompose.cwl#decomposed_vcf> ;
        cwl:requirements         [ a                             cwl:DockerRequirement ;
                                   DockerRequirement:dockerPull  "quay.io/biocontainers/vt:0.57721--hf74b74d_1"
                                 ] ;
        cwl:requirements         [ a                           cwl:ResourceRequirement ;
                                   ResourceRequirement:ramMin  4000
                                 ] .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#docm_vcf>
        cwl:secondaryFiles  []  ;
        sld:type            cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#bgzip/file>
        cwl:source  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#GATK_haplotype_caller/docm_raw_variants> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/docm_gatk_haplotype_caller.cwl>
        a                        cwl:CommandLineTool ;
        rdfs:label               "HaplotypeCaller (GATK4)" ;
        ns1:original_cwlVersion  "v1.0" ;
        cwl:baseCommand          ( "/bin/bash" "docm_haplotypeCaller.sh" ) ;
        cwl:cwlVersion           <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/v1.2> ;
        cwl:hints                [ a       <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/LoadListingRequirement> ;
                                   LoadListingRequirement:loadListing
                                           "deep_listing"
                                 ] ;
        cwl:hints                [ a                            <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/NetworkAccess> ;
                                   NetworkAccess:networkAccess  true
                                 ] ;
        cwl:inputs               <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/docm_gatk_haplotype_caller.cwl#docm_vcf> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/docm_gatk_haplotype_caller.cwl#interval_list> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/docm_gatk_haplotype_caller.cwl#normal_bam> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/docm_gatk_haplotype_caller.cwl#reference> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/docm_gatk_haplotype_caller.cwl#bam> ;
        cwl:outputs              <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/docm_gatk_haplotype_caller.cwl#docm_raw_variants> ;
        cwl:requirements         [ a                             cwl:DockerRequirement ;
                                   DockerRequirement:dockerPull  "broadinstitute/gatk:4.1.2.0"
                                 ] ;
        cwl:requirements         [ a            cwl:InitialWorkDirRequirement ;
                                   cwl:listing  [ cwl:entry      "set -o pipefail\nset -o errexit\n\n# Running haplotype caller using the newly created interval list\nif [[ \"$#\" == 5 ]];then # If normal_bam is passed.\n    # explicitly capturing variables\n    reference=$1\n    normal_bam=$2\n    tumor_bam=$3\n    docm_vcf=$4\n    interval_list=$5\n    # Chaning the interval_list to a new docm_interval_list that spans the docm regions by 200bp\n    cat $interval_list | grep '^@' > docm.interval_list # Extracting the header from the interval_list\n    zcat $docm_vcf | grep ^chr | awk '{FS = \"\\t\";OFS = \"\\t\";print $1,$2-100,$2+100,\"+\",$1\"_\"$2-100\"_\"$2+100}' >> docm.interval_list # Extracting the docm regions with a 100bp flanking region on both directions\n    /gatk/gatk HaplotypeCaller --java-options \"-Xmx8g\" -R $reference -I $normal_bam -I $tumor_bam --alleles $docm_vcf -L docm.interval_list --genotyping-mode GENOTYPE_GIVEN_ALLELES -O docm_raw_variants.vcf\nelse # If normal_bam is not passed\n    reference=$1\n    tumor_bam=$2\n    docm_vcf=$3\n    interval_list=$4\n    # Chaning the interval_list to a new docm_interval_list that spans the docm regions by 200bp\n    cat $interval_list | grep '^@' > docm.interval_list # Extracting the header from the interval_list\n    zcat $docm_vcf | grep ^chr | awk '{FS = \"\\t\";OFS = \"\\t\";print $1,$2-100,$2+100,\"+\",$1\"_\"$2-100\"_\"$2+100}' >> docm.interval_list # Extracting the docm regions with a 100bp flanking region on both directions\n    /gatk/gatk HaplotypeCaller --java-options \"-Xmx8g\" -R $reference -I $tumor_bam --alleles $docm_vcf -L docm.interval_list --genotyping-mode GENOTYPE_GIVEN_ALLELES -O docm_raw_variants.vcf\nfi\n" ;
                                                  cwl:entryname  "docm_haplotypeCaller.sh"
                                                ]
                                 ] ;
        cwl:requirements         [ a                           cwl:ResourceRequirement ;
                                   ResourceRequirement:ramMin  9000
                                 ] .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl>
        a                        cwl:Workflow ;
        rdfs:label               "Detect Docm variants" ;
        ns1:original_cwlVersion  "v1.0" ;
        Workflow:steps           <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#GATK_haplotype_caller> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#bgzip2> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#decompose> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#index> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#bgzip> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#index2> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#docm_filter> ;
        cwl:cwlVersion           <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/v1.2> ;
        cwl:hints                [ a                            <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/NetworkAccess> ;
                                   NetworkAccess:networkAccess  true
                                 ] ;
        cwl:hints                [ a       <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/LoadListingRequirement> ;
                                   LoadListingRequirement:loadListing
                                           "deep_listing"
                                 ] ;
        cwl:inputs               <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#filter_docm_variants> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#reference> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#interval_list> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#tumor_bam> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#normal_bam> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#docm_vcf> ;
        cwl:outputs              <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#docm_variants_vcf> ;
        cwl:requirements         [ a  cwl:SubworkflowFeatureRequirement ] .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/docm_gatk_haplotype_caller.cwl#interval_list>
        cwl:inputBinding  [ CommandLineBinding:position
                          5 ] ;
        sld:type          cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/bgzip.cwl#file>
        cwl:inputBinding  [ CommandLineBinding:position
                          1 ] ;
        cwl:inputBinding  [ CommandLineBinding:position
                          1 ] ;
        sld:type          cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#docm_variants_vcf>
        cwl:outputSource    <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#index2/indexed_vcf> ;
        cwl:secondaryFiles  []  ;
        sld:type            cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#tumor_bam>
        cwl:secondaryFiles  []  ;
        sld:type            cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/index_vcf.cwl#vcf>
        cwl:inputBinding  [ CommandLineBinding:position  1 ;
                            cwl:valueFrom                "$(self.basename)"
                          ] ;
        cwl:inputBinding  [ CommandLineBinding:position  1 ;
                            cwl:valueFrom                "$(self.basename)"
                          ] ;
        sld:type          cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/filter_vcf_docm.cwl#tumor_bam>
        cwl:inputBinding  [ CommandLineBinding:position
                          -2 ] ;
        sld:type          cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#GATK_haplotype_caller>
        cwl:in   <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#GATK_haplotype_caller/normal_bam> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#GATK_haplotype_caller/interval_list> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#GATK_haplotype_caller/bam> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#GATK_haplotype_caller/reference> , <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#GATK_haplotype_caller/docm_vcf> ;
        cwl:out  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#GATK_haplotype_caller/docm_raw_variants> ;
        cwl:run  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/docm_gatk_haplotype_caller.cwl> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#docm_filter/docm_raw_variants>
        cwl:source  <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#decompose/decomposed_vcf> .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/subworkflows/docm_cle.cwl#normal_bam>
        cwl:secondaryFiles  []  ;
        sld:type            cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/vt_decompose.cwl#decomposed_vcf>
        cwl:outputBinding  [ CommandOutputBinding:glob
                          "decomposed.vcf.gz" ] ;
        sld:type           cwl:File .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/docm_gatk_haplotype_caller.cwl#reference>
        cwl:inputBinding    [ CommandLineBinding:position
                          1 ] ;
        cwl:secondaryFiles  []  ;
        cwl:secondaryFiles  []  ;
        sld:type            cwl:File , xsd:string .

<https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/index_vcf.cwl>
        a                        cwl:CommandLineTool ;
        rdfs:label               "vcf index" ;
        ns1:original_cwlVersion  "v1.2" ;
        cwl:arguments            ( "cp" "$(inputs.vcf.path)" "$(runtime.outdir)/$(inputs.vcf.basename)"
                                   [ CommandLineBinding:shellQuote  false ;
                                     cwl:valueFrom                  " && "
                                   ]
                                   "/usr/local/bin/tabix" "-p" "vcf"
                                 ) ;
        cwl:arguments            ( "cp" "$(inputs.vcf.path)" "$(runtime.outdir)/$(inputs.vcf.basename)"
                                   [ CommandLineBinding:shellQuote  false ;
                                     cwl:valueFrom                  " && "
                                   ]
                                   "/usr/local/bin/tabix" "-p" "vcf"
                                 ) ;
        cwl:cwlVersion           <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/v1.2> ;
        cwl:hints                [ a                            <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/NetworkAccess> ;
                                   NetworkAccess:networkAccess  true
                                 ] ;
        cwl:hints                [ a                            <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/NetworkAccess> ;
                                   NetworkAccess:networkAccess  true
                                 ] ;
        cwl:hints                [ a       <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/LoadListingRequirement> ;
                                   LoadListingRequirement:loadListing
                                           "deep_listing"
                                 ] ;
        cwl:hints                [ a       <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/LoadListingRequirement> ;
                                   LoadListingRequirement:loadListing
                                           "deep_listing"
                                 ] ;
        cwl:inputs               <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/index_vcf.cwl#vcf> ;
        cwl:outputs              <https://w3id.org/cwl/view/git/e7e888df9e7d44f036c4c7985e474016ee9e6525/definitions/tools/index_vcf.cwl#indexed_vcf> ;
        cwl:requirements         [ a  cwl:ShellCommandRequirement ] ;
        cwl:requirements         [ a                             cwl:DockerRequirement ;
                                   DockerRequirement:dockerPull  "quay.io/biocontainers/samtools:1.11--h6270b1f_0"
                                 ] ;
        cwl:requirements         [ a  cwl:StepInputExpressionRequirement ] ;
        cwl:requirements         [ a  cwl:ShellCommandRequirement ] ;
        cwl:requirements         [ a                           cwl:ResourceRequirement ;
                                   ResourceRequirement:ramMin  4000
                                 ] ;
        cwl:requirements         [ a                             cwl:DockerRequirement ;
                                   DockerRequirement:dockerPull  "quay.io/biocontainers/samtools:1.11--h6270b1f_0"
                                 ] ;
        cwl:requirements         [ a                           cwl:ResourceRequirement ;
                                   ResourceRequirement:ramMin  4000
                                 ] ;
        cwl:requirements         [ a  cwl:StepInputExpressionRequirement ] .
