1 Description

This notebook will download raw sRNA-seq FastQs, concatenate them (there were multiple lanes run), and then assess with FastQC and MultiQC (Ewels et al. 2016).

1.1 Inputs

Raw FastQ files with the following pattern:

  • *.fastq.gz

1.2 Outputs

The expected outputs will be:

  • *.fastq.gz: Concatenated FastQ files.

  • *.fastqc.html: FastQC results, in HTML format.

  • multiqc_report.html: A summary report of the alignment results generated by MultiQC, in HTML format.

Due to large file sizes of FastQs, they cannot be added to GitHub. Full output from this notebook are available here:

2 Create a Bash variables file

This allows usage of Bash variables across R Markdown chunks.

{
echo "#### Assign Variables ####"
echo ""

echo "# Data directories"
echo 'export repo_dir=/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa'
echo 'export output_dir_top=${repo_dir}/output/00.00-fastqc-concatenation-raw_reads'
echo 'export raw_reads_url="https://owl.fish.washington.edu/nightingales/R_philippinarum/"'
echo 'export raw_reads_dir="${repo_dir}/data/raw_reads"'
echo 'export project_dir_1="30-1035633055"'
echo 'export project_dir_2="30-1035633055-TS01"'
echo ""

echo "# Paths to programs"
echo 'export programs_dir="/home/shared"'
echo 'export fastqc="${programs_dir}/FastQC-0.12.1/fastqc"'
echo 'export multiqc="/home/sam/programs/mambaforge/bin/multiqc"'
echo ""


echo "# Set FastQ filename patterns"
echo "export fastq_pattern='*.fastq.gz'"
echo "export R1_fastq_pattern='*_R1_*.fastq.gz'"
echo "export R2_fastq_pattern='*_R2_*.fastq.gz'"
echo ""

echo "# Set number of CPUs to use"
echo 'export threads=40'
echo ""


echo "## Inititalize arrays"
echo 'export fastq_array_R1=()'
echo 'export fastq_array_R2=()'
echo 'export trimmed_fastqs_array=()'
echo 'export R1_names_array=()'
echo 'export R2_names_array=()'
echo ""

echo "# Print formatting"
echo 'export line="--------------------------------------------------------"'
echo ""
} > .bashvars

cat .bashvars
#### Assign Variables ####

# Data directories
export repo_dir=/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa
export output_dir_top=${repo_dir}/output/00.00-fastqc-concatenation-raw_reads
export raw_reads_url="https://owl.fish.washington.edu/nightingales/R_philippinarum/"
export raw_reads_dir="${repo_dir}/data/raw_reads"
export project_dir_1="30-1035633055"
export project_dir_2="30-1035633055-TS01"

# Paths to programs
export programs_dir="/home/shared"
export fastqc="${programs_dir}/FastQC-0.12.1/fastqc"
export multiqc="/home/sam/programs/mambaforge/bin/multiqc"

# Set FastQ filename patterns
export fastq_pattern='*.fastq.gz'
export R1_fastq_pattern='*_R1_*.fastq.gz'
export R2_fastq_pattern='*_R2_*.fastq.gz'

# Set number of CPUs to use
export threads=40

## Inititalize arrays
export fastq_array_R1=()
export fastq_array_R2=()
export trimmed_fastqs_array=()
export R1_names_array=()
export R2_names_array=()

# Print formatting
export line="--------------------------------------------------------"

3 Download raw reads

The --cut-dirs 3 command cuts the preceding directory structure (i.e. R_philippinarum/30-1035633055/) so that we just end up with the reads.


# Load bash variables into memory
source .bashvars

# Create directory, if it doesn't exist
mkdir --parents \
${raw_reads_dir}/${project_dir_1} \
${raw_reads_dir}/${project_dir_2}

for directory in ${raw_reads_dir}/${project_dir_1} ${raw_reads_dir}/${project_dir_2}
do
  wget \
  --directory-prefix ${directory} \
  --recursive \
  --no-check-certificate \
  --continue \
  --cut-dirs 3 \
  --no-parent \
  --no-host-directories \
  --quiet \
  ${raw_reads_url}
  
  # Remove extraneous indext files
  rm ${raw_reads_dir}/${project_dir_1}/index*
  rm ${raw_reads_dir}/${project_dir_2}/index*
done

3.1 Overview of downloads

# Load bash variables into memory
source .bashvars

