#!/usr/bin/env bash
# Bulk download script for GSE40652
# Generated from Yeo Lab Publications Database
# Total files: 37

OUTDIR="GSE40652"
mkdir -p "$OUTDIR"
cd "$OUTDIR"

# --- GEO supplementary files ---
wget -nc "ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE40nnn/GSE40652/suppl/GSE40652_RAW.tar" -O "GSE40652_RAW.tar"

# --- SRA run files ---
# Tip: use 'fasterq-dump' from SRA Toolkit for FASTQ conversion
#      with optional renaming to original submitted FASTQ names.
# Set to 1 to rename SRR outputs (e.g. SRR_1.fastq.gz -> sample_R1.fastq.gz)
RENAME_SRA_TO_ORIGINAL=1

_compress_if_exists() {
  local stem="$1"
  if [ -f "${stem}.fastq" ]; then
    gzip -f "${stem}.fastq"
    echo "${stem}.fastq.gz"
    return 0
  fi
  if [ -f "${stem}.fq" ]; then
    gzip -f "${stem}.fq"
    echo "${stem}.fq.gz"
    return 0
  fi
  return 1
}

# Option A: Download via SRA Toolkit (recommended)
fasterq-dump --split-files "SRR556767"
gz1="$(_compress_if_exists 'SRR556767_1' || true)"
gz2="$(_compress_if_exists 'SRR556767_2' || true)"
gzs="$(_compress_if_exists 'SRR556767' || true)"

fasterq-dump --split-files "SRR556768"
gz1="$(_compress_if_exists 'SRR556768_1' || true)"
gz2="$(_compress_if_exists 'SRR556768_2' || true)"
gzs="$(_compress_if_exists 'SRR556768' || true)"

fasterq-dump --split-files "SRR556769"
gz1="$(_compress_if_exists 'SRR556769_1' || true)"
gz2="$(_compress_if_exists 'SRR556769_2' || true)"
gzs="$(_compress_if_exists 'SRR556769' || true)"

fasterq-dump --split-files "SRR556770"
gz1="$(_compress_if_exists 'SRR556770_1' || true)"
gz2="$(_compress_if_exists 'SRR556770_2' || true)"
gzs="$(_compress_if_exists 'SRR556770' || true)"

fasterq-dump --split-files "SRR556771"
gz1="$(_compress_if_exists 'SRR556771_1' || true)"
gz2="$(_compress_if_exists 'SRR556771_2' || true)"
gzs="$(_compress_if_exists 'SRR556771' || true)"

fasterq-dump --split-files "SRR556772"
gz1="$(_compress_if_exists 'SRR556772_1' || true)"
gz2="$(_compress_if_exists 'SRR556772_2' || true)"
gzs="$(_compress_if_exists 'SRR556772' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "MP27_1.fastq.gz"
fi

fasterq-dump --split-files "SRR556773"
gz1="$(_compress_if_exists 'SRR556773_1' || true)"
gz2="$(_compress_if_exists 'SRR556773_2' || true)"
gzs="$(_compress_if_exists 'SRR556773' || true)"

fasterq-dump --split-files "SRR556774"
gz1="$(_compress_if_exists 'SRR556774_1' || true)"
gz2="$(_compress_if_exists 'SRR556774_2' || true)"
gzs="$(_compress_if_exists 'SRR556774' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gzs" ]; then
  mv -f "$gzs" "MP27_3.fastq.gz"
fi

fasterq-dump --split-files "SRR556775"
gz1="$(_compress_if_exists 'SRR556775_1' || true)"
gz2="$(_compress_if_exists 'SRR556775_2' || true)"
gzs="$(_compress_if_exists 'SRR556775' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "MP28_1.fastq.gz"
fi

fasterq-dump --split-files "SRR556776"
gz1="$(_compress_if_exists 'SRR556776_1' || true)"
gz2="$(_compress_if_exists 'SRR556776_2' || true)"
gzs="$(_compress_if_exists 'SRR556776' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "MP28_2.fastq.gz"
fi

fasterq-dump --split-files "SRR556777"
gz1="$(_compress_if_exists 'SRR556777_1' || true)"
gz2="$(_compress_if_exists 'SRR556777_2' || true)"
gzs="$(_compress_if_exists 'SRR556777' || true)"

fasterq-dump --split-files "SRR556778"
gz1="$(_compress_if_exists 'SRR556778_1' || true)"
gz2="$(_compress_if_exists 'SRR556778_2' || true)"
gzs="$(_compress_if_exists 'SRR556778' || true)"

fasterq-dump --split-files "SRR556779"
gz1="$(_compress_if_exists 'SRR556779_1' || true)"
gz2="$(_compress_if_exists 'SRR556779_2' || true)"
gzs="$(_compress_if_exists 'SRR556779' || true)"

fasterq-dump --split-files "SRR556780"
gz1="$(_compress_if_exists 'SRR556780_1' || true)"
gz2="$(_compress_if_exists 'SRR556780_2' || true)"
gzs="$(_compress_if_exists 'SRR556780' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "MP32_1.fastq.gz"
fi

fasterq-dump --split-files "SRR556781"
gz1="$(_compress_if_exists 'SRR556781_1' || true)"
gz2="$(_compress_if_exists 'SRR556781_2' || true)"
gzs="$(_compress_if_exists 'SRR556781' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz2" ]; then
  mv -f "$gz2" "MP32_2.fastq.gz"
fi

fasterq-dump --split-files "SRR556782"
gz1="$(_compress_if_exists 'SRR556782_1' || true)"
gz2="$(_compress_if_exists 'SRR556782_2' || true)"
gzs="$(_compress_if_exists 'SRR556782' || true)"
if [ "$RENAME_SRA_TO_ORIGINAL" = "1" ] && [ -n "$gz1" ]; then
  mv -f "$gz1" "MP33_1.fastq.gz"
fi

fasterq-dump --split-files "SRR556783"
gz1="$(_compress_if_exists 'SRR556783_1' || true)"
gz2="$(_compress_if_exists 'SRR556783_2' || true)"
gzs="$(_compress_if_exists 'SRR556783' || true)"

fasterq-dump --split-files "SRR556784"
gz1="$(_compress_if_exists 'SRR556784_1' || true)"
gz2="$(_compress_if_exists 'SRR556784_2' || true)"
gzs="$(_compress_if_exists 'SRR556784' || true)"


# Option B: Direct download (larger .sra files)
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556767/SRR556767.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556768/SRR556768.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556769/SRR556769.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556770/SRR556770.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556771/SRR556771.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556772/SRR556772.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556773/SRR556773.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556774/SRR556774.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556775/SRR556775.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556776/SRR556776.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556777/SRR556777.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556778/SRR556778.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556779/SRR556779.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556780/SRR556780.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556781/SRR556781.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556782/SRR556782.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556783/SRR556783.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556784/SRR556784.2"

# --- Additional data files ---
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556772/SRR556772.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556774/SRR556774.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556775/SRR556775.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556776/SRR556776.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556780/SRR556780.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556781/SRR556781.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556782/SRR556782.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556767/SRR556767.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556768/SRR556768.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556769/SRR556769.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556770/SRR556770.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556771/SRR556771.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556773/SRR556773.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556777/SRR556777.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556778/SRR556778.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556779/SRR556779.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556783/SRR556783.2"
curl -L -O -C - "https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos5/sra-pub-run-32/SRR000/556/SRR556784/SRR556784.2"

echo "Download complete. Files saved to $OUTDIR"