tree --du -h "${raw_reads_dir}"
/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
├── [ 28G]  30-1035633055
│   ├── [898M]  196_R1_001.fastq.gz
│   ├── [  56]  196_R1_001.fastq.gz.md5
│   ├── [617M]  196_R2_001.fastq.gz
│   ├── [  56]  196_R2_001.fastq.gz.md5
│   ├── [722M]  199_R1_001.fastq.gz
│   ├── [  56]  199_R1_001.fastq.gz.md5
│   ├── [481M]  199_R2_001.fastq.gz
│   ├── [  56]  199_R2_001.fastq.gz.md5
│   ├── [778M]  211_R1_001.fastq.gz
│   ├── [  56]  211_R1_001.fastq.gz.md5
│   ├── [508M]  211_R2_001.fastq.gz
│   ├── [  56]  211_R2_001.fastq.gz.md5
│   ├── [753M]  24_R1_001.fastq.gz
│   ├── [  55]  24_R1_001.fastq.gz.md5
│   ├── [535M]  24_R2_001.fastq.gz
│   ├── [  55]  24_R2_001.fastq.gz.md5
│   ├── [798M]  260_R1_001.fastq.gz
│   ├── [  56]  260_R1_001.fastq.gz.md5
│   ├── [544M]  260_R2_001.fastq.gz
│   ├── [  56]  260_R2_001.fastq.gz.md5
│   ├── [788M]  26_R1_001.fastq.gz
│   ├── [  55]  26_R1_001.fastq.gz.md5
│   ├── [507M]  26_R2_001.fastq.gz
│   ├── [  55]  26_R2_001.fastq.gz.md5
│   ├── [837M]  30_R1_001.fastq.gz
│   ├── [  55]  30_R1_001.fastq.gz.md5
│   ├── [562M]  30_R2_001.fastq.gz
│   ├── [  55]  30_R2_001.fastq.gz.md5
│   ├── [792M]  310_R1_001.fastq.gz
│   ├── [  56]  310_R1_001.fastq.gz.md5
│   ├── [554M]  310_R2_001.fastq.gz
│   ├── [  56]  310_R2_001.fastq.gz.md5
│   ├── [801M]  33_R1_001.fastq.gz
│   ├── [  55]  33_R1_001.fastq.gz.md5
│   ├── [561M]  33_R2_001.fastq.gz
│   ├── [  55]  33_R2_001.fastq.gz.md5
│   ├── [832M]  341_R1_001.fastq.gz
│   ├── [  56]  341_R1_001.fastq.gz.md5
│   ├── [555M]  341_R2_001.fastq.gz
│   ├── [  56]  341_R2_001.fastq.gz.md5
│   ├── [900M]  34_R1_001.fastq.gz
│   ├── [  55]  34_R1_001.fastq.gz.md5
│   ├── [640M]  34_R2_001.fastq.gz
│   ├── [  55]  34_R2_001.fastq.gz.md5
│   ├── [766M]  35_R1_001.fastq.gz
│   ├── [  55]  35_R1_001.fastq.gz.md5
│   ├── [497M]  35_R2_001.fastq.gz
│   ├── [  55]  35_R2_001.fastq.gz.md5
│   ├── [855M]  363_R1_001.fastq.gz
│   ├── [  56]  363_R1_001.fastq.gz.md5
│   ├── [591M]  363_R2_001.fastq.gz
│   ├── [  56]  363_R2_001.fastq.gz.md5
│   ├── [825M]  367_R1_001.fastq.gz
│   ├── [  56]  367_R1_001.fastq.gz.md5
│   ├── [541M]  367_R2_001.fastq.gz
│   ├── [  56]  367_R2_001.fastq.gz.md5
│   ├── [1.4G]  376_R1_001.fastq.gz
│   ├── [  56]  376_R1_001.fastq.gz.md5
│   ├── [1016M]  376_R2_001.fastq.gz
│   ├── [  56]  376_R2_001.fastq.gz.md5
│   ├── [798M]  460_R1_001.fastq.gz
│   ├── [  56]  460_R1_001.fastq.gz.md5
│   ├── [535M]  460_R2_001.fastq.gz
│   ├── [  56]  460_R2_001.fastq.gz.md5
│   ├── [814M]  485_R1_001.fastq.gz
│   ├── [  56]  485_R1_001.fastq.gz.md5
│   ├── [550M]  485_R2_001.fastq.gz
│   ├── [  56]  485_R2_001.fastq.gz.md5
│   ├── [886M]  501_R1_001.fastq.gz
│   ├── [  56]  501_R1_001.fastq.gz.md5
│   ├── [598M]  501_R2_001.fastq.gz
│   ├── [  56]  501_R2_001.fastq.gz.md5
│   ├── [946M]  71_R1_001.fastq.gz
│   ├── [  55]  71_R1_001.fastq.gz.md5
│   ├── [619M]  71_R2_001.fastq.gz
│   ├── [  55]  71_R2_001.fastq.gz.md5
│   ├── [939M]  88_R1_001.fastq.gz
│   ├── [  55]  88_R1_001.fastq.gz.md5
│   ├── [645M]  88_R2_001.fastq.gz
│   ├── [  55]  88_R2_001.fastq.gz.md5
│   └── [585K]  Azenta_30-1035633055_Data_Report.html
└── [5.5G]  30-1035633055-TS01
    ├── [175M]  196_R1_001.fastq.gz
    ├── [  56]  196_R1_001.fastq.gz.md5
    ├── [123M]  196_R2_001.fastq.gz
    ├── [  56]  196_R2_001.fastq.gz.md5
    ├── [137M]  199_R1_001.fastq.gz
    ├── [  56]  199_R1_001.fastq.gz.md5
    ├── [ 93M]  199_R2_001.fastq.gz
    ├── [  56]  199_R2_001.fastq.gz.md5
    ├── [148M]  211_R1_001.fastq.gz
    ├── [  56]  211_R1_001.fastq.gz.md5
    ├── [ 99M]  211_R2_001.fastq.gz
    ├── [  56]  211_R2_001.fastq.gz.md5
    ├── [146M]  24_R1_001.fastq.gz
    ├── [  55]  24_R1_001.fastq.gz.md5
    ├── [107M]  24_R2_001.fastq.gz
    ├── [  55]  24_R2_001.fastq.gz.md5
    ├── [157M]  260_R1_001.fastq.gz
    ├── [  56]  260_R1_001.fastq.gz.md5
    ├── [109M]  260_R2_001.fastq.gz
    ├── [  56]  260_R2_001.fastq.gz.md5
    ├── [155M]  26_R1_001.fastq.gz
    ├── [  55]  26_R1_001.fastq.gz.md5
    ├── [100M]  26_R2_001.fastq.gz
    ├── [  55]  26_R2_001.fastq.gz.md5
    ├── [163M]  30_R1_001.fastq.gz
    ├── [  55]  30_R1_001.fastq.gz.md5
    ├── [114M]  30_R2_001.fastq.gz
    ├── [  55]  30_R2_001.fastq.gz.md5
    ├── [151M]  310_R1_001.fastq.gz
    ├── [  56]  310_R1_001.fastq.gz.md5
    ├── [109M]  310_R2_001.fastq.gz
    ├── [  56]  310_R2_001.fastq.gz.md5
    ├── [154M]  33_R1_001.fastq.gz
    ├── [  55]  33_R1_001.fastq.gz.md5
    ├── [110M]  33_R2_001.fastq.gz
    ├── [  55]  33_R2_001.fastq.gz.md5
    ├── [161M]  341_R1_001.fastq.gz
    ├── [  56]  341_R1_001.fastq.gz.md5
    ├── [109M]  341_R2_001.fastq.gz
    ├── [  56]  341_R2_001.fastq.gz.md5
    ├── [179M]  34_R1_001.fastq.gz
    ├── [  55]  34_R1_001.fastq.gz.md5
    ├── [128M]  34_R2_001.fastq.gz
    ├── [  55]  34_R2_001.fastq.gz.md5
    ├── [148M]  35_R1_001.fastq.gz
    ├── [  55]  35_R1_001.fastq.gz.md5
    ├── [ 99M]  35_R2_001.fastq.gz
    ├── [  55]  35_R2_001.fastq.gz.md5
    ├── [165M]  363_R1_001.fastq.gz
    ├── [  56]  363_R1_001.fastq.gz.md5
    ├── [116M]  363_R2_001.fastq.gz
    ├── [  56]  363_R2_001.fastq.gz.md5
    ├── [159M]  367_R1_001.fastq.gz
    ├── [  56]  367_R1_001.fastq.gz.md5
    ├── [107M]  367_R2_001.fastq.gz
    ├── [  56]  367_R2_001.fastq.gz.md5
    ├── [290M]  376_R1_001.fastq.gz
    ├── [  56]  376_R1_001.fastq.gz.md5
    ├── [203M]  376_R2_001.fastq.gz
    ├── [  56]  376_R2_001.fastq.gz.md5
    ├── [153M]  460_R1_001.fastq.gz
    ├── [  56]  460_R1_001.fastq.gz.md5
    ├── [106M]  460_R2_001.fastq.gz
    ├── [  56]  460_R2_001.fastq.gz.md5
    ├── [160M]  485_R1_001.fastq.gz
    ├── [  56]  485_R1_001.fastq.gz.md5
    ├── [111M]  485_R2_001.fastq.gz
    ├── [  56]  485_R2_001.fastq.gz.md5
    ├── [176M]  501_R1_001.fastq.gz
    ├── [  56]  501_R1_001.fastq.gz.md5
    ├── [122M]  501_R2_001.fastq.gz
    ├── [  56]  501_R2_001.fastq.gz.md5
    ├── [181M]  71_R1_001.fastq.gz
    ├── [  55]  71_R1_001.fastq.gz.md5
    ├── [121M]  71_R2_001.fastq.gz
    ├── [  55]  71_R2_001.fastq.gz.md5
    ├── [181M]  88_R1_001.fastq.gz
    ├── [  55]  88_R1_001.fastq.gz.md5
    ├── [127M]  88_R2_001.fastq.gz
    ├── [  55]  88_R2_001.fastq.gz.md5
    └── [585K]  Azenta_30-1035633055-TS01_Data_Report.html

  34G used in 2 directories, 162 files

3.2 Verify checkums

# Load bash variables into memory
source .bashvars

cd "${raw_reads_dir}/${project_dir_1}"

pwd
echo ""

for checksum in *.md5
do
  md5sum --check ${checksum}
done

echo ""
echo "${line}"
echo ""

cd "${raw_reads_dir}/${project_dir_2}"

pwd
echo ""

for checksum in *.md5
do
  md5sum --check ${checksum}
done
/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055

./196_R1_001.fastq.gz: OK
./196_R2_001.fastq.gz: OK
./199_R1_001.fastq.gz: OK
./199_R2_001.fastq.gz: OK
./211_R1_001.fastq.gz: OK
./211_R2_001.fastq.gz: OK
./24_R1_001.fastq.gz: OK
./24_R2_001.fastq.gz: OK
./260_R1_001.fastq.gz: OK
./260_R2_001.fastq.gz: OK
./26_R1_001.fastq.gz: OK
./26_R2_001.fastq.gz: OK
./30_R1_001.fastq.gz: OK
./30_R2_001.fastq.gz: OK
./310_R1_001.fastq.gz: OK
./310_R2_001.fastq.gz: OK
./33_R1_001.fastq.gz: OK
./33_R2_001.fastq.gz: OK
./341_R1_001.fastq.gz: OK
./341_R2_001.fastq.gz: OK
./34_R1_001.fastq.gz: OK
./34_R2_001.fastq.gz: OK
./35_R1_001.fastq.gz: OK
./35_R2_001.fastq.gz: OK
./363_R1_001.fastq.gz: OK
./363_R2_001.fastq.gz: OK
./367_R1_001.fastq.gz: OK
./367_R2_001.fastq.gz: OK
./376_R1_001.fastq.gz: OK
./376_R2_001.fastq.gz: OK
./460_R1_001.fastq.gz: OK
./460_R2_001.fastq.gz: OK
./485_R1_001.fastq.gz: OK
./485_R2_001.fastq.gz: OK
./501_R1_001.fastq.gz: OK
./501_R2_001.fastq.gz: OK
./71_R1_001.fastq.gz: OK
./71_R2_001.fastq.gz: OK
./88_R1_001.fastq.gz: OK
./88_R2_001.fastq.gz: OK

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01

./196_R1_001.fastq.gz: OK
./196_R2_001.fastq.gz: OK
./199_R1_001.fastq.gz: OK
./199_R2_001.fastq.gz: OK
./211_R1_001.fastq.gz: OK
./211_R2_001.fastq.gz: OK
./24_R1_001.fastq.gz: OK
./24_R2_001.fastq.gz: OK
./260_R1_001.fastq.gz: OK
./260_R2_001.fastq.gz: OK
./26_R1_001.fastq.gz: OK
./26_R2_001.fastq.gz: OK
./30_R1_001.fastq.gz: OK
./30_R2_001.fastq.gz: OK
./310_R1_001.fastq.gz: OK
./310_R2_001.fastq.gz: OK
./33_R1_001.fastq.gz: OK
./33_R2_001.fastq.gz: OK
./341_R1_001.fastq.gz: OK
./341_R2_001.fastq.gz: OK
./34_R1_001.fastq.gz: OK
./34_R2_001.fastq.gz: OK
./35_R1_001.fastq.gz: OK
./35_R2_001.fastq.gz: OK
./363_R1_001.fastq.gz: OK
./363_R2_001.fastq.gz: OK
./367_R1_001.fastq.gz: OK
./367_R2_001.fastq.gz: OK
./376_R1_001.fastq.gz: OK
./376_R2_001.fastq.gz: OK
./460_R1_001.fastq.gz: OK
./460_R2_001.fastq.gz: OK
./485_R1_001.fastq.gz: OK
./485_R2_001.fastq.gz: OK
./501_R1_001.fastq.gz: OK
./501_R2_001.fastq.gz: OK
./71_R1_001.fastq.gz: OK
./71_R2_001.fastq.gz: OK
./88_R1_001.fastq.gz: OK
./88_R2_001.fastq.gz: OK

4 Concatenate reads

Concatenation also handles samples where there might be a missing set of R2 reads in the second round of sequencing.

# Load bash variables into memory
source .bashvars

# Make output directory, if it doens't exist
mkdir --parents ${output_dir_top}

cd "${raw_reads_dir}"


# Concatenate FastQ files from 1st and 2nd runs
# Do NOT quote fastq_pattern variable

# Declare an associative array to keep track of processed files
declare -A processed_files

for first_run_fastq in "${raw_reads_dir}"/"${project_dir_1}"/${fastq_pattern}
do
  # Strip full path to just get filename.
  first_run_fastq_name="${first_run_fastq##*/}"

  # Initialize a flag to check if a match is found
  match_found=false

  # Process second run and concatenate with corresponding FastQ from first run
  # Do NOT quote fastq_pattern variable
  for second_run_fastq in "${raw_reads_dir}"/"${project_dir_2}"/${fastq_pattern}
  do
    # Strip full path to just get filename.
    second_run_fastq_name="${second_run_fastq##*/}"

    # Concatenate FastQs with same filenames
    if [[ "${first_run_fastq_name}" == "${second_run_fastq_name}" ]]
    then
      echo "Concatenating ${first_run_fastq} with ${second_run_fastq} to ${output_dir_top}/${first_run_fastq_name}"
      echo ""
      cat "${first_run_fastq}" "${second_run_fastq}" >> "${output_dir_top}/${first_run_fastq_name}"
      match_found=true
      processed_files["${first_run_fastq_name}"]=true
      break
    fi
  done

  # If no match is found, copy the file to the target directory
  if [[ "${match_found}" == false ]]
  then
    if [[ -z "${processed_files[${first_run_fastq_name}]}" ]]
    then
      echo "NO MATCH!"
      echo "Copying ${first_run_fastq} to ${output_dir_top}"
      echo ""
      cp "${first_run_fastq}" "${output_dir_top}"
      processed_files["${first_run_fastq_name}"]=true
    fi
  fi
  
  # Generate MD5 checksums
  cd ${output_dir_top}
  echo "Generating checksums for concatenated FastQs..."
  md5sum "${first_run_fastq_name}" | tee --append "${first_run_fastq_name}".md5
  echo ""
  echo "${line}"
  echo ""
  cd -
done
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/196_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/196_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/196_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
9417deb3991ecedd89bd0b796b609deb  196_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/196_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/196_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/196_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
a24eecd018b5f0f8a60cc8df104a15f3  196_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/199_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/199_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/199_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
862564fb77d382c9d18949335dd8aa23  199_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/199_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/199_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/199_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
72369d2d653f177647331dc5c83adae9  199_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/211_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/211_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/211_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
ade53539022aa28c1a60533823c38107  211_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/211_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/211_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/211_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
ea1e84b96485e1e6d3e48e146c0c22b3  211_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/24_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/24_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/24_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
e958e60126298c3567ba61f1ac061c31  24_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/24_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/24_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/24_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
2dd7215f5695f85b5ae5eabf87d0aae2  24_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/260_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/260_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/260_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
8f3df276c61a575a779f24a5a1524972  260_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/260_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/260_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/260_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
e830f7f7e4ebee517243d0256107d036  260_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/26_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/26_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/26_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
b0bacc581eb09abc35002df6242d4395  26_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/26_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/26_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/26_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
0377d016bb2284f466388c56d0351c0a  26_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/30_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/30_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/30_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
b27369e79417c98c558d86a8b11bb092  30_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/30_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/30_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/30_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
3e246bcbe3b5f8d83ce16960b4c0ce9a  30_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/310_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/310_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/310_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
1aee070979f4e2484d42ae1d53c13825  310_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/310_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/310_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/310_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
0566e0d8d195fc9c6a6253e5c19d2032  310_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/33_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/33_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/33_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
cf6af56a0a882e8c92f9b7a63b305711  33_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/33_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/33_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/33_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
73fafa2ae9986be6d1be405f8f6fec78  33_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/341_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/341_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/341_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
d84af357aca0e0237dd67b7bcbab32c3  341_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/341_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/341_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/341_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
35d54cdf44f0deaed484b35d34b1a3e4  341_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/34_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/34_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/34_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
a1d8006b21ac5f5ade62549d7377beef  34_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/34_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/34_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/34_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
a44a721f9cb8dda05fe669b98ced2112  34_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/35_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/35_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/35_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
25fccca8264c0a3eea8ece52d0ed6c4a  35_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/35_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/35_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/35_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
f53632400b3a7b5142890df086594561  35_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/363_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/363_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/363_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
476d3bfc92ed8234d4f05b2eb51316c0  363_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/363_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/363_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/363_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
108a47c38b3ce4ec7a9c43c656d66d78  363_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/367_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/367_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/367_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
9d4dc55e2c5a025cb452db4ba58b2426  367_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/367_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/367_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/367_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
e9ca895177af7f4ecd7b4cea1efb8e94  367_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/376_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/376_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/376_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
ed7f367e99fa14a79d9d76e7f6602504  376_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/376_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/376_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/376_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
b34a6b8a21c2d753c70c6f0ada622ae3  376_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/460_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/460_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/460_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
0b76ea694146524fb3d920d0ce893700  460_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/460_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/460_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/460_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
129fa23dd27e800eefdf9857cd486e04  460_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/485_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/485_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/485_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
8fb813628e19f16a2ebc38a3b25d86c9  485_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/485_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/485_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/485_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
778fd2901d89edb88bd3b3258794483c  485_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/501_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/501_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/501_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
661ecf50a08410be5f497191ccbcab53  501_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/501_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/501_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/501_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
25fce7fb0d38c82790021a67f6d7f7bf  501_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/71_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/71_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/71_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
91a62551b545b89180b8cf8bba7a9972  71_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/71_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/71_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/71_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
061d5ddab8b33f54564f8fde19ceb479  71_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/88_R1_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/88_R1_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/88_R1_001.fastq.gz

Generating checksums for concatenated FastQs...
01f8e68f4993aa9fc4d6d56b29719afa  88_R1_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads
Concatenating /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055/88_R2_001.fastq.gz with /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads/30-1035633055-TS01/88_R2_001.fastq.gz to /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads/88_R2_001.fastq.gz

Generating checksums for concatenated FastQs...
2933ae02943ead5548223833cbeb41de  88_R2_001.fastq.gz

--------------------------------------------------------

/home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/data/raw_reads

5 FastQC/MultiQC on raw reads

# Load bash variables into memory
source .bashvars


############ RUN FASTQC ############


# Create array of trimmed FastQs
raw_fastqs_array=(${output_dir_top}/${fastq_pattern})

# Pass array contents to new variable as space-delimited list
raw_fastqc_list=$(echo "${raw_fastqs_array[*]}")

echo "Beginning FastQC on raw reads..."
echo ""

# Run FastQC
### NOTE: Do NOT quote raw_fastqc_list
${fastqc} \
--threads ${threads} \
--outdir ${output_dir_top} \
--quiet \
${raw_fastqc_list}

echo "FastQC on raw reads complete!"
echo ""

############ END FASTQC ############

############ RUN MULTIQC ############
echo "Beginning MultiQC on raw FastQC..."
echo ""

${multiqc} ${output_dir_top} -o ${output_dir_top}

echo ""
echo "MultiQC on raw FastQs complete."
echo ""

############ END MULTIQC ############

echo "Removing FastQC zip files."
echo ""
rm ${output_dir_top}/*.zip
echo "FastQC zip files removed."
echo ""
Beginning FastQC on raw reads...

application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
application/gzip
FastQC on raw reads complete!

Beginning MultiQC on raw FastQC...


  /// MultiQC 🔍 | v1.14

|           multiqc | MultiQC Version v1.25.2 now available!
|           multiqc | Search path : /home/shared/8TB_HDD_01/sam/gitrepos/RobertsLab/project-clam-oa/output/00.00-fastqc-concatenation-raw_reads
|         searching | ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 160/160  
|            fastqc | Found 40 reports
|           multiqc | Compressing plot data
|           multiqc | Report      : ../output/00.00-fastqc-concatenation-raw_reads/multiqc_report.html
|           multiqc | Data        : ../output/00.00-fastqc-concatenation-raw_reads/multiqc_data
|           multiqc | MultiQC complete

MultiQC on raw FastQs complete.

Removing FastQC zip files.

FastQC zip files removed.

5.1 View directory contents

# Load bash variables into memory
source .bashvars
ls -lh ${output_dir_top}
total 34G
-rw-r--r-- 1 sam sam  694K Dec  5 14:17 196_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  1.1G Dec  5 14:10 196_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:10 196_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  680K Dec  5 14:17 196_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  740M Dec  5 14:10 196_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:10 196_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  700K Dec  5 14:17 199_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  859M Dec  5 14:10 199_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:10 199_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  682K Dec  5 14:16 199_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  575M Dec  5 14:10 199_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:10 199_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  699K Dec  5 14:17 211_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  927M Dec  5 14:10 211_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:10 211_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  684K Dec  5 14:16 211_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  607M Dec  5 14:10 211_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:10 211_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  700K Dec  5 14:17 24_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  900M Dec  5 14:10 24_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    53 Dec  5 14:10 24_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  681K Dec  5 14:17 24_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  643M Dec  5 14:10 24_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    53 Dec  5 14:10 24_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  706K Dec  5 14:17 260_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  956M Dec  5 14:10 260_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:10 260_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  682K Dec  5 14:17 260_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  653M Dec  5 14:10 260_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:10 260_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  701K Dec  5 14:17 26_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  944M Dec  5 14:10 26_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    53 Dec  5 14:10 26_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  682K Dec  5 14:16 26_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  607M Dec  5 14:10 26_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    53 Dec  5 14:10 26_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  703K Dec  5 14:17 30_R1_001_fastqc.html
-rw-r--r-- 1 sam sam 1000M Dec  5 14:10 30_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    53 Dec  5 14:10 30_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  682K Dec  5 14:17 30_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  677M Dec  5 14:10 30_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    53 Dec  5 14:10 30_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  699K Dec  5 14:17 310_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  943M Dec  5 14:10 310_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:10 310_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  683K Dec  5 14:16 310_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  663M Dec  5 14:10 310_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:10 310_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  703K Dec  5 14:17 33_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  955M Dec  5 14:10 33_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    53 Dec  5 14:10 33_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  680K Dec  5 14:16 33_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  672M Dec  5 14:10 33_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    53 Dec  5 14:10 33_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  701K Dec  5 14:17 341_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  993M Dec  5 14:10 341_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:10 341_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  687K Dec  5 14:17 341_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  665M Dec  5 14:10 341_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:10 341_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  700K Dec  5 14:18 34_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  1.1G Dec  5 14:10 34_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    53 Dec  5 14:10 34_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  678K Dec  5 14:17 34_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  769M Dec  5 14:10 34_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    53 Dec  5 14:10 34_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  702K Dec  5 14:17 35_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  914M Dec  5 14:11 35_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    53 Dec  5 14:11 35_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  681K Dec  5 14:17 35_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  596M Dec  5 14:11 35_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    53 Dec  5 14:11 35_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  704K Dec  5 14:17 363_R1_001_fastqc.html
-rw-r--r-- 1 sam sam 1021M Dec  5 14:11 363_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:11 363_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  682K Dec  5 14:17 363_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  708M Dec  5 14:11 363_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:11 363_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  699K Dec  5 14:17 367_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  984M Dec  5 14:11 367_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:11 367_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  682K Dec  5 14:17 367_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  648M Dec  5 14:11 367_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:11 367_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  701K Dec  5 14:19 376_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  1.8G Dec  5 14:11 376_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:11 376_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  683K Dec  5 14:18 376_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  1.2G Dec  5 14:11 376_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:11 376_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  697K Dec  5 14:17 460_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  951M Dec  5 14:11 460_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:11 460_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  683K Dec  5 14:17 460_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  641M Dec  5 14:11 460_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:11 460_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  701K Dec  5 14:17 485_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  974M Dec  5 14:11 485_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:11 485_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  683K Dec  5 14:17 485_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  661M Dec  5 14:11 485_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:11 485_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  702K Dec  5 14:17 501_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  1.1G Dec  5 14:11 501_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:11 501_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  680K Dec  5 14:17 501_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  721M Dec  5 14:11 501_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    54 Dec  5 14:11 501_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  693K Dec  5 14:18 71_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  1.2G Dec  5 14:11 71_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    53 Dec  5 14:11 71_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  671K Dec  5 14:17 71_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  741M Dec  5 14:11 71_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    53 Dec  5 14:11 71_R2_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  700K Dec  5 14:18 88_R1_001_fastqc.html
-rw-r--r-- 1 sam sam  1.1G Dec  5 14:11 88_R1_001.fastq.gz
-rw-r--r-- 1 sam sam    53 Dec  5 14:11 88_R1_001.fastq.gz.md5
-rw-r--r-- 1 sam sam  679K Dec  5 14:17 88_R2_001_fastqc.html
-rw-r--r-- 1 sam sam  772M Dec  5 14:11 88_R2_001.fastq.gz
-rw-r--r-- 1 sam sam    53 Dec  5 14:11 88_R2_001.fastq.gz.md5
drwxr-xr-x 2 sam sam  4.0K Dec  5 14:19 multiqc_data
-rw-r--r-- 1 sam sam  1.6M Dec  5 14:19 multiqc_report.html
Ewels, Philip, Måns Magnusson, Sverker Lundin, and Max Käller. 2016. “MultiQC: Summarize Analysis Results for Multiple Tools and Samples in a Single Report.” Bioinformatics 32 (19): 3047–48. https://doi.org/10.1093/bioinformatics/btw354.
LS0tCnRpdGxlOiAiMDAuMDAtZmFzdHFjLWNvbmNhdGVuYXRpb24tcmF3X3JlYWRzIgphdXRob3I6ICJTYW0gV2hpdGUiCmRhdGU6ICIyMDI0LTEyLTA1IgpvdXRwdXQ6IAogIGJvb2tkb3duOjpodG1sX2RvY3VtZW50MjoKICAgIHRoZW1lOiBjb3NtbwogICAgdG9jOiB0cnVlCiAgICB0b2NfZmxvYXQ6IHRydWUKICAgIG51bWJlcl9zZWN0aW9uczogdHJ1ZQogICAgY29kZV9mb2xkaW5nOiBzaG93CiAgICBjb2RlX2Rvd25sb2FkOiB0cnVlCiAgZ2l0aHViX2RvY3VtZW50OgogICAgdG9jOiB0cnVlCiAgICBudW1iZXJfc2VjdGlvbnM6IHRydWUKICBodG1sX2RvY3VtZW50OgogICAgdGhlbWU6IGNvc21vCiAgICB0b2M6IHRydWUKICAgIHRvY19mbG9hdDogdHJ1ZQogICAgbnVtYmVyX3NlY3Rpb25zOiB0cnVlCiAgICBjb2RlX2ZvbGRpbmc6IHNob3cKICAgIGNvZGVfZG93bmxvYWQ6IHRydWUKYmlibGlvZ3JhcGh5OiByZWZlcmVuY2VzLmJpYgotLS0KCgojIERlc2NyaXB0aW9uCgpUaGlzIG5vdGVib29rIHdpbGwgZG93bmxvYWQgcmF3IHNSTkEtc2VxIEZhc3RRcywgY29uY2F0ZW5hdGUgdGhlbSAodGhlcmUKd2VyZSBtdWx0aXBsZSBsYW5lcyBydW4pLCBhbmQgdGhlbiBhc3Nlc3Mgd2l0aCBbRmFzdFFDXShodHRwczovL2dpdGh1Yi5jb20vcy1hbmRyZXdzL0Zhc3RRQykgYW5kCltNdWx0aVFDXShodHRwczovL2dpdGh1Yi5jb20vTXVsdGlRQy9NdWx0aVFDKSBbQGV3ZWxzMjAxNl0uCgojIyBJbnB1dHMKClJhdyBGYXN0USBmaWxlcyB3aXRoIHRoZSBmb2xsb3dpbmcgcGF0dGVybjoKCi0gYCouZmFzdHEuZ3pgCgojIyBPdXRwdXRzCgpUaGUgZXhwZWN0ZWQgb3V0cHV0cyB3aWxsIGJlOgoKLSBgKi5mYXN0cS5nemA6IENvbmNhdGVuYXRlZCBGYXN0USBmaWxlcy4KCi0gYCouZmFzdHFjLmh0bWxgOiBGYXN0UUMgcmVzdWx0cywgaW4gSFRNTCBmb3JtYXQuCgotIGBtdWx0aXFjX3JlcG9ydC5odG1sYDogQSBzdW1tYXJ5IHJlcG9ydCBvZiB0aGUgYWxpZ25tZW50IHJlc3VsdHMKICAgIGdlbmVyYXRlZCBieSBbTXVsdGlRQ10oaHR0cHM6Ly9naXRodWIuY29tL011bHRpUUMvTXVsdGlRQyksIGluIEhUTUwKICAgIGZvcm1hdC4KICAgIApEdWUgdG8gbGFyZ2UgZmlsZSBzaXplcyBvZiBGYXN0UXMsIHRoZXkgY2Fubm90IGJlIGFkZGVkIHRvIEdpdEh1Yi4gRnVsbCBvdXRwdXQgZnJvbSB0aGlzIG5vdGVib29rIGFyZSBhdmFpbGFibGUgaGVyZToKCi0gW2h0dHBzOi8vZ2FubmV0LmZpc2gud2FzaGluZ3Rvbi5lZHUvZ2l0cmVwb3MvcHJvamVjdC1jbGFtLW9hL291dHB1dC8wMC4wMC1mYXN0cWMtY29uY2F0ZW5hdGlvbi1yYXdfcmVhZHNdKGh0dHBzOi8vZ2FubmV0LmZpc2gud2FzaGluZ3Rvbi5lZHUvZ2l0cmVwb3MvcHJvamVjdC1jbGFtLW9hL291dHB1dC8wMC4wMC1mYXN0cWMtY29uY2F0ZW5hdGlvbi1yYXdfcmVhZHMpCgpgYGB7ciBzZXR1cCwgaW5jbHVkZT1GQUxTRX0KbGlicmFyeShrbml0cikKa25pdHI6Om9wdHNfY2h1bmskc2V0KAogIGVjaG8gPSBUUlVFLCAgICAgICAgICMgRGlzcGxheSBjb2RlIGNodW5rcwogIGV2YWwgPSBGQUxTRSwgICAgICAgICMgRXZhbHVhdGUgY29kZSBjaHVua3MKICB3YXJuaW5nID0gRkFMU0UsICAgICAjIEhpZGUgd2FybmluZ3MKICBtZXNzYWdlID0gRkFMU0UsICAgICAjIEhpZGUgbWVzc2FnZXMKICBjb21tZW50ID0gIiIgICAgICAgICAjIFByZXZlbnRzIGFwcGVuZGluZyAnIyMnIHRvIGJlZ2lubmluZyBvZiBsaW5lcyBpbiBjb2RlIG91dHB1dAopCmBgYAoKCiMgQ3JlYXRlIGEgQmFzaCB2YXJpYWJsZXMgZmlsZQoKVGhpcyBhbGxvd3MgdXNhZ2Ugb2YgQmFzaCB2YXJpYWJsZXMgYWNyb3NzIFIgTWFya2Rvd24gY2h1bmtzLgoKYGBge3Igc2F2ZS1iYXNoLXZhcmlhYmxlcy10by1ydmFycy1maWxlLCBlbmdpbmU9J2Jhc2gnLCBldmFsPVRSVUV9CnsKZWNobyAiIyMjIyBBc3NpZ24gVmFyaWFibGVzICMjIyMiCmVjaG8gIiIKCmVjaG8gIiMgRGF0YSBkaXJlY3RvcmllcyIKZWNobyAnZXhwb3J0IHJlcG9fZGlyPS9ob21lL3NoYXJlZC84VEJfSEREXzAxL3NhbS9naXRyZXBvcy9Sb2JlcnRzTGFiL3Byb2plY3QtY2xhbS1vYScKZWNobyAnZXhwb3J0IG91dHB1dF9kaXJfdG9wPSR7cmVwb19kaXJ9L291dHB1dC8wMC4wMC1mYXN0cWMtY29uY2F0ZW5hdGlvbi1yYXdfcmVhZHMnCmVjaG8gJ2V4cG9ydCByYXdfcmVhZHNfdXJsPSJodHRwczovL293bC5maXNoLndhc2hpbmd0b24uZWR1L25pZ2h0aW5nYWxlcy9SX3BoaWxpcHBpbmFydW0vIicKZWNobyAnZXhwb3J0IHJhd19yZWFkc19kaXI9IiR7cmVwb19kaXJ9L2RhdGEvcmF3X3JlYWRzIicKZWNobyAnZXhwb3J0IHByb2plY3RfZGlyXzE9IjMwLTEwMzU2MzMwNTUiJwplY2hvICdleHBvcnQgcHJvamVjdF9kaXJfMj0iMzAtMTAzNTYzMzA1NS1UUzAxIicKZWNobyAiIgoKZWNobyAiIyBQYXRocyB0byBwcm9ncmFtcyIKZWNobyAnZXhwb3J0IHByb2dyYW1zX2Rpcj0iL2hvbWUvc2hhcmVkIicKZWNobyAnZXhwb3J0IGZhc3RxYz0iJHtwcm9ncmFtc19kaXJ9L0Zhc3RRQy0wLjEyLjEvZmFzdHFjIicKZWNobyAnZXhwb3J0IG11bHRpcWM9Ii9ob21lL3NhbS9wcm9ncmFtcy9tYW1iYWZvcmdlL2Jpbi9tdWx0aXFjIicKZWNobyAiIgoKCmVjaG8gIiMgU2V0IEZhc3RRIGZpbGVuYW1lIHBhdHRlcm5zIgplY2hvICJleHBvcnQgZmFzdHFfcGF0dGVybj0nKi5mYXN0cS5neiciCmVjaG8gImV4cG9ydCBSMV9mYXN0cV9wYXR0ZXJuPScqX1IxXyouZmFzdHEuZ3onIgplY2hvICJleHBvcnQgUjJfZmFzdHFfcGF0dGVybj0nKl9SMl8qLmZhc3RxLmd6JyIKZWNobyAiIgoKZWNobyAiIyBTZXQgbnVtYmVyIG9mIENQVXMgdG8gdXNlIgplY2hvICdleHBvcnQgdGhyZWFkcz00MCcKZWNobyAiIgoKCmVjaG8gIiMjIEluaXRpdGFsaXplIGFycmF5cyIKZWNobyAnZXhwb3J0IGZhc3RxX2FycmF5X1IxPSgpJwplY2hvICdleHBvcnQgZmFzdHFfYXJyYXlfUjI9KCknCmVjaG8gJ2V4cG9ydCB0cmltbWVkX2Zhc3Rxc19hcnJheT0oKScKZWNobyAnZXhwb3J0IFIxX25hbWVzX2FycmF5PSgpJwplY2hvICdleHBvcnQgUjJfbmFtZXNfYXJyYXk9KCknCmVjaG8gIiIKCmVjaG8gIiMgUHJpbnQgZm9ybWF0dGluZyIKZWNobyAnZXhwb3J0IGxpbmU9Ii0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIicKZWNobyAiIgp9ID4gLmJhc2h2YXJzCgpjYXQgLmJhc2h2YXJzCmBgYAoKCiMgRG93bmxvYWQgcmF3IHJlYWRzCgpUaGUgYC0tY3V0LWRpcnMgM2AgY29tbWFuZCBjdXRzIHRoZSBwcmVjZWRpbmcgZGlyZWN0b3J5IHN0cnVjdHVyZSAoaS5lLiBgUl9waGlsaXBwaW5hcnVtLzMwLTEwMzU2MzMwNTUvYCkKc28gdGhhdCB3ZSBqdXN0IGVuZCB1cCB3aXRoIHRoZSByZWFkcy4KCmBgYHtyIGRvd25sb2FkLXJhdy1yZWFkcywgZW5naW5lPSdiYXNoJywgZXZhbD1GQUxTRX0KCiMgTG9hZCBiYXNoIHZhcmlhYmxlcyBpbnRvIG1lbW9yeQpzb3VyY2UgLmJhc2h2YXJzCgojIENyZWF0ZSBkaXJlY3RvcnksIGlmIGl0IGRvZXNuJ3QgZXhpc3QKbWtkaXIgLS1wYXJlbnRzIFwKJHtyYXdfcmVhZHNfZGlyfS8ke3Byb2plY3RfZGlyXzF9IFwKJHtyYXdfcmVhZHNfZGlyfS8ke3Byb2plY3RfZGlyXzJ9Cgpmb3IgZGlyZWN0b3J5IGluICR7cmF3X3JlYWRzX2Rpcn0vJHtwcm9qZWN0X2Rpcl8xfSAke3Jhd19yZWFkc19kaXJ9LyR7cHJvamVjdF9kaXJfMn0KZG8KICB3Z2V0IFwKICAtLWRpcmVjdG9yeS1wcmVmaXggJHtkaXJlY3Rvcnl9IFwKICAtLXJlY3Vyc2l2ZSBcCiAgLS1uby1jaGVjay1jZXJ0aWZpY2F0ZSBcCiAgLS1jb250aW51ZSBcCiAgLS1jdXQtZGlycyAzIFwKICAtLW5vLXBhcmVudCBcCiAgLS1uby1ob3N0LWRpcmVjdG9yaWVzIFwKICAtLXF1aWV0IFwKICAke3Jhd19yZWFkc191cmx9CiAgCiAgIyBSZW1vdmUgZXh0cmFuZW91cyBpbmRleHQgZmlsZXMKICBybSAke3Jhd19yZWFkc19kaXJ9LyR7cHJvamVjdF9kaXJfMX0vaW5kZXgqCiAgcm0gJHtyYXdfcmVhZHNfZGlyfS8ke3Byb2plY3RfZGlyXzJ9L2luZGV4Kgpkb25lCmBgYAoKIyMgT3ZlcnZpZXcgb2YgZG93bmxvYWRzCgpgYGB7ciBjaGVjay1kb3dubG9hZHMsIGVuZ2luZT0nYmFzaCcsIGV2YWw9VFJVRX0KIyBMb2FkIGJhc2ggdmFyaWFibGVzIGludG8gbWVtb3J5CnNvdXJjZSAuYmFzaHZhcnMKCnRyZWUgLS1kdSAtaCAiJHtyYXdfcmVhZHNfZGlyfSIKYGBgCgoKIyMgVmVyaWZ5IGNoZWNrdW1zCmBgYHtyIHZlcmlmeS1jaGVja3N1bXMsIGVuZ2luZT0nYmFzaCcsIGV2YWw9VFJVRX0KIyBMb2FkIGJhc2ggdmFyaWFibGVzIGludG8gbWVtb3J5CnNvdXJjZSAuYmFzaHZhcnMKCmNkICIke3Jhd19yZWFkc19kaXJ9LyR7cHJvamVjdF9kaXJfMX0iCgpwd2QKZWNobyAiIgoKZm9yIGNoZWNrc3VtIGluICoubWQ1CmRvCiAgbWQ1c3VtIC0tY2hlY2sgJHtjaGVja3N1bX0KZG9uZQoKZWNobyAiIgplY2hvICIke2xpbmV9IgplY2hvICIiCgpjZCAiJHtyYXdfcmVhZHNfZGlyfS8ke3Byb2plY3RfZGlyXzJ9IgoKcHdkCmVjaG8gIiIKCmZvciBjaGVja3N1bSBpbiAqLm1kNQpkbwogIG1kNXN1bSAtLWNoZWNrICR7Y2hlY2tzdW19CmRvbmUKYGBgCgojIENvbmNhdGVuYXRlIHJlYWRzCgpDb25jYXRlbmF0aW9uIGFsc28gaGFuZGxlcyBzYW1wbGVzIHdoZXJlIHRoZXJlIG1pZ2h0IGJlIGEgbWlzc2luZyBzZXQgb2YgUjIgcmVhZHMgaW4gdGhlIHNlY29uZCByb3VuZCBvZiBzZXF1ZW5jaW5nLgoKYGBge3IgY29uY2F0ZW5hdGUtcmVhZHMsIGVuZ2luZT0nYmFzaCcsIGV2YWw9VFJVRX0KIyBMb2FkIGJhc2ggdmFyaWFibGVzIGludG8gbWVtb3J5CnNvdXJjZSAuYmFzaHZhcnMKCiMgTWFrZSBvdXRwdXQgZGlyZWN0b3J5LCBpZiBpdCBkb2Vucyd0IGV4aXN0Cm1rZGlyIC0tcGFyZW50cyAke291dHB1dF9kaXJfdG9wfQoKY2QgIiR7cmF3X3JlYWRzX2Rpcn0iCgoKIyBDb25jYXRlbmF0ZSBGYXN0USBmaWxlcyBmcm9tIDFzdCBhbmQgMm5kIHJ1bnMKIyBEbyBOT1QgcXVvdGUgZmFzdHFfcGF0dGVybiB2YXJpYWJsZQoKIyBEZWNsYXJlIGFuIGFzc29jaWF0aXZlIGFycmF5IHRvIGtlZXAgdHJhY2sgb2YgcHJvY2Vzc2VkIGZpbGVzCmRlY2xhcmUgLUEgcHJvY2Vzc2VkX2ZpbGVzCgpmb3IgZmlyc3RfcnVuX2Zhc3RxIGluICIke3Jhd19yZWFkc19kaXJ9Ii8iJHtwcm9qZWN0X2Rpcl8xfSIvJHtmYXN0cV9wYXR0ZXJufQpkbwogICMgU3RyaXAgZnVsbCBwYXRoIHRvIGp1c3QgZ2V0IGZpbGVuYW1lLgogIGZpcnN0X3J1bl9mYXN0cV9uYW1lPSIke2ZpcnN0X3J1bl9mYXN0cSMjKi99IgoKICAjIEluaXRpYWxpemUgYSBmbGFnIHRvIGNoZWNrIGlmIGEgbWF0Y2ggaXMgZm91bmQKICBtYXRjaF9mb3VuZD1mYWxzZQoKICAjIFByb2Nlc3Mgc2Vjb25kIHJ1biBhbmQgY29uY2F0ZW5hdGUgd2l0aCBjb3JyZXNwb25kaW5nIEZhc3RRIGZyb20gZmlyc3QgcnVuCiAgIyBEbyBOT1QgcXVvdGUgZmFzdHFfcGF0dGVybiB2YXJpYWJsZQogIGZvciBzZWNvbmRfcnVuX2Zhc3RxIGluICIke3Jhd19yZWFkc19kaXJ9Ii8iJHtwcm9qZWN0X2Rpcl8yfSIvJHtmYXN0cV9wYXR0ZXJufQogIGRvCiAgICAjIFN0cmlwIGZ1bGwgcGF0aCB0byBqdXN0IGdldCBmaWxlbmFtZS4KICAgIHNlY29uZF9ydW5fZmFzdHFfbmFtZT0iJHtzZWNvbmRfcnVuX2Zhc3RxIyMqL30iCgogICAgIyBDb25jYXRlbmF0ZSBGYXN0UXMgd2l0aCBzYW1lIGZpbGVuYW1lcwogICAgaWYgW1sgIiR7Zmlyc3RfcnVuX2Zhc3RxX25hbWV9IiA9PSAiJHtzZWNvbmRfcnVuX2Zhc3RxX25hbWV9IiBdXQogICAgdGhlbgogICAgICBlY2hvICJDb25jYXRlbmF0aW5nICR7Zmlyc3RfcnVuX2Zhc3RxfSB3aXRoICR7c2Vjb25kX3J1bl9mYXN0cX0gdG8gJHtvdXRwdXRfZGlyX3RvcH0vJHtmaXJzdF9ydW5fZmFzdHFfbmFtZX0iCiAgICAgIGVjaG8gIiIKICAgICAgY2F0ICIke2ZpcnN0X3J1bl9mYXN0cX0iICIke3NlY29uZF9ydW5fZmFzdHF9IiA+PiAiJHtvdXRwdXRfZGlyX3RvcH0vJHtmaXJzdF9ydW5fZmFzdHFfbmFtZX0iCiAgICAgIG1hdGNoX2ZvdW5kPXRydWUKICAgICAgcHJvY2Vzc2VkX2ZpbGVzWyIke2ZpcnN0X3J1bl9mYXN0cV9uYW1lfSJdPXRydWUKICAgICAgYnJlYWsKICAgIGZpCiAgZG9uZQoKICAjIElmIG5vIG1hdGNoIGlzIGZvdW5kLCBjb3B5IHRoZSBmaWxlIHRvIHRoZSB0YXJnZXQgZGlyZWN0b3J5CiAgaWYgW1sgIiR7bWF0Y2hfZm91bmR9IiA9PSBmYWxzZSBdXQogIHRoZW4KICAgIGlmIFtbIC16ICIke3Byb2Nlc3NlZF9maWxlc1ske2ZpcnN0X3J1bl9mYXN0cV9uYW1lfV19IiBdXQogICAgdGhlbgogICAgICBlY2hvICJOTyBNQVRDSCEiCiAgICAgIGVjaG8gIkNvcHlpbmcgJHtmaXJzdF9ydW5fZmFzdHF9IHRvICR7b3V0cHV0X2Rpcl90b3B9IgogICAgICBlY2hvICIiCiAgICAgIGNwICIke2ZpcnN0X3J1bl9mYXN0cX0iICIke291dHB1dF9kaXJfdG9wfSIKICAgICAgcHJvY2Vzc2VkX2ZpbGVzWyIke2ZpcnN0X3J1bl9mYXN0cV9uYW1lfSJdPXRydWUKICAgIGZpCiAgZmkKICAKICAjIEdlbmVyYXRlIE1ENSBjaGVja3N1bXMKICBjZCAke291dHB1dF9kaXJfdG9wfQogIGVjaG8gIkdlbmVyYXRpbmcgY2hlY2tzdW1zIGZvciBjb25jYXRlbmF0ZWQgRmFzdFFzLi4uIgogIG1kNXN1bSAiJHtmaXJzdF9ydW5fZmFzdHFfbmFtZX0iIHwgdGVlIC0tYXBwZW5kICIke2ZpcnN0X3J1bl9mYXN0cV9uYW1lfSIubWQ1CiAgZWNobyAiIgogIGVjaG8gIiR7bGluZX0iCiAgZWNobyAiIgogIGNkIC0KZG9uZQpgYGAKCiMgRmFzdFFDL011bHRpUUMgb24gcmF3IHJlYWRzCgpgYGB7YmFzaCByYXctZmFzdHFjLW11bHRpcWMsIGVuZ2luZT0nYmFzaCcsIGV2YWw9VFJVRX0KIyBMb2FkIGJhc2ggdmFyaWFibGVzIGludG8gbWVtb3J5CnNvdXJjZSAuYmFzaHZhcnMKCgojIyMjIyMjIyMjIyMgUlVOIEZBU1RRQyAjIyMjIyMjIyMjIyMKCgojIENyZWF0ZSBhcnJheSBvZiB0cmltbWVkIEZhc3RRcwpyYXdfZmFzdHFzX2FycmF5PSgke291dHB1dF9kaXJfdG9wfS8ke2Zhc3RxX3BhdHRlcm59KQoKIyBQYXNzIGFycmF5IGNvbnRlbnRzIHRvIG5ldyB2YXJpYWJsZSBhcyBzcGFjZS1kZWxpbWl0ZWQgbGlzdApyYXdfZmFzdHFjX2xpc3Q9JChlY2hvICIke3Jhd19mYXN0cXNfYXJyYXlbKl19IikKCmVjaG8gIkJlZ2lubmluZyBGYXN0UUMgb24gcmF3IHJlYWRzLi4uIgplY2hvICIiCgojIFJ1biBGYXN0UUMKIyMjIE5PVEU6IERvIE5PVCBxdW90ZSByYXdfZmFzdHFjX2xpc3QKJHtmYXN0cWN9IFwKLS10aHJlYWRzICR7dGhyZWFkc30gXAotLW91dGRpciAke291dHB1dF9kaXJfdG9wfSBcCi0tcXVpZXQgXAoke3Jhd19mYXN0cWNfbGlzdH0KCmVjaG8gIkZhc3RRQyBvbiByYXcgcmVhZHMgY29tcGxldGUhIgplY2hvICIiCgojIyMjIyMjIyMjIyMgRU5EIEZBU1RRQyAjIyMjIyMjIyMjIyMKCiMjIyMjIyMjIyMjIyBSVU4gTVVMVElRQyAjIyMjIyMjIyMjIyMKZWNobyAiQmVnaW5uaW5nIE11bHRpUUMgb24gcmF3IEZhc3RRQy4uLiIKZWNobyAiIgoKJHttdWx0aXFjfSAke291dHB1dF9kaXJfdG9wfSAtbyAke291dHB1dF9kaXJfdG9wfQoKZWNobyAiIgplY2hvICJNdWx0aVFDIG9uIHJhdyBGYXN0UXMgY29tcGxldGUuIgplY2hvICIiCgojIyMjIyMjIyMjIyMgRU5EIE1VTFRJUUMgIyMjIyMjIyMjIyMjCgplY2hvICJSZW1vdmluZyBGYXN0UUMgemlwIGZpbGVzLiIKZWNobyAiIgpybSAke291dHB1dF9kaXJfdG9wfS8qLnppcAplY2hvICJGYXN0UUMgemlwIGZpbGVzIHJlbW92ZWQuIgplY2hvICIiCmBgYAoKCiMjIFZpZXcgZGlyZWN0b3J5IGNvbnRlbnRzCmBgYHtiYXNoIGxpc3Qtb3V0cHV0LWZpbGVzLCBlbmdpbmU9J2Jhc2gnLCBldmFsPVRSVUV9CiMgTG9hZCBiYXNoIHZhcmlhYmxlcyBpbnRvIG1lbW9yeQpzb3VyY2UgLmJhc2h2YXJzCmxzIC1saCAke291dHB1dF9kaXJfdG9wfQoKYGBgCg==