├── .dockerignore ├── .gitattributes ├── .github ├── CODEOWNERS └── workflows │ ├── pre-commit.yml │ ├── publish-image.yml │ └── test.yml ├── .gitignore ├── .pre-commit-config.yaml ├── Dockerfile ├── LICENSE ├── Makefile ├── README.md ├── covid19_call_variants.ont.sh ├── covid19_call_variants.sh ├── data ├── ARTIC │ ├── ERR5284916.ONT.ARTICv3.40k.fastq.gz │ ├── SRR11314339.ARTICv1.100k.fastq.gz │ ├── SRR11314339.ARTICv1.100k.truth.tsv │ └── SRR16298166.fastq.gz ├── README.md ├── twist-target-capture │ ├── RNA_control_spike_in_10_6_100k_reads.fastq.gz │ └── truth.tsv └── wts │ └── SRR11092059_first_1M.fastq.gz ├── environment.yml ├── generate_tsv.py ├── insert_coverage_stats.py ├── jobscript.sh ├── post_process_variants.sh ├── reference ├── ARTIC-V1-nCoV-2019.scheme.bed ├── ARTIC-V1.bed ├── ARTIC-V2-nCoV-2019.scheme.bed ├── ARTIC-V2.bed ├── ARTIC-V3-nCoV-2019.scheme.bed ├── ARTIC-V3.bed ├── ARTIC-V4.bed ├── NC_045512.2.reference.fasta ├── aa_codes.txt ├── annot_table.orfs.txt ├── artic-primers-v1-and-v2.fa ├── data │ └── NC_045512.2 │ │ ├── genes.gbk │ │ ├── genes.gff │ │ └── sequences.fa ├── low_complexity_regions.txt ├── nCoV-2019.reference.fasta ├── nCoV-2019.reference.gbk ├── nCoV-2019.reference.gtf ├── primer_schemes │ └── nCoV-2019 │ │ ├── V1 │ │ ├── nCoV-2019.bed │ │ ├── nCoV-2019.insert.bed │ │ ├── nCoV-2019.primer.bed │ │ ├── nCoV-2019.reference.fasta │ │ ├── nCoV-2019.scheme.bed │ │ └── nCoV-2019.tsv │ │ ├── V2 │ │ ├── nCoV-2019.bed │ │ ├── nCoV-2019.insert.bed │ │ ├── nCoV-2019.primer.bed │ │ ├── nCoV-2019.reference.fasta │ │ ├── nCoV-2019.scheme.bed │ │ └── nCoV-2019.tsv │ │ ├── V3 │ │ ├── nCoV-2019.bed │ │ ├── nCoV-2019.insert.bed │ │ ├── nCoV-2019.primer.bed │ │ ├── nCoV-2019.reference.fasta │ │ ├── nCoV-2019.scheme.bed │ │ └── nCoV-2019.tsv │ │ ├── V4.1 │ │ ├── nCoV-2019.insert.bed │ │ ├── nCoV-2019.reference.fasta │ │ └── nCoV-2019.scheme.bed │ │ └── V4 │ │ ├── README │ │ ├── nCoV-2019.design.fasta │ │ ├── nCoV-2019.insert.bed │ │ ├── nCoV-2019.primer.bed │ │ ├── nCoV-2019.reference.fasta │ │ └── nCoV-2019.scheme.bed ├── snpEffect.config └── vcf_filter.edited.py ├── report.ipynb ├── requirements.txt ├── setup.cfg └── tests ├── conftest.py ├── test_artic.py ├── test_integration.py ├── test_post_process_variants.py ├── test_simulated_data.py ├── test_simulated_data_noindels.py └── test_twist.py /.dockerignore: -------------------------------------------------------------------------------- 1 | data/* 2 | benchmarks/ 3 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | *.fastq.gz filter=lfs diff=lfs merge=lfs -text 2 | -------------------------------------------------------------------------------- /.github/CODEOWNERS: -------------------------------------------------------------------------------- 1 | # This is a comment. 2 | # Each line is a file pattern followed by one or more owners. 3 | 4 | # These owners will be the default owners for everything in 5 | # the repo. 6 | * @clausmith @audy 7 | -------------------------------------------------------------------------------- /.github/workflows/pre-commit.yml: -------------------------------------------------------------------------------- 1 | name: pre-commit 2 | 3 | on: 4 | pull_request: 5 | push: 6 | branches: [master] 7 | 8 | jobs: 9 | pre-commit: 10 | runs-on: ubuntu-latest 11 | steps: 12 | - uses: actions/checkout@v3 13 | - uses: actions/setup-python@v4 14 | - uses: pre-commit/action@v3.0.0 15 | -------------------------------------------------------------------------------- /.github/workflows/publish-image.yml: -------------------------------------------------------------------------------- 1 | name: publish-to-quay 2 | on: 3 | push: 4 | branches: 5 | - master 6 | env: 7 | IMAGE_BASE: quay.io/refgenomics/covid19 8 | 9 | jobs: 10 | publish-to-quay: 11 | runs-on: ubuntu-latest 12 | environment: production 13 | steps: 14 | - uses: actions/checkout@v3 15 | with: 16 | fetch-depth: 1 17 | lfs: true 18 | 19 | - name: Login to Quay 20 | shell: bash 21 | run: echo ${{ secrets.QUAY_PASSWORD }} | docker login -u ${{ secrets.QUAY_USERNAME }} quay.io --password-stdin 22 | 23 | - name: Set env 24 | run: | 25 | echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV 26 | echo "--- building & pushing ${IMAGE_BASE}:${{env.RELEASE_VERSION}}" 27 | 28 | - name: Docker build 29 | shell: bash 30 | run: | 31 | export DOCKER_BUILDKIT=1 32 | docker build \ 33 | -t ${IMAGE_BASE}:${{env.RELEASE_VERSION}} \ 34 | --build-arg BUILDKIT_INLINE_CACHE=1 \ 35 | --cache-from ${IMAGE_BASE}:${{env.RELEASE_VERSION}} . 36 | 37 | - name: Push to quay 38 | shell: bash 39 | run: | 40 | docker push ${IMAGE_BASE}:${{env.RELEASE_VERSION}} 41 | -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- 1 | name: test 2 | on: 3 | push: 4 | branches: 5 | - master 6 | pull_request: 7 | 8 | jobs: 9 | integration: 10 | runs-on: ubuntu-latest 11 | steps: 12 | - uses: actions/checkout@v3 13 | with: 14 | fetch-depth: 1 15 | lfs: true 16 | 17 | - name: Set up Python 3.7 18 | uses: actions/setup-python@v4 19 | with: 20 | python-version: 3.7 21 | 22 | - name: Cache virtualenv 23 | uses: actions/cache@v3 24 | id: cache-pip 25 | with: 26 | path: venv 27 | key: venv-${{ hashFiles('requirements.txt') }}-0.4.1-0.1.0 28 | 29 | - name: Install dependencies in a venv 30 | if: steps.cache-pip.outputs.cache-hit != 'true' 31 | run: | 32 | python3 -m venv venv 33 | . venv/bin/activate 34 | pip install -q -U pip 35 | pip install --progress-bar=off -r requirements.txt 36 | 37 | - name: Docker build 38 | run: | 39 | docker build -t covid19 . 40 | 41 | - name: Run lint checks & tests 42 | run: | 43 | . venv/bin/activate 44 | make test 45 | 46 | - name: Upload Report PDFs 47 | uses: actions/upload-artifact@v2 48 | with: 49 | name: example reports 50 | path: report-*.pdf 51 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | .python-version 3 | *.ipynb 4 | .vscode/* 5 | *.fai 6 | __pycache__* 7 | -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- 1 | repos: 2 | - repo: https://github.com/ambv/black 3 | rev: 22.10.0 4 | hooks: 5 | - id: black 6 | language_version: python3 7 | args: [-l 100] 8 | - repo: https://github.com/sqlalchemyorg/zimports 9 | rev: 0.3.0 10 | hooks: 11 | - id: zimports 12 | exclude: ^migrations/ 13 | - repo: https://github.com/PyCQA/flake8 14 | rev: 3.9.1 15 | hooks: 16 | - id: flake8 17 | additional_dependencies: [flake8-bugbear==19.3.0] 18 | - repo: https://github.com/pre-commit/pre-commit-hooks 19 | rev: v3.4.0 # Use the ref you want to point at 20 | hooks: 21 | - id: trailing-whitespace 22 | - id: end-of-file-fixer 23 | - id: check-yaml 24 | args: [--allow-multiple-documents] 25 | - repo: https://github.com/kynan/nbstripout 26 | rev: 0.3.9 27 | hooks: 28 | - id: nbstripout 29 | files: ".ipynb" 30 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM python:3.8 2 | 3 | # dependencies for generating report 4 | ENV LD_LIBRARY_PATH=/usr/local/lib 5 | 6 | # install dnaplotlib for creating the genome diagram 7 | # hard-pin some dependencies for onecodex 0.9.6 8 | RUN pip install numpy pysam==0.16 biopython==1.78 PyVCF dnaplotlib onecodex[all,reports]==v0.9.6 \ 9 | nbconvert==5.6.1 click==8.0.4 Jinja2==3.0.3 10 | 11 | USER root 12 | RUN apt-get update \ 13 | && apt-get autoclean \ 14 | && apt-get install -y gnupg curl \ 15 | && curl -sL https://deb.nodesource.com/setup_14.x | bash - \ 16 | && apt-get install -y nodejs npm \ 17 | unzip \ 18 | default-jre \ 19 | && apt-get clean \ 20 | && rm -rf /var/lib/apt/lists/* 21 | 22 | RUN npm install -g --unsafe-perm vega vega-lite vega-cli canvas 23 | 24 | WORKDIR /opt 25 | 26 | # install Conda 27 | RUN curl https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh \ 28 | > Miniconda3-latest-Linux-x86_64.sh \ 29 | && yes \ 30 | | bash Miniconda3-latest-Linux-x86_64.sh -b -p /opt/miniconda3 31 | 32 | # put system path first so that conda doesn't override python 33 | ENV PATH=$PATH:/opt/miniconda3/bin/ 34 | 35 | # install environment's dependencies 36 | COPY environment.yml /opt/ 37 | RUN conda env create --solver libmamba -f /opt/environment.yml 38 | 39 | # install artic into conda environment "artic" 40 | RUN git clone https://github.com/artic-network/fieldbioinformatics.git \ 41 | && cd fieldbioinformatics \ 42 | && git checkout 1.2.1 \ 43 | && conda env create --solver libmamba -f environment.yml \ 44 | && conda run -n artic python setup.py install \ 45 | && conda clean -a 46 | 47 | # install snpeff 48 | RUN curl -k -L https://sourceforge.net/projects/snpeff/files/snpEff_v4_5covid19_core.zip/download --output snpEff_v4_5covid19_core.zip\ 49 | && unzip snpEff_v4_5covid19_core.zip \ 50 | && mv snpEff /usr/local/bin \ 51 | && rm snpEff_v4_5covid19_core.zip 52 | 53 | COPY reference /reference 54 | 55 | # ARTIC's vcf_filter.py breaks when a variant's call score is "." 56 | # I fixed this in reference/vcf_filter_edited.py 57 | COPY /reference/vcf_filter.edited.py /root/miniconda3/envs/artic/lib/python3.6/site-packages/artic-1.2.1-py3.6.egg/artic/vcf_filter.py 58 | 59 | # Add ARTIC 4.1 patch as a primer scheme 60 | RUN mkdir /primer_schemes 61 | COPY /reference/primer_schemes/ /primer_schemes/ 62 | 63 | 64 | # install pangolin into conda environment "pangolin" 65 | RUN conda create -n pangolin 66 | RUN conda install --solver libmamba -c bioconda -c conda-forge -c defaults -n pangolin pangolin==4.3 67 | 68 | # install nextclade & download sars-cov-2 dataset 69 | RUN curl -fsSL 'https://github.com/nextstrain/nextclade/releases/download/2.14.0/nextclade-x86_64-unknown-linux-gnu' -o '/usr/local/bin/nextclade' && chmod +x /usr/local/bin/nextclade 70 | RUN /usr/local/bin/nextclade dataset get --name 'sars-cov-2' --output-dir '/usr/local/bin/data/sars-cov-2' 71 | 72 | # Setup onecodex_pdf export option 73 | RUN mkdir -p /usr/local/share/fonts \ 74 | && cp /usr/local/lib/python3.8/site-packages/onecodex/assets/fonts/*.otf /usr/local/share/fonts \ 75 | && fc-cache 76 | 77 | ADD jobscript.sh /usr/local/bin/ 78 | ADD covid19_call_variants.sh /usr/local/bin/ 79 | ADD covid19_call_variants.ont.sh /usr/local/bin/ 80 | ADD post_process_variants.sh /usr/local/bin/ 81 | ADD generate_tsv.py /usr/local/bin 82 | ADD insert_coverage_stats.py /usr/local/bin 83 | ADD report.ipynb / 84 | 85 | ENV MPLCONFIGDIR /tmp 86 | RUN chmod -R a+rwx /reference /primer_schemes /report.ipynb 87 | 88 | # so we can include git hash in report for tracking 89 | COPY .git /.git 90 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 Reference Genomics, Inc. 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | test: 2 | py.test -vv tests/ 3 | @echo "Successfully ran all tests." 4 | 5 | lint: 6 | pre-commit run --all-files 7 | @echo "Successfully linted all files." 8 | 9 | build: build/local build/docker 10 | @echo "Set up environment and built Docker image" 11 | 12 | build/local: 13 | pip install -r requirements.txt 14 | 15 | build/docker: 16 | docker build -t covid19 . 17 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # SARS-CoV-2 variant calling 2 | 3 | [![Actions Status](https://github.com/onecodex/sars-cov-2/workflows/test/badge.svg)](https://github.com/onecodex/sars-cov-2/actions) [![Actions Status](https://github.com/onecodex/sars-cov-2/workflows/pre-commit/badge.svg)](https://github.com/onecodex/sars-cov-2/actions) [![Docker Repository on Quay](https://quay.io/repository/refgenomics/covid19/status "Docker Repository on Quay")](https://quay.io/repository/refgenomics/covid19) 4 | 5 | This pipeline performs consensus assembly and variant calling for amplicon sequencing data (Illumina or Oxford Nanopore) generated using the [`ARTIC protocol`](https://artic.network/ncov-2019). The user can specify a primer set to be used for trimming alignments; this is assumed to be **ARTIC V4.1** if not specified. 6 | 7 | # Pipeline overview 8 | 9 | The pipeline takes in a single FASTQ file (interleaved if Illumina) and processes it as follows: 10 | 11 | 1. Map reads to the Wuhan-Hu-1 reference and trim ARTIC primer sequences 12 | 2. Generate a consensus sequence (bcftools for Illumina; medaka for Oxford Nanopore) 13 | 3. Call variants with a limit of 200x coverage, as recommended by the ARTIC network. While indels and SNVs are reported for Illumina data, only SNVs are reported for Oxford Nanopore based on benchmarking studies that indicate [`small indel detection is unreliable.`](https://doi.org/10.1038/s41467-020-20075-6) 14 | 4. Assign Pangolin and Nextclade lineages 15 | 5. Predict amino acid mutations 16 | 6. Predict consequences of compound variants (ex: adjacent SNVs on the same codon; frame-shifting indels followed by frame-restoring indels) 17 | 18 | Rigorous quality checks are implemented throughout the pipeline, including flagging of variants in low complexity regions for error-prone Oxford Nanopore data and conservative lineage calls (no lineage assignments will be reported if the consensus sequence has too many N’s or is too fragmented). 19 | 20 | In addition to a results JSON, a PDF report is generated for each sample that tells you at a glance whether primer dropout has occurred, which amino acid mutations are present, and whether the sample contains a variant of concern. An example report is shown below. 21 | 22 | ![Example report](https://www.onecodex.com/uploads/sars-cov-2-report-2021-example.png) 23 | 24 | # Quick start 25 | 26 | ```sh 27 | docker build -t covid19 . 28 | ``` 29 | 30 | Run the pipeline in the Docker image (note that fastq files are stored in git lfs so you may need to `git lfs pull` before executing): 31 | 32 | ```sh 33 | docker \ 34 | run \ 35 | --rm \ 36 | --workdir /data \ 37 | --volume `pwd`:/data \ 38 | --entrypoint /bin/bash \ 39 | --env ONE_CODEX_REPORT_FILENAME=report.pdf \ 40 | --env INSTRUMENT_VENDOR=Illumina \ 41 | --env ARTIC_PRIMER_VERSION=4.1 \ 42 | covid19 \ 43 | jobscript.sh \ 44 | data/twist-target-capture/RNA_control_spike_in_10_6_100k_reads.fastq.gz 45 | ``` 46 | 47 | For Oxford Nanopore: 48 | 49 | ```sh 50 | docker \ 51 | run \ 52 | --rm \ 53 | --workdir /data \ 54 | --volume `pwd`:/data \ 55 | --entrypoint /bin/bash \ 56 | --env ONE_CODEX_REPORT_FILENAME=report.pdf \ 57 | --env INSTRUMENT_VENDOR="Oxford Nanopore" \ 58 | --env ARTIC_PRIMER_VERSION=4.1 \ 59 | covid19 \ 60 | jobscript.sh \ 61 | data/twist-target-capture/RNA_control_spike_in_10_6_100k_reads.fastq.gz 62 | ``` 63 | 64 | # Development & Testing 65 | 66 | To run tests, run `pytest`. 67 | 68 | The `requirements.txt` file lists dependencies for quickly running some golden output tests across a variety of datasets. This repository is set up to use Github Actions to automatically build the Docker image and run these tests, to ensure that parameter and pipeline changes don't affect variant calls or consensus sequence generation. 69 | 70 | Currently, integration tests are run on: 71 | * Simulated Illumina data from the SARS-CoV-2 reference including _simulated variants across the genome_ 72 | * Example Twist hybrid capture data (Illumina) 73 | * Example ARTIC v1 amplicon sequencing data (Illumina) 74 | 75 | It also uses [`pre-commit`](https://pre-commit.com/) to keep things clean and orderly. To get started, first install the requirements (Python 3 required): `pip install -r requirements.txt`. Then install the `pre-commit` hooks: `pre-commit install --install-hooks`. 76 | 77 | # Acknowledgments 78 | 79 | Many thanks are due across the community, including _but not limited_ to: 80 | - [@tseemann](https://github.com/tseemann), [@gkarthik](https://github.com/gkarthik), [@nickloman](https://github.com/nickloman), and many others for quick discussions on optimal SNP calling for both amplicon (ARTIC primers) and non-amplicon sequencing approaches 81 | - [@nickloman](https://github.com/nickloman), [@joshquick](https://github.com/joshquick), [@rambaut](https://github.com/rambaut), [@k-florek](https://github.com/k-florek) and others working on the [ARTIC protocol for SARS-CoV-2](https://github.com/artic-network/artic-ncov2019) 82 | - [@pangolin](https://github.com/cov-lineages/pangolin) and [@nextclade](https://github.com/nextstrain/nextclade) for surveillance tools 83 | - [Voigt lab](http://web.mit.edu/voigtlab/) for [dnaplotlib](https://github.com/VoigtLab/dnaplotlib) 84 | -------------------------------------------------------------------------------- /covid19_call_variants.ont.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # To run this script: 4 | # ./covid19_call_variants.artic.sh 5 | 6 | # This pipeline needs the fastq file of "pass" reads 7 | 8 | set -e 9 | 10 | sample_filename="${1}" 11 | artic_primer_version="${2}" 12 | artic_primer_scheme="V${artic_primer_version}" 13 | 14 | #### Default parameters 15 | 16 | : "${medaka_model:=r941_min_high_g360}" # Default Medaka model is for MinION (or GridION) R9.4.1 flowcells using the fast Guppy basecaller version 3.6.0, high accuracy base calling 17 | : "${min_read_length:=400}" 18 | : "${max_read_length:=600}" # Filters out all reads above 600 bp 19 | : "${min_read_quality:=7}" # Filters out all reads below a quality of 7 20 | : "${normalized_coverage:=200}" # Normalize to coverage of 200x to reduce runtime 21 | : "${threads:=6}" # Number of threads for running the minimap2/medaka pipeline 22 | # shellcheck disable=SC2154 23 | : "${prefix=report}" 24 | 25 | #### 1. Length and quality filtering 26 | 27 | echo "[1] trimming/filtering reads with seqkit" 28 | # shellcheck disable=SC1091 29 | source activate jobscript-env 30 | 31 | # shellcheck disable=SC2002 32 | cat "${sample_filename}" \ 33 | | seqkit \ 34 | seq \ 35 | --min-len ${min_read_length} \ 36 | --max-len ${max_read_length} \ 37 | --min-qual ${min_read_quality} \ 38 | --out-file "${prefix}.filtered.fastq" 39 | 40 | # shellcheck disable=SC2086 41 | echo "total reads after filtering: $(wc -l ${prefix}.filtered.fastq)" 42 | 43 | # shellcheck disable=SC1091 44 | source deactivate 45 | 46 | #### 2. Alignment, variant calling, and consensus creation 47 | # minimap2 alignment, Medaka for consensus creation and variant calling (experimental) 48 | 49 | echo "[2] running ARTIC pipeline with ${artic_primer_scheme} primers" 50 | conda run -n artic \ 51 | artic minion \ 52 | --medaka \ 53 | --medaka-model "${medaka_model}" \ 54 | --normalise "${normalized_coverage}" \ 55 | --scheme-directory /primer_schemes \ 56 | --threads "${threads}" \ 57 | --read-file "${prefix}.filtered.fastq" \ 58 | --no-longshot \ 59 | --strict \ 60 | nCoV-2019/V4.1 \ 61 | "${prefix}" 62 | 63 | #### 3. Variant annotation 64 | gunzip "${prefix}.pass.vcf.gz" 65 | 66 | # Replace the vcf chromosome name to the verison that snpEff will recognize 67 | # (GenBank sequence NC_045512.2, which is identical to RefSeq MN908947.3) 68 | echo "[3] cleaning up" 69 | ### Move files around and clean up 70 | mv "${prefix}.pass.vcf" variants.vcf 71 | mv "${prefix}.consensus.fasta" consensus.fa 72 | mv "${prefix}.sorted.bam" covid19.bam 73 | mv "${prefix}.sorted.bam.bai" covid19.bam.bai 74 | mv "${prefix}.minion.log.txt" artic.log 75 | rm -rf "${prefix}.*" 76 | 77 | ##### 6. Run generate_tsv.py 78 | 79 | echo "[ ] finished!" 80 | -------------------------------------------------------------------------------- /covid19_call_variants.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Example command: `bash covid19_call_variants.sh 4 | # reference/nCoV-2019.reference.fasta 5 | # data/twist-target-capture/RNA_control_spike_in_10_6_100k_reads.fastq.gz 6 | # reference/artic-v1/ARTIC-V1.bed` 7 | 8 | # shellcheck disable=SC1091 9 | source activate jobscript-env # noqa 10 | 11 | set -eou pipefail 12 | 13 | # argv 14 | : "${reference:=${1}}" 15 | : "${input_fastq:=${2}}" 16 | : "${primer_bed_file:=${3}}" 17 | : "${consensus_mask_depth:=${4}}" 18 | 19 | # defaults 20 | 21 | : "${threads:=4}" 22 | : "${prefix:=results}" 23 | : "${min_quality:=20}" 24 | 25 | echo "reference=${reference}" 26 | echo "input_fastq=${input_fastq}" 27 | echo "primer_bed_file=${primer_bed_file}" 28 | echo "threads=${threads}" 29 | echo "min_quality=${min_quality}" 30 | 31 | # minimap2 32 | 33 | # Trim polyA tail for alignment (33 bases) 34 | seqtk trimfq -e 33 "${reference}" > trimmed-reference.fasta 35 | 36 | # shellcheck disable=SC2086 37 | echo "[1] mapping reads with minimap2" 38 | minimap2 \ 39 | -K 20M \ 40 | -a \ 41 | -x sr \ 42 | -t "${threads}" \ 43 | trimmed-reference.fasta \ 44 | "${input_fastq}" \ 45 | | samtools \ 46 | view \ 47 | -u \ 48 | -h \ 49 | -q $min_quality \ 50 | -F \ 51 | 4 - \ 52 | | samtools \ 53 | sort \ 54 | --threads "${threads}" \ 55 | - \ 56 | > "${prefix}.sorted.bam" 57 | 58 | # Trim with ivar 59 | echo "[2] Trimming with ivar" 60 | samtools index "${prefix}.sorted.bam" 61 | 62 | # samtools flagstat "${prefix}.sorted.bam" 63 | ivar \ 64 | trim \ 65 | -e \ 66 | -q 0 \ 67 | -i "${prefix}.sorted.bam" \ 68 | -b "${primer_bed_file}" \ 69 | -p "${prefix}.ivar" 70 | 71 | echo "[3] Sorting and indexing trimmed BAM" 72 | samtools \ 73 | sort \ 74 | -@ "${threads}" \ 75 | "${prefix}.ivar.bam" \ 76 | > "${prefix}.sorted.bam" 77 | 78 | samtools \ 79 | index \ 80 | "${prefix}.sorted.bam" 81 | 82 | echo "[4] Generating pileup" 83 | bcftools \ 84 | mpileup \ 85 | --annotate FORMAT/AD,INFO/AD \ 86 | --fasta-ref "${reference}" \ 87 | --max-depth 200 \ 88 | --no-BAQ \ 89 | "${prefix}.sorted.bam" \ 90 | | bcftools call \ 91 | --variants-only \ 92 | --multiallelic-caller \ 93 | --output-type z \ 94 | --output "${prefix}.raw.vcf.gz" 95 | 96 | # save raw vcf 97 | bcftools view \ 98 | < "${prefix}.raw.vcf.gz" \ 99 | > "${prefix}.raw.vcf" 100 | 101 | # filter out low-quality variants 102 | bcftools view \ 103 | --exclude "QUAL<150" \ 104 | --output-type z \ 105 | < "${prefix}.raw.vcf.gz" \ 106 | > "${prefix}.vcf.gz" 107 | 108 | # bcftools index requires a .vcf.gz file 109 | # in the special indexed gzip format (can't use regular gzip) 110 | bcftools index "${prefix}.vcf.gz" 111 | 112 | # We want to generate a consensus sequence with: 113 | # 1. well-supported deletions marked with '-' 114 | # 2. low-coverage regions masked with N 115 | 116 | # vcf is 1-based while bedgraph is 0-based; thus the somewhat convoluted path to mask.bed 117 | bcftools query -f'%CHROM\t%POS0\t%END\n' ${prefix}.vcf.gz > variants.bed 118 | # get low coverage sites in bedgraph format 119 | bedtools genomecov -bga -ibam ${prefix}.sorted.bam | awk -v var="$consensus_mask_depth" '$4 < var' > low_coverage_sites.bed 120 | bedtools subtract -a low_coverage_sites.bed -b variants.bed > mask.bed 121 | # generate consensus and rename header 122 | bcftools consensus \ 123 | --fasta-ref "${reference}" \ 124 | --mark-del '-' \ 125 | -m mask.bed \ 126 | "${prefix}.vcf.gz" \ 127 | | sed \ 128 | '/>/ s/$/ | One Codex consensus sequence/' \ 129 | > "${prefix}.consensus.fa" 130 | 131 | zcat "${prefix}.vcf.gz" > "${prefix}.vcf" 132 | 133 | # Move some files around and clean up 134 | mv "${prefix}.consensus.fa" "consensus.fa" 135 | mv "${prefix}.vcf" "variants.vcf" 136 | mv "${prefix}.sorted.bam" "covid19.bam" 137 | mv "${prefix}.sorted.bam.bai" "covid19.bam.bai" 138 | mv "${prefix}.raw.vcf" "variants.raw.vcf" 139 | rm "${prefix}"* 140 | 141 | echo "[ ] Finished!" 142 | -------------------------------------------------------------------------------- /data/ARTIC/ERR5284916.ONT.ARTICv3.40k.fastq.gz: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:481d16ab682326d7de96b8b5e3cf381cf77e50dac9b840334b1e5624367068fb 3 | size 4169036 4 | -------------------------------------------------------------------------------- /data/ARTIC/SRR11314339.ARTICv1.100k.fastq.gz: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:111297892028c0aa73c79eb1c2ccc517ac80781a97d7a9d238d32066f4c25d54 3 | size 4676404 4 | -------------------------------------------------------------------------------- /data/ARTIC/SRR11314339.ARTICv1.100k.truth.tsv: -------------------------------------------------------------------------------- 1 | Replicate Position OriginalBase NewBase 2 | SRR11314339.ARTICv1.100k.truth.tsv 241 C T 3 | SRR11314339.ARTICv1.100k.truth.tsv 3037 C T 4 | SRR11314339.ARTICv1.100k.truth.tsv 14408 C T 5 | SRR11314339.ARTICv1.100k.truth.tsv 18814 C T 6 | SRR11314339.ARTICv1.100k.truth.tsv 23403 A G 7 | -------------------------------------------------------------------------------- /data/ARTIC/SRR16298166.fastq.gz: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:04204d235bb010a7643eaec8ea267f556e337050842d44e00756094d0809d240 3 | size 250181 4 | -------------------------------------------------------------------------------- /data/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/onecodex/sars-cov-2/2fd8baffdd8ef71d2383d621cc1f78e43807f94e/data/README.md -------------------------------------------------------------------------------- /data/twist-target-capture/RNA_control_spike_in_10_6_100k_reads.fastq.gz: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:528b92bd66ddc0a52ddf1be1772281e82f7dd637662ac1f46d84488922c71010 3 | size 4223308 4 | -------------------------------------------------------------------------------- /data/twist-target-capture/truth.tsv: -------------------------------------------------------------------------------- 1 | Replicate Position OriginalBase NewBase 2 | RNA_control_spike_in_10_6_100k_reads.fastq.gz 19065 T C 3 | RNA_control_spike_in_10_6_100k_reads.fastq.gz 22303 T G 4 | RNA_control_spike_in_10_6_100k_reads.fastq.gz 26144 G T 5 | RNA_control_spike_in_10_6_100k_reads.fastq.gz 29749 ACGATCGAGTG A 6 | RNA_control_spike_in_10_6_100k_reads.fastq.gz 29759 G A 7 | -------------------------------------------------------------------------------- /data/wts/SRR11092059_first_1M.fastq.gz: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:bd5a15d5a0575c6ffeec863aed30362883c4ca61c53da02169c128895a1ce83f 3 | size 114304000 4 | -------------------------------------------------------------------------------- /environment.yml: -------------------------------------------------------------------------------- 1 | name: jobscript-env 2 | 3 | channels: 4 | - conda-forge 5 | - bioconda 6 | - defaults 7 | 8 | dependencies: 9 | - bedtools 10 | - seaborn 11 | - art=2016.06.05 12 | - ivar 13 | - minimap2 14 | - samtools 15 | - seqtk 16 | - seqkit 17 | - bcftools>=1.15 18 | -------------------------------------------------------------------------------- /generate_tsv.py: -------------------------------------------------------------------------------- 1 | import pandas as pd 2 | 3 | colnames = [ 4 | "region", 5 | "position", 6 | "ref allele", 7 | "alt allele", 8 | "frequencies", 9 | "protein sequence variant", 10 | ] 11 | 12 | df_variants = pd.read_csv("snpeff.tsv", skiprows=[0], names=colnames, sep="\t| ", engine="python") 13 | 14 | for i in df_variants.index: 15 | ref_reads = int(df_variants.loc[i, "frequencies"].rsplit(",", 3)[0]) + int( 16 | df_variants.loc[i, "frequencies"].rsplit(",", 3)[1] 17 | ) 18 | alt_reads = int(df_variants.loc[i, "frequencies"].rsplit(",", 3)[2]) + int( 19 | df_variants.loc[i, "frequencies"].rsplit(",", 3)[3] 20 | ) 21 | all_reads = ref_reads + alt_reads 22 | alt_freq = alt_reads / (all_reads) * 100 23 | df_variants.loc[i, "depth"] = "{:0.0f}".format(all_reads) 24 | if alt_freq == 100: 25 | df_variants.loc[i, "alt frequency"] = "100%" 26 | else: 27 | df_variants.loc[i, "alt frequency"] = "{:0.2f}%".format(alt_freq) 28 | 29 | df_variants = df_variants.drop(columns=["frequencies"]) 30 | 31 | 32 | df_orfs = pd.read_csv( 33 | "/annot_table.orfs.txt", 34 | sep="\t", 35 | header=None, 36 | usecols=[0, 1, 2], 37 | names=["orf", "start", "stop"], 38 | ) 39 | for i in df_variants.index: 40 | for j in df_orfs.index: 41 | if df_orfs.loc[j, "start"] <= df_variants.loc[i, "position"] <= df_orfs.loc[j, "stop"]: 42 | df_variants.loc[i, "orf"] = df_orfs.loc[j, "orf"] 43 | 44 | # os.path.join(workdir, "variants.tsv") 45 | df_variants.to_csv("variants.tsv", sep="\t") 46 | -------------------------------------------------------------------------------- /insert_coverage_stats.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | """Generate summary statistics of read coverage by region defined in a bedfile. 4 | Use to evaluate per-amplicon performance of primers for a sample.""" 5 | 6 | import argparse 7 | from io import StringIO 8 | import subprocess 9 | 10 | import matplotlib.pyplot as plt 11 | import pandas as pd 12 | import seaborn as sns 13 | 14 | 15 | def parse_args(): 16 | parser = argparse.ArgumentParser(description=__doc__) 17 | parser.add_argument("bedfile", help="Amplicon insert regions bedfile path") 18 | parser.add_argument("alignments", help="Alignments .bam path") 19 | parser.add_argument( 20 | "--prop_cov", 21 | help="Proportion of a read that must be mapped to a region " 22 | "for it to count towards coverage. Default: 0.90", 23 | default="0.90", 24 | ) 25 | args = parser.parse_args() 26 | return args 27 | 28 | 29 | def run(args): 30 | # Run bedtools to get per-base coverage for reads that map to each insert 31 | cmd = [ 32 | "bedtools", 33 | "coverage", 34 | "-F", 35 | args.prop_cov, 36 | "-d", 37 | "-a", 38 | args.bedfile, 39 | "-b", 40 | args.alignments, 41 | ] 42 | a = subprocess.run(cmd, capture_output=True, check=True) 43 | df = pd.read_csv( 44 | StringIO(a.stdout.decode("utf-8")), 45 | sep="\t", 46 | header=None, 47 | names=[ 48 | "chrom", 49 | "chrom_start", 50 | "chrom_end", 51 | "region_name", 52 | "primer_pool", 53 | "strand", 54 | "position", 55 | "depth", 56 | ], 57 | ) 58 | # Generate summary statistics of coverage by insert and save to file 59 | insert_stats_data = [] 60 | for insert in df["region_name"].unique(): 61 | insert_depth_stats = df[df["region_name"] == insert]["depth"].describe() 62 | insert_depth_stats["insert_name"] = str(insert) 63 | insert_stats_data.append(insert_depth_stats) 64 | insert_stats_df = pd.DataFrame(insert_stats_data).reset_index(drop=True) 65 | insert_stats_df.rename(columns={"count": "insert_length"}, inplace=True) 66 | insert_stats_df = insert_stats_df[ 67 | [ 68 | "insert_name", 69 | "insert_length", 70 | "mean", 71 | "std", 72 | "min", 73 | "25%", 74 | "50%", 75 | "75%", 76 | "max", 77 | ] 78 | ] 79 | insert_stats_df.to_csv("depth_by_insert_stats.tsv", index=False, sep="\t") 80 | 81 | # Save a boxplot of coverage by insert 82 | ax, fig = plt.subplots(figsize=[18, 5]) 83 | sns.boxplot(x="region_name", y="depth", data=df, color="lightcyan", linewidth=1) 84 | plt.xticks(rotation=90, size=8) 85 | plt.savefig("depth_by_insert_boxplot.png", dpi=300, bbox_inches="tight") 86 | 87 | 88 | if __name__ == "__main__": 89 | args = parse_args() 90 | run(args) 91 | -------------------------------------------------------------------------------- /jobscript.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -euo pipefail 4 | 5 | sample_filename="${1}" 6 | 7 | : "${INSTRUMENT_VENDOR:=Illumina}" 8 | : "${ONE_CODEX_REPORT_FILENAME:=report.pdf}" 9 | : "${ONE_CODEX_REPORT_LOGO:=}" 10 | : "${ARTIC_PRIMER_VERSION:=4.1}" 11 | : "${CONSENSUS_MASK_DEPTH:=10}" 12 | 13 | PRIMER_BEDFILE="/primer_schemes/nCoV-2019/V${ARTIC_PRIMER_VERSION}/nCoV-2019.scheme.bed" 14 | INSERT_BEDFILE="/primer_schemes/nCoV-2019/V${ARTIC_PRIMER_VERSION}/nCoV-2019.insert.bed" 15 | 16 | echo "--- sample_filename=${sample_filename}" 17 | echo "--- INSTRUMENT_VENDOR=${INSTRUMENT_VENDOR}" 18 | 19 | # generates the following files: 20 | # variants.vcf 21 | # covid19.bam (sorted+bai) 22 | # consensus.fa 23 | if [ "${INSTRUMENT_VENDOR}" == "Oxford Nanopore" ]; then 24 | covid19_call_variants.ont.sh \ 25 | "${sample_filename}" \ 26 | "${ARTIC_PRIMER_VERSION}" 27 | else 28 | covid19_call_variants.sh \ 29 | /reference/nCoV-2019.reference.fasta \ 30 | "${sample_filename}" \ 31 | "${PRIMER_BEDFILE}" \ 32 | "${CONSENSUS_MASK_DEPTH}" 33 | fi 34 | 35 | echo "Annotating VCF file using snpEff" 36 | # match chromosome name between the genbank file, fasta files, and vcf 37 | # MN908947.3 and NC_045512.2 are identical genomes (Refseq vs assembly numbers) 38 | sed -i "s|MN908947.3|NC_045512.2|" variants.vcf 39 | 40 | # build custom snpeff database 41 | java -Xmx4g -jar /usr/local/bin/snpEff/snpEff.jar build -c /reference/snpEffect.config -noGenome -gff3 -v NC_045512.2 42 | 43 | # run snpeff annotation on vcf 44 | # snpeff expects your sequence.fa and genes.gbk file to be in ../data/NC_045512.2 relative to snpEffect.config 45 | java -Xmx4g -jar /usr/local/bin/snpEff/snpEff.jar ann NC_045512.2 -verbose -config /reference/snpEffect.config -fastaProt variants.snpeff.vcf.faa -csvStats variants.snpeff.vcf.stats variants.vcf > variants.snpeff.vcf 46 | 47 | # run bcftools csq to link consecutive SNPs on the same codon (BCSQ field) 48 | conda run -n jobscript-env bcftools csq --force --phase a -f /reference/NC_045512.2.reference.fasta -g /reference/data/NC_045512.2/genes.gff -Ov variants.snpeff.vcf -o variants.snpeff.csq.vcf 49 | 50 | # Extract fields of interest from annotated vcf into a tsv, treating SR and DP4 as essentially identical information 51 | # In the Medaka-generated vcf for ONT data: 52 | # SR="Depth of spanning reads by strand which best align to each allele (ref fwd, ref rev, alt1 fwd, alt1 rev, etc.)" 53 | # In the bcftools-generated vcf for Illumina data: 54 | # DP4="Number of high-quality ref-forward , ref-reverse, alt-forward and alt-reverse bases" 55 | if [ "${INSTRUMENT_VENDOR}" == "Oxford Nanopore" ]; then 56 | java -Xmx4g -jar /usr/local/bin/snpEff/SnpSift.jar extractFields variants.snpeff.csq.vcf POS REF ALT SR ANN[0].EFFECT ANN[0].HGVS_P BCSQ > variants.snpeff.tsv 57 | sed -i 's/SR/allele reads by strand/' variants.snpeff.tsv 58 | else 59 | java -Xmx4g -jar /usr/local/bin/snpEff/SnpSift.jar extractFields variants.snpeff.csq.vcf POS REF ALT DP4 ANN[0].EFFECT ANN[0].HGVS_P BCSQ > variants.snpeff.tsv 60 | sed -i 's/DP4/allele reads by strand/' variants.snpeff.tsv 61 | fi 62 | 63 | # edit the effects field to make it more readable in the table 64 | sed -i 's/_/ /g' variants.snpeff.tsv 65 | sed -i 's/&/; /g' variants.snpeff.tsv 66 | 67 | # needed by report 68 | echo "Getting depth using samtools" 69 | conda run -n jobscript-env \ 70 | samtools depth -a covid19.bam > snps.depth 71 | 72 | # Count total mapped reads 73 | conda run -n jobscript-env samtools view -F 2308 covid19.bam | wc -l > total_mapped_reads.txt 74 | 75 | # Generate per-insert depth stats and boxplot 76 | conda run -n jobscript-env insert_coverage_stats.py ${INSERT_BEDFILE} covid19.bam 77 | 78 | # call strains 79 | 80 | # Assign NextClade clade 81 | echo "Assigning NextClade Clade" 82 | 83 | #adding new arg for dataset 'sars-cov-2', 'run' and removing --input-fasta since no longer supported 84 | /usr/local/bin/nextclade run --input-dataset /usr/local/bin/data/sars-cov-2 --output-tsv nextclade.tsv --output-json nextclade.json consensus.fa 85 | 86 | # Assign Pango lineage 87 | 88 | # TODO: copy pangolin database data somewhere. 89 | echo "Assigning Pango Lineage" 90 | conda run -n pangolin pangolin consensus.fa --outfile pangolin.csv 91 | 92 | ls -lash / 93 | 94 | # render notebook 95 | cp /report.ipynb . 96 | cp /reference/annot_table.orfs.txt . 97 | cp /reference/low_complexity_regions.txt . 98 | cp /reference/aa_codes.txt . 99 | 100 | echo "Generating notebook!" 101 | 102 | #shellcheck disable=SC1000-SC9999 103 | RESULTS_DIR="$(pwd)" SAMPLE_PATH="${sample_filename}" PYTHONWARNINGS="ignore" GIT_DIR="/.git" GIT_WORK_TREE="/" INSTRUMENT_VENDOR="${INSTRUMENT_VENDOR}" ONE_CODEX_REPORT_FILENAME="${ONE_CODEX_REPORT_FILENAME}" ONE_CODEX_REPORT_LOGO="${ONE_CODEX_REPORT_LOGO}" ARTIC_PRIMER_VERSION="${ARTIC_PRIMER_VERSION}" conda run -n jobscript-env jupyter nbconvert --execute --to onecodex_pdf --ExecutePreprocessor.timeout=-1 --output="${ONE_CODEX_REPORT_FILENAME}" --output-dir="." report.ipynb 104 | 105 | echo "Removing unnecessary files" 106 | rm -f aa_codes.txt \ 107 | annot_table.orfs.txt \ 108 | low_complexity_regions.txt \ 109 | low_coverage_sites.bed \ 110 | mask.bed \ 111 | report.ipynb \ 112 | total_mapped_reads.txt \ 113 | trimmed-reference.fasta \ 114 | variants.bed \ 115 | variants.raw.vcf \ 116 | variants.snpeff.csq.vcf.gz.tbi \ 117 | variants.snpeff.tsv \ 118 | variants.snpeff.vcf \ 119 | variants.snpeff.vcf.faa \ 120 | variants.snpeff.vcf.stats \ 121 | variants.snpeff.vcf.stats.genes.txt \ 122 | variants.vcf 123 | 124 | mv variants.snpeff.csq.vcf variants.vcf 125 | 126 | echo "Finished!" 127 | -------------------------------------------------------------------------------- /post_process_variants.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo "Assigning Pango Lineage" 4 | conda run -n pangolin pangolin "${1}" --outfile pangolin.csv 5 | 6 | # Assign NextClade clade 7 | echo "Assigning NextClade Clade" 8 | 9 | /usr/local/bin/nextclade run "${1}" --input-dataset /usr/local/bin/data/sars-cov-2 --output-tsv nextclade.tsv --output-json nextclade.json 10 | -------------------------------------------------------------------------------- /reference/ARTIC-V1-nCoV-2019.scheme.bed: -------------------------------------------------------------------------------- 1 | MN908947.3 30 54 nCoV-2019_1_LEFT nCoV-2019_1 2 | MN908947.3 385 410 nCoV-2019_1_RIGHT nCoV-2019_1 3 | MN908947.3 320 342 nCoV-2019_2_LEFT nCoV-2019_2 4 | MN908947.3 704 726 nCoV-2019_2_RIGHT nCoV-2019_2 5 | MN908947.3 642 664 nCoV-2019_3_LEFT nCoV-2019_1 6 | MN908947.3 1004 1028 nCoV-2019_3_RIGHT nCoV-2019_1 7 | MN908947.3 943 965 nCoV-2019_4_LEFT nCoV-2019_2 8 | MN908947.3 1312 1337 nCoV-2019_4_RIGHT nCoV-2019_2 9 | MN908947.3 1242 1264 nCoV-2019_5_LEFT nCoV-2019_1 10 | MN908947.3 1623 1651 nCoV-2019_5_RIGHT nCoV-2019_1 11 | MN908947.3 1573 1595 nCoV-2019_6_LEFT nCoV-2019_2 12 | MN908947.3 1942 1964 nCoV-2019_6_RIGHT nCoV-2019_2 13 | MN908947.3 1875 1897 nCoV-2019_7_LEFT nCoV-2019_1 14 | MN908947.3 2247 2269 nCoV-2019_7_RIGHT nCoV-2019_1 15 | MN908947.3 2181 2205 nCoV-2019_8_LEFT nCoV-2019_2 16 | MN908947.3 2568 2592 nCoV-2019_8_RIGHT nCoV-2019_2 17 | MN908947.3 2505 2529 nCoV-2019_9_LEFT nCoV-2019_1 18 | MN908947.3 2882 2904 nCoV-2019_9_RIGHT nCoV-2019_1 19 | MN908947.3 2826 2850 nCoV-2019_10_LEFT nCoV-2019_2 20 | MN908947.3 3183 3210 nCoV-2019_10_RIGHT nCoV-2019_2 21 | MN908947.3 3144 3166 nCoV-2019_11_LEFT nCoV-2019_1 22 | MN908947.3 3507 3531 nCoV-2019_11_RIGHT nCoV-2019_1 23 | MN908947.3 3460 3482 nCoV-2019_12_LEFT nCoV-2019_2 24 | MN908947.3 3826 3853 nCoV-2019_12_RIGHT nCoV-2019_2 25 | MN908947.3 3771 3795 nCoV-2019_13_LEFT nCoV-2019_1 26 | MN908947.3 4142 4164 nCoV-2019_13_RIGHT nCoV-2019_1 27 | MN908947.3 4054 4077 nCoV-2019_14_LEFT nCoV-2019_2 28 | MN908947.3 4428 4450 nCoV-2019_14_RIGHT nCoV-2019_2 29 | MN908947.3 4294 4321 nCoV-2019_15_LEFT nCoV-2019_1 30 | MN908947.3 4674 4696 nCoV-2019_15_RIGHT nCoV-2019_1 31 | MN908947.3 4636 4658 nCoV-2019_16_LEFT nCoV-2019_2 32 | MN908947.3 4995 5017 nCoV-2019_16_RIGHT nCoV-2019_2 33 | MN908947.3 4939 4966 nCoV-2019_17_LEFT nCoV-2019_1 34 | MN908947.3 5296 5321 nCoV-2019_17_RIGHT nCoV-2019_1 35 | MN908947.3 5230 5259 nCoV-2019_18_LEFT nCoV-2019_2 36 | MN908947.3 5620 5644 nCoV-2019_18_RIGHT nCoV-2019_2 37 | MN908947.3 5563 5586 nCoV-2019_19_LEFT nCoV-2019_1 38 | MN908947.3 5932 5957 nCoV-2019_19_RIGHT nCoV-2019_1 39 | MN908947.3 5867 5894 nCoV-2019_20_LEFT nCoV-2019_2 40 | MN908947.3 6247 6272 nCoV-2019_20_RIGHT nCoV-2019_2 41 | MN908947.3 6167 6196 nCoV-2019_21_LEFT nCoV-2019_1 42 | MN908947.3 6528 6550 nCoV-2019_21_RIGHT nCoV-2019_1 43 | MN908947.3 6466 6495 nCoV-2019_22_LEFT nCoV-2019_2 44 | MN908947.3 6846 6873 nCoV-2019_22_RIGHT nCoV-2019_2 45 | MN908947.3 6718 6745 nCoV-2019_23_LEFT nCoV-2019_1 46 | MN908947.3 7092 7117 nCoV-2019_23_RIGHT nCoV-2019_1 47 | MN908947.3 7035 7058 nCoV-2019_24_LEFT nCoV-2019_2 48 | MN908947.3 7389 7415 nCoV-2019_24_RIGHT nCoV-2019_2 49 | MN908947.3 7305 7332 nCoV-2019_25_LEFT nCoV-2019_1 50 | MN908947.3 7671 7694 nCoV-2019_25_RIGHT nCoV-2019_1 51 | MN908947.3 7626 7651 nCoV-2019_26_LEFT nCoV-2019_2 52 | MN908947.3 7997 8019 nCoV-2019_26_RIGHT nCoV-2019_2 53 | MN908947.3 7943 7968 nCoV-2019_27_LEFT nCoV-2019_1 54 | MN908947.3 8319 8341 nCoV-2019_27_RIGHT nCoV-2019_1 55 | MN908947.3 8249 8275 nCoV-2019_28_LEFT nCoV-2019_2 56 | MN908947.3 8635 8661 nCoV-2019_28_RIGHT nCoV-2019_2 57 | MN908947.3 8595 8619 nCoV-2019_29_LEFT nCoV-2019_1 58 | MN908947.3 8954 8983 nCoV-2019_29_RIGHT nCoV-2019_1 59 | MN908947.3 8888 8913 nCoV-2019_30_LEFT nCoV-2019_2 60 | MN908947.3 9245 9271 nCoV-2019_30_RIGHT nCoV-2019_2 61 | MN908947.3 9204 9226 nCoV-2019_31_LEFT nCoV-2019_1 62 | MN908947.3 9557 9585 nCoV-2019_31_RIGHT nCoV-2019_1 63 | MN908947.3 9477 9502 nCoV-2019_32_LEFT nCoV-2019_2 64 | MN908947.3 9834 9858 nCoV-2019_32_RIGHT nCoV-2019_2 65 | MN908947.3 9784 9806 nCoV-2019_33_LEFT nCoV-2019_1 66 | MN908947.3 10146 10171 nCoV-2019_33_RIGHT nCoV-2019_1 67 | MN908947.3 10076 10099 nCoV-2019_34_LEFT nCoV-2019_2 68 | MN908947.3 10437 10459 nCoV-2019_34_RIGHT nCoV-2019_2 69 | MN908947.3 10362 10384 nCoV-2019_35_LEFT nCoV-2019_1 70 | MN908947.3 10737 10763 nCoV-2019_35_RIGHT nCoV-2019_1 71 | MN908947.3 10666 10688 nCoV-2019_36_LEFT nCoV-2019_2 72 | MN908947.3 11048 11074 nCoV-2019_36_RIGHT nCoV-2019_2 73 | MN908947.3 10999 11022 nCoV-2019_37_LEFT nCoV-2019_1 74 | MN908947.3 11372 11394 nCoV-2019_37_RIGHT nCoV-2019_1 75 | MN908947.3 11306 11331 nCoV-2019_38_LEFT nCoV-2019_2 76 | MN908947.3 11668 11693 nCoV-2019_38_RIGHT nCoV-2019_2 77 | MN908947.3 11555 11584 nCoV-2019_39_LEFT nCoV-2019_1 78 | MN908947.3 11927 11949 nCoV-2019_39_RIGHT nCoV-2019_1 79 | MN908947.3 11863 11889 nCoV-2019_40_LEFT nCoV-2019_2 80 | MN908947.3 12234 12256 nCoV-2019_40_RIGHT nCoV-2019_2 81 | MN908947.3 12110 12133 nCoV-2019_41_LEFT nCoV-2019_1 82 | MN908947.3 12465 12490 nCoV-2019_41_RIGHT nCoV-2019_1 83 | MN908947.3 12417 12439 nCoV-2019_42_LEFT nCoV-2019_2 84 | MN908947.3 12779 12802 nCoV-2019_42_RIGHT nCoV-2019_2 85 | MN908947.3 12710 12732 nCoV-2019_43_LEFT nCoV-2019_1 86 | MN908947.3 13074 13096 nCoV-2019_43_RIGHT nCoV-2019_1 87 | MN908947.3 13005 13027 nCoV-2019_44_LEFT nCoV-2019_2 88 | MN908947.3 13378 13400 nCoV-2019_44_RIGHT nCoV-2019_2 89 | MN908947.3 13319 13344 nCoV-2019_45_LEFT nCoV-2019_1 90 | MN908947.3 13669 13699 nCoV-2019_45_RIGHT nCoV-2019_1 91 | MN908947.3 13599 13621 nCoV-2019_46_LEFT nCoV-2019_2 92 | MN908947.3 13962 13984 nCoV-2019_46_RIGHT nCoV-2019_2 93 | MN908947.3 13918 13946 nCoV-2019_47_LEFT nCoV-2019_1 94 | MN908947.3 14271 14299 nCoV-2019_47_RIGHT nCoV-2019_1 95 | MN908947.3 14207 14232 nCoV-2019_48_LEFT nCoV-2019_2 96 | MN908947.3 14579 14601 nCoV-2019_48_RIGHT nCoV-2019_2 97 | MN908947.3 14545 14570 nCoV-2019_49_LEFT nCoV-2019_1 98 | MN908947.3 14898 14926 nCoV-2019_49_RIGHT nCoV-2019_1 99 | MN908947.3 14865 14895 nCoV-2019_50_LEFT nCoV-2019_2 100 | MN908947.3 15224 15246 nCoV-2019_50_RIGHT nCoV-2019_2 101 | MN908947.3 15171 15193 nCoV-2019_51_LEFT nCoV-2019_1 102 | MN908947.3 15538 15560 nCoV-2019_51_RIGHT nCoV-2019_1 103 | MN908947.3 15481 15503 nCoV-2019_52_LEFT nCoV-2019_2 104 | MN908947.3 15861 15886 nCoV-2019_52_RIGHT nCoV-2019_2 105 | MN908947.3 15827 15851 nCoV-2019_53_LEFT nCoV-2019_1 106 | MN908947.3 16186 16209 nCoV-2019_53_RIGHT nCoV-2019_1 107 | MN908947.3 16118 16144 nCoV-2019_54_LEFT nCoV-2019_2 108 | MN908947.3 16485 16510 nCoV-2019_54_RIGHT nCoV-2019_2 109 | MN908947.3 16416 16444 nCoV-2019_55_LEFT nCoV-2019_1 110 | MN908947.3 16804 16833 nCoV-2019_55_RIGHT nCoV-2019_1 111 | MN908947.3 16748 16770 nCoV-2019_56_LEFT nCoV-2019_2 112 | MN908947.3 17130 17152 nCoV-2019_56_RIGHT nCoV-2019_2 113 | MN908947.3 17065 17087 nCoV-2019_57_LEFT nCoV-2019_1 114 | MN908947.3 17430 17452 nCoV-2019_57_RIGHT nCoV-2019_1 115 | MN908947.3 17381 17406 nCoV-2019_58_LEFT nCoV-2019_2 116 | MN908947.3 17738 17761 nCoV-2019_58_RIGHT nCoV-2019_2 117 | MN908947.3 17674 17697 nCoV-2019_59_LEFT nCoV-2019_1 118 | MN908947.3 18036 18062 nCoV-2019_59_RIGHT nCoV-2019_1 119 | MN908947.3 17966 17993 nCoV-2019_60_LEFT nCoV-2019_2 120 | MN908947.3 18324 18348 nCoV-2019_60_RIGHT nCoV-2019_2 121 | MN908947.3 18253 18275 nCoV-2019_61_LEFT nCoV-2019_1 122 | MN908947.3 18650 18672 nCoV-2019_61_RIGHT nCoV-2019_1 123 | MN908947.3 18596 18618 nCoV-2019_62_LEFT nCoV-2019_2 124 | MN908947.3 18957 18979 nCoV-2019_62_RIGHT nCoV-2019_2 125 | MN908947.3 18896 18918 nCoV-2019_63_LEFT nCoV-2019_1 126 | MN908947.3 19275 19297 nCoV-2019_63_RIGHT nCoV-2019_1 127 | MN908947.3 19204 19232 nCoV-2019_64_LEFT nCoV-2019_2 128 | MN908947.3 19591 19616 nCoV-2019_64_RIGHT nCoV-2019_2 129 | MN908947.3 19548 19570 nCoV-2019_65_LEFT nCoV-2019_1 130 | MN908947.3 19911 19939 nCoV-2019_65_RIGHT nCoV-2019_1 131 | MN908947.3 19844 19866 nCoV-2019_66_LEFT nCoV-2019_2 132 | MN908947.3 20231 20255 nCoV-2019_66_RIGHT nCoV-2019_2 133 | MN908947.3 20172 20200 nCoV-2019_67_LEFT nCoV-2019_1 134 | MN908947.3 20542 20572 nCoV-2019_67_RIGHT nCoV-2019_1 135 | MN908947.3 20472 20496 nCoV-2019_68_LEFT nCoV-2019_2 136 | MN908947.3 20867 20890 nCoV-2019_68_RIGHT nCoV-2019_2 137 | MN908947.3 20786 20813 nCoV-2019_69_LEFT nCoV-2019_1 138 | MN908947.3 21146 21169 nCoV-2019_69_RIGHT nCoV-2019_1 139 | MN908947.3 21075 21104 nCoV-2019_70_LEFT nCoV-2019_2 140 | MN908947.3 21427 21455 nCoV-2019_70_RIGHT nCoV-2019_2 141 | MN908947.3 21357 21386 nCoV-2019_71_LEFT nCoV-2019_1 142 | MN908947.3 21716 21743 nCoV-2019_71_RIGHT nCoV-2019_1 143 | MN908947.3 21658 21682 nCoV-2019_72_LEFT nCoV-2019_2 144 | MN908947.3 22013 22038 nCoV-2019_72_RIGHT nCoV-2019_2 145 | MN908947.3 21961 21990 nCoV-2019_73_LEFT nCoV-2019_1 146 | MN908947.3 22324 22346 nCoV-2019_73_RIGHT nCoV-2019_1 147 | MN908947.3 22262 22290 nCoV-2019_74_LEFT nCoV-2019_2 148 | MN908947.3 22626 22650 nCoV-2019_74_RIGHT nCoV-2019_2 149 | MN908947.3 22516 22542 nCoV-2019_75_LEFT nCoV-2019_1 150 | MN908947.3 22877 22903 nCoV-2019_75_RIGHT nCoV-2019_1 151 | MN908947.3 22797 22819 nCoV-2019_76_LEFT nCoV-2019_2 152 | MN908947.3 23192 23214 nCoV-2019_76_RIGHT nCoV-2019_2 153 | MN908947.3 23122 23144 nCoV-2019_77_LEFT nCoV-2019_1 154 | MN908947.3 23500 23522 nCoV-2019_77_RIGHT nCoV-2019_1 155 | MN908947.3 23443 23466 nCoV-2019_78_LEFT nCoV-2019_2 156 | MN908947.3 23822 23847 nCoV-2019_78_RIGHT nCoV-2019_2 157 | MN908947.3 23789 23812 nCoV-2019_79_LEFT nCoV-2019_1 158 | MN908947.3 24145 24169 nCoV-2019_79_RIGHT nCoV-2019_1 159 | MN908947.3 24078 24100 nCoV-2019_80_LEFT nCoV-2019_2 160 | MN908947.3 24443 24467 nCoV-2019_80_RIGHT nCoV-2019_2 161 | MN908947.3 24391 24416 nCoV-2019_81_LEFT nCoV-2019_1 162 | MN908947.3 24765 24789 nCoV-2019_81_RIGHT nCoV-2019_1 163 | MN908947.3 24696 24721 nCoV-2019_82_LEFT nCoV-2019_2 164 | MN908947.3 25052 25076 nCoV-2019_82_RIGHT nCoV-2019_2 165 | MN908947.3 24978 25003 nCoV-2019_83_LEFT nCoV-2019_1 166 | MN908947.3 25347 25369 nCoV-2019_83_RIGHT nCoV-2019_1 167 | MN908947.3 25279 25301 nCoV-2019_84_LEFT nCoV-2019_2 168 | MN908947.3 25646 25673 nCoV-2019_84_RIGHT nCoV-2019_2 169 | MN908947.3 25601 25623 nCoV-2019_85_LEFT nCoV-2019_1 170 | MN908947.3 25969 25994 nCoV-2019_85_RIGHT nCoV-2019_1 171 | MN908947.3 25902 25924 nCoV-2019_86_LEFT nCoV-2019_2 172 | MN908947.3 26290 26315 nCoV-2019_86_RIGHT nCoV-2019_2 173 | MN908947.3 26197 26219 nCoV-2019_87_LEFT nCoV-2019_1 174 | MN908947.3 26566 26590 nCoV-2019_87_RIGHT nCoV-2019_1 175 | MN908947.3 26520 26542 nCoV-2019_88_LEFT nCoV-2019_2 176 | MN908947.3 26890 26913 nCoV-2019_88_RIGHT nCoV-2019_2 177 | MN908947.3 26835 26857 nCoV-2019_89_LEFT nCoV-2019_1 178 | MN908947.3 27202 27227 nCoV-2019_89_RIGHT nCoV-2019_1 179 | MN908947.3 27141 27164 nCoV-2019_90_LEFT nCoV-2019_2 180 | MN908947.3 27511 27533 nCoV-2019_90_RIGHT nCoV-2019_2 181 | MN908947.3 27446 27471 nCoV-2019_91_LEFT nCoV-2019_1 182 | MN908947.3 27825 27854 nCoV-2019_91_RIGHT nCoV-2019_1 183 | MN908947.3 27784 27808 nCoV-2019_92_LEFT nCoV-2019_2 184 | MN908947.3 28145 28172 nCoV-2019_92_RIGHT nCoV-2019_2 185 | MN908947.3 28081 28104 nCoV-2019_93_LEFT nCoV-2019_1 186 | MN908947.3 28442 28464 nCoV-2019_93_RIGHT nCoV-2019_1 187 | MN908947.3 28394 28416 nCoV-2019_94_LEFT nCoV-2019_2 188 | MN908947.3 28756 28779 nCoV-2019_94_RIGHT nCoV-2019_2 189 | MN908947.3 28677 28699 nCoV-2019_95_LEFT nCoV-2019_1 190 | MN908947.3 29041 29063 nCoV-2019_95_RIGHT nCoV-2019_1 191 | MN908947.3 28985 29007 nCoV-2019_96_LEFT nCoV-2019_2 192 | MN908947.3 29356 29378 nCoV-2019_96_RIGHT nCoV-2019_2 193 | MN908947.3 29288 29316 nCoV-2019_97_LEFT nCoV-2019_1 194 | MN908947.3 29665 29693 nCoV-2019_97_RIGHT nCoV-2019_1 195 | MN908947.3 29486 29510 nCoV-2019_98_LEFT nCoV-2019_2 196 | MN908947.3 29836 29866 nCoV-2019_98_RIGHT nCoV-2019_2 197 | -------------------------------------------------------------------------------- /reference/ARTIC-V1.bed: -------------------------------------------------------------------------------- 1 | MN908947.3 30 54 nCoV-2019_1_LEFT 60 + 2 | MN908947.3 385 410 nCoV-2019_1_RIGHT 60 - 3 | MN908947.3 320 342 nCoV-2019_2_LEFT 60 + 4 | MN908947.3 704 726 nCoV-2019_2_RIGHT 60 - 5 | MN908947.3 642 664 nCoV-2019_3_LEFT 60 + 6 | MN908947.3 1004 1028 nCoV-2019_3_RIGHT 60 - 7 | MN908947.3 943 965 nCoV-2019_4_LEFT 60 + 8 | MN908947.3 1312 1337 nCoV-2019_4_RIGHT 60 - 9 | MN908947.3 1242 1264 nCoV-2019_5_LEFT 60 + 10 | MN908947.3 1623 1651 nCoV-2019_5_RIGHT 60 - 11 | MN908947.3 1573 1595 nCoV-2019_6_LEFT 60 + 12 | MN908947.3 1942 1964 nCoV-2019_6_RIGHT 60 - 13 | MN908947.3 1875 1897 nCoV-2019_7_LEFT 60 + 14 | MN908947.3 2247 2269 nCoV-2019_7_RIGHT 60 - 15 | MN908947.3 2181 2205 nCoV-2019_8_LEFT 60 + 16 | MN908947.3 2568 2592 nCoV-2019_8_RIGHT 60 - 17 | MN908947.3 2505 2529 nCoV-2019_9_LEFT 60 + 18 | MN908947.3 2882 2904 nCoV-2019_9_RIGHT 60 - 19 | MN908947.3 2826 2850 nCoV-2019_10_LEFT 60 + 20 | MN908947.3 3183 3210 nCoV-2019_10_RIGHT 60 - 21 | MN908947.3 3144 3166 nCoV-2019_11_LEFT 60 + 22 | MN908947.3 3507 3531 nCoV-2019_11_RIGHT 60 - 23 | MN908947.3 3460 3482 nCoV-2019_12_LEFT 60 + 24 | MN908947.3 3826 3853 nCoV-2019_12_RIGHT 60 - 25 | MN908947.3 3771 3795 nCoV-2019_13_LEFT 60 + 26 | MN908947.3 4142 4164 nCoV-2019_13_RIGHT 60 - 27 | MN908947.3 4054 4077 nCoV-2019_14_LEFT 60 + 28 | MN908947.3 4428 4450 nCoV-2019_14_RIGHT 60 - 29 | MN908947.3 4294 4321 nCoV-2019_15_LEFT 60 + 30 | MN908947.3 4674 4696 nCoV-2019_15_RIGHT 60 - 31 | MN908947.3 4636 4658 nCoV-2019_16_LEFT 60 + 32 | MN908947.3 4995 5017 nCoV-2019_16_RIGHT 60 - 33 | MN908947.3 4939 4966 nCoV-2019_17_LEFT 60 + 34 | MN908947.3 5296 5321 nCoV-2019_17_RIGHT 60 - 35 | MN908947.3 5230 5259 nCoV-2019_18_LEFT 60 + 36 | MN908947.3 5620 5644 nCoV-2019_18_RIGHT 60 - 37 | MN908947.3 5563 5586 nCoV-2019_19_LEFT 60 + 38 | MN908947.3 5932 5957 nCoV-2019_19_RIGHT 60 - 39 | MN908947.3 5867 5894 nCoV-2019_20_LEFT 60 + 40 | MN908947.3 6247 6272 nCoV-2019_20_RIGHT 60 - 41 | MN908947.3 6167 6196 nCoV-2019_21_LEFT 60 + 42 | MN908947.3 6528 6550 nCoV-2019_21_RIGHT 60 - 43 | MN908947.3 6466 6495 nCoV-2019_22_LEFT 60 + 44 | MN908947.3 6846 6873 nCoV-2019_22_RIGHT 60 - 45 | MN908947.3 6718 6745 nCoV-2019_23_LEFT 60 + 46 | MN908947.3 7092 7117 nCoV-2019_23_RIGHT 60 - 47 | MN908947.3 7035 7058 nCoV-2019_24_LEFT 60 + 48 | MN908947.3 7389 7415 nCoV-2019_24_RIGHT 60 - 49 | MN908947.3 7305 7332 nCoV-2019_25_LEFT 60 + 50 | MN908947.3 7671 7694 nCoV-2019_25_RIGHT 60 - 51 | MN908947.3 7626 7651 nCoV-2019_26_LEFT 60 + 52 | MN908947.3 7997 8019 nCoV-2019_26_RIGHT 60 - 53 | MN908947.3 7943 7968 nCoV-2019_27_LEFT 60 + 54 | MN908947.3 8319 8341 nCoV-2019_27_RIGHT 60 - 55 | MN908947.3 8249 8275 nCoV-2019_28_LEFT 60 + 56 | MN908947.3 8635 8661 nCoV-2019_28_RIGHT 60 - 57 | MN908947.3 8595 8619 nCoV-2019_29_LEFT 60 + 58 | MN908947.3 8954 8983 nCoV-2019_29_RIGHT 60 - 59 | MN908947.3 8888 8913 nCoV-2019_30_LEFT 60 + 60 | MN908947.3 9245 9271 nCoV-2019_30_RIGHT 60 - 61 | MN908947.3 9204 9226 nCoV-2019_31_LEFT 60 + 62 | MN908947.3 9557 9585 nCoV-2019_31_RIGHT 60 - 63 | MN908947.3 9477 9502 nCoV-2019_32_LEFT 60 + 64 | MN908947.3 9834 9858 nCoV-2019_32_RIGHT 60 - 65 | MN908947.3 9784 9806 nCoV-2019_33_LEFT 60 + 66 | MN908947.3 10146 10171 nCoV-2019_33_RIGHT 60 - 67 | MN908947.3 10076 10099 nCoV-2019_34_LEFT 60 + 68 | MN908947.3 10437 10459 nCoV-2019_34_RIGHT 60 - 69 | MN908947.3 10362 10384 nCoV-2019_35_LEFT 60 + 70 | MN908947.3 10737 10763 nCoV-2019_35_RIGHT 60 - 71 | MN908947.3 10666 10688 nCoV-2019_36_LEFT 60 + 72 | MN908947.3 11048 11074 nCoV-2019_36_RIGHT 60 - 73 | MN908947.3 10999 11022 nCoV-2019_37_LEFT 60 + 74 | MN908947.3 11372 11394 nCoV-2019_37_RIGHT 60 - 75 | MN908947.3 11306 11331 nCoV-2019_38_LEFT 60 + 76 | MN908947.3 11668 11693 nCoV-2019_38_RIGHT 60 - 77 | MN908947.3 11555 11584 nCoV-2019_39_LEFT 60 + 78 | MN908947.3 11927 11949 nCoV-2019_39_RIGHT 60 - 79 | MN908947.3 11863 11889 nCoV-2019_40_LEFT 60 + 80 | MN908947.3 12234 12256 nCoV-2019_40_RIGHT 60 - 81 | MN908947.3 12110 12133 nCoV-2019_41_LEFT 60 + 82 | MN908947.3 12465 12490 nCoV-2019_41_RIGHT 60 - 83 | MN908947.3 12417 12439 nCoV-2019_42_LEFT 60 + 84 | MN908947.3 12779 12802 nCoV-2019_42_RIGHT 60 - 85 | MN908947.3 12710 12732 nCoV-2019_43_LEFT 60 + 86 | MN908947.3 13074 13096 nCoV-2019_43_RIGHT 60 - 87 | MN908947.3 13005 13027 nCoV-2019_44_LEFT 60 + 88 | MN908947.3 13378 13400 nCoV-2019_44_RIGHT 60 - 89 | MN908947.3 13319 13344 nCoV-2019_45_LEFT 60 + 90 | MN908947.3 13669 13699 nCoV-2019_45_RIGHT 60 - 91 | MN908947.3 13599 13621 nCoV-2019_46_LEFT 60 + 92 | MN908947.3 13962 13984 nCoV-2019_46_RIGHT 60 - 93 | MN908947.3 13918 13946 nCoV-2019_47_LEFT 60 + 94 | MN908947.3 14271 14299 nCoV-2019_47_RIGHT 60 - 95 | MN908947.3 14207 14232 nCoV-2019_48_LEFT 60 + 96 | MN908947.3 14579 14601 nCoV-2019_48_RIGHT 60 - 97 | MN908947.3 14545 14570 nCoV-2019_49_LEFT 60 + 98 | MN908947.3 14898 14926 nCoV-2019_49_RIGHT 60 - 99 | MN908947.3 14865 14895 nCoV-2019_50_LEFT 60 + 100 | MN908947.3 15224 15246 nCoV-2019_50_RIGHT 60 - 101 | MN908947.3 15171 15193 nCoV-2019_51_LEFT 60 + 102 | MN908947.3 15538 15560 nCoV-2019_51_RIGHT 60 - 103 | MN908947.3 15481 15503 nCoV-2019_52_LEFT 60 + 104 | MN908947.3 15861 15886 nCoV-2019_52_RIGHT 60 - 105 | MN908947.3 15827 15851 nCoV-2019_53_LEFT 60 + 106 | MN908947.3 16186 16209 nCoV-2019_53_RIGHT 60 - 107 | MN908947.3 16118 16144 nCoV-2019_54_LEFT 60 + 108 | MN908947.3 16485 16510 nCoV-2019_54_RIGHT 60 - 109 | MN908947.3 16416 16444 nCoV-2019_55_LEFT 60 + 110 | MN908947.3 16804 16833 nCoV-2019_55_RIGHT 60 - 111 | MN908947.3 16748 16770 nCoV-2019_56_LEFT 60 + 112 | MN908947.3 17130 17152 nCoV-2019_56_RIGHT 60 - 113 | MN908947.3 17065 17087 nCoV-2019_57_LEFT 60 + 114 | MN908947.3 17430 17452 nCoV-2019_57_RIGHT 60 - 115 | MN908947.3 17381 17406 nCoV-2019_58_LEFT 60 + 116 | MN908947.3 17738 17761 nCoV-2019_58_RIGHT 60 - 117 | MN908947.3 17674 17697 nCoV-2019_59_LEFT 60 + 118 | MN908947.3 18036 18062 nCoV-2019_59_RIGHT 60 - 119 | MN908947.3 17966 17993 nCoV-2019_60_LEFT 60 + 120 | MN908947.3 18324 18348 nCoV-2019_60_RIGHT 60 - 121 | MN908947.3 18253 18275 nCoV-2019_61_LEFT 60 + 122 | MN908947.3 18650 18672 nCoV-2019_61_RIGHT 60 - 123 | MN908947.3 18596 18618 nCoV-2019_62_LEFT 60 + 124 | MN908947.3 18957 18979 nCoV-2019_62_RIGHT 60 - 125 | MN908947.3 18896 18918 nCoV-2019_63_LEFT 60 + 126 | MN908947.3 19275 19297 nCoV-2019_63_RIGHT 60 - 127 | MN908947.3 19204 19232 nCoV-2019_64_LEFT 60 + 128 | MN908947.3 19591 19616 nCoV-2019_64_RIGHT 60 - 129 | MN908947.3 19548 19570 nCoV-2019_65_LEFT 60 + 130 | MN908947.3 19911 19939 nCoV-2019_65_RIGHT 60 - 131 | MN908947.3 19844 19866 nCoV-2019_66_LEFT 60 + 132 | MN908947.3 20231 20255 nCoV-2019_66_RIGHT 60 - 133 | MN908947.3 20172 20200 nCoV-2019_67_LEFT 60 + 134 | MN908947.3 20542 20572 nCoV-2019_67_RIGHT 60 - 135 | MN908947.3 20472 20496 nCoV-2019_68_LEFT 60 + 136 | MN908947.3 20867 20890 nCoV-2019_68_RIGHT 60 - 137 | MN908947.3 20786 20813 nCoV-2019_69_LEFT 60 + 138 | MN908947.3 21146 21169 nCoV-2019_69_RIGHT 60 - 139 | MN908947.3 21075 21104 nCoV-2019_70_LEFT 60 + 140 | MN908947.3 21427 21455 nCoV-2019_70_RIGHT 60 - 141 | MN908947.3 21357 21386 nCoV-2019_71_LEFT 60 + 142 | MN908947.3 21716 21743 nCoV-2019_71_RIGHT 60 - 143 | MN908947.3 21658 21682 nCoV-2019_72_LEFT 60 + 144 | MN908947.3 22013 22038 nCoV-2019_72_RIGHT 60 - 145 | MN908947.3 21961 21990 nCoV-2019_73_LEFT 60 + 146 | MN908947.3 22324 22346 nCoV-2019_73_RIGHT 60 - 147 | MN908947.3 22262 22290 nCoV-2019_74_LEFT 60 + 148 | MN908947.3 22626 22650 nCoV-2019_74_RIGHT 60 - 149 | MN908947.3 22516 22542 nCoV-2019_75_LEFT 60 + 150 | MN908947.3 22877 22903 nCoV-2019_75_RIGHT 60 - 151 | MN908947.3 22797 22819 nCoV-2019_76_LEFT 60 + 152 | MN908947.3 23192 23214 nCoV-2019_76_RIGHT 60 - 153 | MN908947.3 23122 23144 nCoV-2019_77_LEFT 60 + 154 | MN908947.3 23500 23522 nCoV-2019_77_RIGHT 60 - 155 | MN908947.3 23443 23466 nCoV-2019_78_LEFT 60 + 156 | MN908947.3 23822 23847 nCoV-2019_78_RIGHT 60 - 157 | MN908947.3 23789 23812 nCoV-2019_79_LEFT 60 + 158 | MN908947.3 24145 24169 nCoV-2019_79_RIGHT 60 - 159 | MN908947.3 24078 24100 nCoV-2019_80_LEFT 60 + 160 | MN908947.3 24443 24467 nCoV-2019_80_RIGHT 60 - 161 | MN908947.3 24391 24416 nCoV-2019_81_LEFT 60 + 162 | MN908947.3 24765 24789 nCoV-2019_81_RIGHT 60 - 163 | MN908947.3 24696 24721 nCoV-2019_82_LEFT 60 + 164 | MN908947.3 25052 25076 nCoV-2019_82_RIGHT 60 - 165 | MN908947.3 24978 25003 nCoV-2019_83_LEFT 60 + 166 | MN908947.3 25347 25369 nCoV-2019_83_RIGHT 60 - 167 | MN908947.3 25279 25301 nCoV-2019_84_LEFT 60 + 168 | MN908947.3 25646 25673 nCoV-2019_84_RIGHT 60 - 169 | MN908947.3 25601 25623 nCoV-2019_85_LEFT 60 + 170 | MN908947.3 25969 25994 nCoV-2019_85_RIGHT 60 - 171 | MN908947.3 25902 25924 nCoV-2019_86_LEFT 60 + 172 | MN908947.3 26290 26315 nCoV-2019_86_RIGHT 60 - 173 | MN908947.3 26197 26219 nCoV-2019_87_LEFT 60 + 174 | MN908947.3 26566 26590 nCoV-2019_87_RIGHT 60 - 175 | MN908947.3 26520 26542 nCoV-2019_88_LEFT 60 + 176 | MN908947.3 26890 26913 nCoV-2019_88_RIGHT 60 - 177 | MN908947.3 26835 26857 nCoV-2019_89_LEFT 60 + 178 | MN908947.3 27202 27227 nCoV-2019_89_RIGHT 60 - 179 | MN908947.3 27141 27164 nCoV-2019_90_LEFT 60 + 180 | MN908947.3 27511 27533 nCoV-2019_90_RIGHT 60 - 181 | MN908947.3 27446 27471 nCoV-2019_91_LEFT 60 + 182 | MN908947.3 27825 27854 nCoV-2019_91_RIGHT 60 - 183 | MN908947.3 27784 27808 nCoV-2019_92_LEFT 60 + 184 | MN908947.3 28145 28172 nCoV-2019_92_RIGHT 60 - 185 | MN908947.3 28081 28104 nCoV-2019_93_LEFT 60 + 186 | MN908947.3 28442 28464 nCoV-2019_93_RIGHT 60 - 187 | MN908947.3 28394 28416 nCoV-2019_94_LEFT 60 + 188 | MN908947.3 28756 28779 nCoV-2019_94_RIGHT 60 - 189 | MN908947.3 28677 28699 nCoV-2019_95_LEFT 60 + 190 | MN908947.3 29041 29063 nCoV-2019_95_RIGHT 60 - 191 | MN908947.3 28985 29007 nCoV-2019_96_LEFT 60 + 192 | MN908947.3 29356 29378 nCoV-2019_96_RIGHT 60 - 193 | MN908947.3 29288 29316 nCoV-2019_97_LEFT 60 + 194 | MN908947.3 29665 29693 nCoV-2019_97_RIGHT 60 - 195 | MN908947.3 29486 29510 nCoV-2019_98_LEFT 60 + 196 | MN908947.3 29836 29866 nCoV-2019_98_RIGHT 60 - 197 | -------------------------------------------------------------------------------- /reference/ARTIC-V2-nCoV-2019.scheme.bed: -------------------------------------------------------------------------------- 1 | MN908947.3 30 54 nCoV-2019_1_LEFT nCoV-2019_1 2 | MN908947.3 385 410 nCoV-2019_1_RIGHT nCoV-2019_1 3 | MN908947.3 320 342 nCoV-2019_2_LEFT nCoV-2019_2 4 | MN908947.3 704 726 nCoV-2019_2_RIGHT nCoV-2019_2 5 | MN908947.3 642 664 nCoV-2019_3_LEFT nCoV-2019_1 6 | MN908947.3 1004 1028 nCoV-2019_3_RIGHT nCoV-2019_1 7 | MN908947.3 943 965 nCoV-2019_4_LEFT nCoV-2019_2 8 | MN908947.3 1312 1337 nCoV-2019_4_RIGHT nCoV-2019_2 9 | MN908947.3 1242 1264 nCoV-2019_5_LEFT nCoV-2019_1 10 | MN908947.3 1623 1651 nCoV-2019_5_RIGHT nCoV-2019_1 11 | MN908947.3 1573 1595 nCoV-2019_6_LEFT nCoV-2019_2 12 | MN908947.3 1942 1964 nCoV-2019_6_RIGHT nCoV-2019_2 13 | MN908947.3 1875 1897 nCoV-2019_7_LEFT nCoV-2019_1 14 | MN908947.3 2247 2269 nCoV-2019_7_RIGHT nCoV-2019_1 15 | MN908947.3 2181 2205 nCoV-2019_8_LEFT nCoV-2019_2 16 | MN908947.3 2568 2592 nCoV-2019_8_RIGHT nCoV-2019_2 17 | MN908947.3 2505 2529 nCoV-2019_9_LEFT nCoV-2019_1 18 | MN908947.3 2882 2904 nCoV-2019_9_RIGHT nCoV-2019_1 19 | MN908947.3 2826 2850 nCoV-2019_10_LEFT nCoV-2019_2 20 | MN908947.3 3183 3210 nCoV-2019_10_RIGHT nCoV-2019_2 21 | MN908947.3 3144 3166 nCoV-2019_11_LEFT nCoV-2019_1 22 | MN908947.3 3507 3531 nCoV-2019_11_RIGHT nCoV-2019_1 23 | MN908947.3 3460 3482 nCoV-2019_12_LEFT nCoV-2019_2 24 | MN908947.3 3826 3853 nCoV-2019_12_RIGHT nCoV-2019_2 25 | MN908947.3 3771 3795 nCoV-2019_13_LEFT nCoV-2019_1 26 | MN908947.3 4142 4164 nCoV-2019_13_RIGHT nCoV-2019_1 27 | MN908947.3 4054 4077 nCoV-2019_14_LEFT nCoV-2019_2 28 | MN908947.3 4428 4450 nCoV-2019_14_RIGHT nCoV-2019_2 29 | MN908947.3 4294 4321 nCoV-2019_15_LEFT nCoV-2019_1 30 | MN908947.3 4674 4696 nCoV-2019_15_RIGHT nCoV-2019_1 31 | MN908947.3 4636 4658 nCoV-2019_16_LEFT nCoV-2019_2 32 | MN908947.3 4995 5017 nCoV-2019_16_RIGHT nCoV-2019_2 33 | MN908947.3 4939 4966 nCoV-2019_17_LEFT nCoV-2019_1 34 | MN908947.3 5296 5321 nCoV-2019_17_RIGHT nCoV-2019_1 35 | MN908947.3 5257 5287 nCoV-2019_18_LEFT_alt2 nCoV-2019_2 36 | MN908947.3 5620 5644 nCoV-2019_18_RIGHT nCoV-2019_2 37 | MN908947.3 5563 5586 nCoV-2019_19_LEFT nCoV-2019_1 38 | MN908947.3 5932 5957 nCoV-2019_19_RIGHT nCoV-2019_1 39 | MN908947.3 5867 5894 nCoV-2019_20_LEFT nCoV-2019_2 40 | MN908947.3 6247 6272 nCoV-2019_20_RIGHT nCoV-2019_2 41 | MN908947.3 6167 6196 nCoV-2019_21_LEFT nCoV-2019_1 42 | MN908947.3 6528 6550 nCoV-2019_21_RIGHT nCoV-2019_1 43 | MN908947.3 6466 6495 nCoV-2019_22_LEFT nCoV-2019_2 44 | MN908947.3 6846 6873 nCoV-2019_22_RIGHT nCoV-2019_2 45 | MN908947.3 6718 6745 nCoV-2019_23_LEFT nCoV-2019_1 46 | MN908947.3 7092 7117 nCoV-2019_23_RIGHT nCoV-2019_1 47 | MN908947.3 7035 7058 nCoV-2019_24_LEFT nCoV-2019_2 48 | MN908947.3 7389 7415 nCoV-2019_24_RIGHT nCoV-2019_2 49 | MN908947.3 7305 7332 nCoV-2019_25_LEFT nCoV-2019_1 50 | MN908947.3 7671 7694 nCoV-2019_25_RIGHT nCoV-2019_1 51 | MN908947.3 7626 7651 nCoV-2019_26_LEFT nCoV-2019_2 52 | MN908947.3 7997 8019 nCoV-2019_26_RIGHT nCoV-2019_2 53 | MN908947.3 7943 7968 nCoV-2019_27_LEFT nCoV-2019_1 54 | MN908947.3 8319 8341 nCoV-2019_27_RIGHT nCoV-2019_1 55 | MN908947.3 8249 8275 nCoV-2019_28_LEFT nCoV-2019_2 56 | MN908947.3 8635 8661 nCoV-2019_28_RIGHT nCoV-2019_2 57 | MN908947.3 8595 8619 nCoV-2019_29_LEFT nCoV-2019_1 58 | MN908947.3 8954 8983 nCoV-2019_29_RIGHT nCoV-2019_1 59 | MN908947.3 8888 8913 nCoV-2019_30_LEFT nCoV-2019_2 60 | MN908947.3 9245 9271 nCoV-2019_30_RIGHT nCoV-2019_2 61 | MN908947.3 9204 9226 nCoV-2019_31_LEFT nCoV-2019_1 62 | MN908947.3 9557 9585 nCoV-2019_31_RIGHT nCoV-2019_1 63 | MN908947.3 9477 9502 nCoV-2019_32_LEFT nCoV-2019_2 64 | MN908947.3 9834 9858 nCoV-2019_32_RIGHT nCoV-2019_2 65 | MN908947.3 9784 9806 nCoV-2019_33_LEFT nCoV-2019_1 66 | MN908947.3 10146 10171 nCoV-2019_33_RIGHT nCoV-2019_1 67 | MN908947.3 10076 10099 nCoV-2019_34_LEFT nCoV-2019_2 68 | MN908947.3 10437 10459 nCoV-2019_34_RIGHT nCoV-2019_2 69 | MN908947.3 10362 10384 nCoV-2019_35_LEFT nCoV-2019_1 70 | MN908947.3 10737 10763 nCoV-2019_35_RIGHT nCoV-2019_1 71 | MN908947.3 10666 10688 nCoV-2019_36_LEFT nCoV-2019_2 72 | MN908947.3 11048 11074 nCoV-2019_36_RIGHT nCoV-2019_2 73 | MN908947.3 10999 11022 nCoV-2019_37_LEFT nCoV-2019_1 74 | MN908947.3 11372 11394 nCoV-2019_37_RIGHT nCoV-2019_1 75 | MN908947.3 11306 11331 nCoV-2019_38_LEFT nCoV-2019_2 76 | MN908947.3 11668 11693 nCoV-2019_38_RIGHT nCoV-2019_2 77 | MN908947.3 11555 11584 nCoV-2019_39_LEFT nCoV-2019_1 78 | MN908947.3 11927 11949 nCoV-2019_39_RIGHT nCoV-2019_1 79 | MN908947.3 11863 11889 nCoV-2019_40_LEFT nCoV-2019_2 80 | MN908947.3 12234 12256 nCoV-2019_40_RIGHT nCoV-2019_2 81 | MN908947.3 12110 12133 nCoV-2019_41_LEFT nCoV-2019_1 82 | MN908947.3 12465 12490 nCoV-2019_41_RIGHT nCoV-2019_1 83 | MN908947.3 12417 12439 nCoV-2019_42_LEFT nCoV-2019_2 84 | MN908947.3 12779 12802 nCoV-2019_42_RIGHT nCoV-2019_2 85 | MN908947.3 12710 12732 nCoV-2019_43_LEFT nCoV-2019_1 86 | MN908947.3 13074 13096 nCoV-2019_43_RIGHT nCoV-2019_1 87 | MN908947.3 13005 13027 nCoV-2019_44_LEFT nCoV-2019_2 88 | MN908947.3 13378 13400 nCoV-2019_44_RIGHT nCoV-2019_2 89 | MN908947.3 13319 13344 nCoV-2019_45_LEFT nCoV-2019_1 90 | MN908947.3 13669 13699 nCoV-2019_45_RIGHT nCoV-2019_1 91 | MN908947.3 13599 13621 nCoV-2019_46_LEFT nCoV-2019_2 92 | MN908947.3 13962 13984 nCoV-2019_46_RIGHT nCoV-2019_2 93 | MN908947.3 13918 13946 nCoV-2019_47_LEFT nCoV-2019_1 94 | MN908947.3 14271 14299 nCoV-2019_47_RIGHT nCoV-2019_1 95 | MN908947.3 14207 14232 nCoV-2019_48_LEFT nCoV-2019_2 96 | MN908947.3 14579 14601 nCoV-2019_48_RIGHT nCoV-2019_2 97 | MN908947.3 14545 14570 nCoV-2019_49_LEFT nCoV-2019_1 98 | MN908947.3 14898 14926 nCoV-2019_49_RIGHT nCoV-2019_1 99 | MN908947.3 14865 14895 nCoV-2019_50_LEFT nCoV-2019_2 100 | MN908947.3 15224 15246 nCoV-2019_50_RIGHT nCoV-2019_2 101 | MN908947.3 15171 15193 nCoV-2019_51_LEFT nCoV-2019_1 102 | MN908947.3 15538 15560 nCoV-2019_51_RIGHT nCoV-2019_1 103 | MN908947.3 15481 15503 nCoV-2019_52_LEFT nCoV-2019_2 104 | MN908947.3 15861 15886 nCoV-2019_52_RIGHT nCoV-2019_2 105 | MN908947.3 15827 15851 nCoV-2019_53_LEFT nCoV-2019_1 106 | MN908947.3 16186 16209 nCoV-2019_53_RIGHT nCoV-2019_1 107 | MN908947.3 16118 16144 nCoV-2019_54_LEFT nCoV-2019_2 108 | MN908947.3 16485 16510 nCoV-2019_54_RIGHT nCoV-2019_2 109 | MN908947.3 16416 16444 nCoV-2019_55_LEFT nCoV-2019_1 110 | MN908947.3 16804 16833 nCoV-2019_55_RIGHT nCoV-2019_1 111 | MN908947.3 16748 16770 nCoV-2019_56_LEFT nCoV-2019_2 112 | MN908947.3 17130 17152 nCoV-2019_56_RIGHT nCoV-2019_2 113 | MN908947.3 17065 17087 nCoV-2019_57_LEFT nCoV-2019_1 114 | MN908947.3 17430 17452 nCoV-2019_57_RIGHT nCoV-2019_1 115 | MN908947.3 17381 17406 nCoV-2019_58_LEFT nCoV-2019_2 116 | MN908947.3 17738 17761 nCoV-2019_58_RIGHT nCoV-2019_2 117 | MN908947.3 17674 17697 nCoV-2019_59_LEFT nCoV-2019_1 118 | MN908947.3 18036 18062 nCoV-2019_59_RIGHT nCoV-2019_1 119 | MN908947.3 17966 17993 nCoV-2019_60_LEFT nCoV-2019_2 120 | MN908947.3 18324 18348 nCoV-2019_60_RIGHT nCoV-2019_2 121 | MN908947.3 18253 18275 nCoV-2019_61_LEFT nCoV-2019_1 122 | MN908947.3 18650 18672 nCoV-2019_61_RIGHT nCoV-2019_1 123 | MN908947.3 18596 18618 nCoV-2019_62_LEFT nCoV-2019_2 124 | MN908947.3 18957 18979 nCoV-2019_62_RIGHT nCoV-2019_2 125 | MN908947.3 18896 18918 nCoV-2019_63_LEFT nCoV-2019_1 126 | MN908947.3 19275 19297 nCoV-2019_63_RIGHT nCoV-2019_1 127 | MN908947.3 19204 19232 nCoV-2019_64_LEFT nCoV-2019_2 128 | MN908947.3 19591 19616 nCoV-2019_64_RIGHT nCoV-2019_2 129 | MN908947.3 19548 19570 nCoV-2019_65_LEFT nCoV-2019_1 130 | MN908947.3 19911 19939 nCoV-2019_65_RIGHT nCoV-2019_1 131 | MN908947.3 19844 19866 nCoV-2019_66_LEFT nCoV-2019_2 132 | MN908947.3 20231 20255 nCoV-2019_66_RIGHT nCoV-2019_2 133 | MN908947.3 20172 20200 nCoV-2019_67_LEFT nCoV-2019_1 134 | MN908947.3 20542 20572 nCoV-2019_67_RIGHT nCoV-2019_1 135 | MN908947.3 20472 20496 nCoV-2019_68_LEFT nCoV-2019_2 136 | MN908947.3 20867 20890 nCoV-2019_68_RIGHT nCoV-2019_2 137 | MN908947.3 20786 20813 nCoV-2019_69_LEFT nCoV-2019_1 138 | MN908947.3 21146 21169 nCoV-2019_69_RIGHT nCoV-2019_1 139 | MN908947.3 21075 21104 nCoV-2019_70_LEFT nCoV-2019_2 140 | MN908947.3 21427 21455 nCoV-2019_70_RIGHT nCoV-2019_2 141 | MN908947.3 21357 21386 nCoV-2019_71_LEFT nCoV-2019_1 142 | MN908947.3 21716 21743 nCoV-2019_71_RIGHT nCoV-2019_1 143 | MN908947.3 21658 21682 nCoV-2019_72_LEFT nCoV-2019_2 144 | MN908947.3 22013 22038 nCoV-2019_72_RIGHT nCoV-2019_2 145 | MN908947.3 21961 21990 nCoV-2019_73_LEFT nCoV-2019_1 146 | MN908947.3 22324 22346 nCoV-2019_73_RIGHT nCoV-2019_1 147 | MN908947.3 22262 22290 nCoV-2019_74_LEFT nCoV-2019_2 148 | MN908947.3 22626 22650 nCoV-2019_74_RIGHT nCoV-2019_2 149 | MN908947.3 22516 22542 nCoV-2019_75_LEFT nCoV-2019_1 150 | MN908947.3 22877 22903 nCoV-2019_75_RIGHT nCoV-2019_1 151 | MN908947.3 22797 22819 nCoV-2019_76_LEFT nCoV-2019_2 152 | MN908947.3 23192 23214 nCoV-2019_76_RIGHT nCoV-2019_2 153 | MN908947.3 23122 23144 nCoV-2019_77_LEFT nCoV-2019_1 154 | MN908947.3 23500 23522 nCoV-2019_77_RIGHT nCoV-2019_1 155 | MN908947.3 23443 23466 nCoV-2019_78_LEFT nCoV-2019_2 156 | MN908947.3 23822 23847 nCoV-2019_78_RIGHT nCoV-2019_2 157 | MN908947.3 23789 23812 nCoV-2019_79_LEFT nCoV-2019_1 158 | MN908947.3 24145 24169 nCoV-2019_79_RIGHT nCoV-2019_1 159 | MN908947.3 24078 24100 nCoV-2019_80_LEFT nCoV-2019_2 160 | MN908947.3 24443 24467 nCoV-2019_80_RIGHT nCoV-2019_2 161 | MN908947.3 24391 24416 nCoV-2019_81_LEFT nCoV-2019_1 162 | MN908947.3 24765 24789 nCoV-2019_81_RIGHT nCoV-2019_1 163 | MN908947.3 24696 24721 nCoV-2019_82_LEFT nCoV-2019_2 164 | MN908947.3 25052 25076 nCoV-2019_82_RIGHT nCoV-2019_2 165 | MN908947.3 24978 25003 nCoV-2019_83_LEFT nCoV-2019_1 166 | MN908947.3 25347 25369 nCoV-2019_83_RIGHT nCoV-2019_1 167 | MN908947.3 25279 25301 nCoV-2019_84_LEFT nCoV-2019_2 168 | MN908947.3 25646 25673 nCoV-2019_84_RIGHT nCoV-2019_2 169 | MN908947.3 25601 25623 nCoV-2019_85_LEFT nCoV-2019_1 170 | MN908947.3 25969 25994 nCoV-2019_85_RIGHT nCoV-2019_1 171 | MN908947.3 25902 25924 nCoV-2019_86_LEFT nCoV-2019_2 172 | MN908947.3 26290 26315 nCoV-2019_86_RIGHT nCoV-2019_2 173 | MN908947.3 26197 26219 nCoV-2019_87_LEFT nCoV-2019_1 174 | MN908947.3 26566 26590 nCoV-2019_87_RIGHT nCoV-2019_1 175 | MN908947.3 26520 26542 nCoV-2019_88_LEFT nCoV-2019_2 176 | MN908947.3 26890 26913 nCoV-2019_88_RIGHT nCoV-2019_2 177 | MN908947.3 26835 26857 nCoV-2019_89_LEFT nCoV-2019_1 178 | MN908947.3 27202 27227 nCoV-2019_89_RIGHT nCoV-2019_1 179 | MN908947.3 27141 27164 nCoV-2019_90_LEFT nCoV-2019_2 180 | MN908947.3 27511 27533 nCoV-2019_90_RIGHT nCoV-2019_2 181 | MN908947.3 27446 27471 nCoV-2019_91_LEFT nCoV-2019_1 182 | MN908947.3 27825 27854 nCoV-2019_91_RIGHT nCoV-2019_1 183 | MN908947.3 27784 27808 nCoV-2019_92_LEFT nCoV-2019_2 184 | MN908947.3 28145 28172 nCoV-2019_92_RIGHT nCoV-2019_2 185 | MN908947.3 28081 28104 nCoV-2019_93_LEFT nCoV-2019_1 186 | MN908947.3 28442 28464 nCoV-2019_93_RIGHT nCoV-2019_1 187 | MN908947.3 28394 28416 nCoV-2019_94_LEFT nCoV-2019_2 188 | MN908947.3 28756 28779 nCoV-2019_94_RIGHT nCoV-2019_2 189 | MN908947.3 28677 28699 nCoV-2019_95_LEFT nCoV-2019_1 190 | MN908947.3 29041 29063 nCoV-2019_95_RIGHT nCoV-2019_1 191 | MN908947.3 28985 29007 nCoV-2019_96_LEFT nCoV-2019_2 192 | MN908947.3 29356 29378 nCoV-2019_96_RIGHT nCoV-2019_2 193 | MN908947.3 29288 29316 nCoV-2019_97_LEFT nCoV-2019_1 194 | MN908947.3 29665 29693 nCoV-2019_97_RIGHT nCoV-2019_1 195 | MN908947.3 29486 29510 nCoV-2019_98_LEFT nCoV-2019_2 196 | MN908947.3 29836 29866 nCoV-2019_98_RIGHT nCoV-2019_2 197 | -------------------------------------------------------------------------------- /reference/ARTIC-V2.bed: -------------------------------------------------------------------------------- 1 | MN908947.3 30 54 nCoV-2019_1_LEFT 60 + 2 | MN908947.3 385 410 nCoV-2019_1_RIGHT 60 - 3 | MN908947.3 320 342 nCoV-2019_2_LEFT 60 + 4 | MN908947.3 704 726 nCoV-2019_2_RIGHT 60 - 5 | MN908947.3 642 664 nCoV-2019_3_LEFT 60 + 6 | MN908947.3 1004 1028 nCoV-2019_3_RIGHT 60 - 7 | MN908947.3 943 965 nCoV-2019_4_LEFT 60 + 8 | MN908947.3 1312 1337 nCoV-2019_4_RIGHT 60 - 9 | MN908947.3 1242 1264 nCoV-2019_5_LEFT 60 + 10 | MN908947.3 1623 1651 nCoV-2019_5_RIGHT 60 - 11 | MN908947.3 1573 1595 nCoV-2019_6_LEFT 60 + 12 | MN908947.3 1942 1964 nCoV-2019_6_RIGHT 60 - 13 | MN908947.3 1875 1897 nCoV-2019_7_LEFT 60 + 14 | MN908947.3 2247 2269 nCoV-2019_7_RIGHT 60 - 15 | MN908947.3 2181 2205 nCoV-2019_8_LEFT 60 + 16 | MN908947.3 2568 2592 nCoV-2019_8_RIGHT 60 - 17 | MN908947.3 2505 2529 nCoV-2019_9_LEFT 60 + 18 | MN908947.3 2882 2904 nCoV-2019_9_RIGHT 60 - 19 | MN908947.3 2826 2850 nCoV-2019_10_LEFT 60 + 20 | MN908947.3 3183 3210 nCoV-2019_10_RIGHT 60 - 21 | MN908947.3 3144 3166 nCoV-2019_11_LEFT 60 + 22 | MN908947.3 3507 3531 nCoV-2019_11_RIGHT 60 - 23 | MN908947.3 3460 3482 nCoV-2019_12_LEFT 60 + 24 | MN908947.3 3826 3853 nCoV-2019_12_RIGHT 60 - 25 | MN908947.3 3771 3795 nCoV-2019_13_LEFT 60 + 26 | MN908947.3 4142 4164 nCoV-2019_13_RIGHT 60 - 27 | MN908947.3 4054 4077 nCoV-2019_14_LEFT 60 + 28 | MN908947.3 4428 4450 nCoV-2019_14_RIGHT 60 - 29 | MN908947.3 4294 4321 nCoV-2019_15_LEFT 60 + 30 | MN908947.3 4674 4696 nCoV-2019_15_RIGHT 60 - 31 | MN908947.3 4636 4658 nCoV-2019_16_LEFT 60 + 32 | MN908947.3 4995 5017 nCoV-2019_16_RIGHT 60 - 33 | MN908947.3 4939 4966 nCoV-2019_17_LEFT 60 + 34 | MN908947.3 5296 5321 nCoV-2019_17_RIGHT 60 - 35 | MN908947.3 5257 5287 nCoV-2019_18_LEFT_alt2 60 + 36 | MN908947.3 5620 5644 nCoV-2019_18_RIGHT 60 - 37 | MN908947.3 5563 5586 nCoV-2019_19_LEFT 60 + 38 | MN908947.3 5932 5957 nCoV-2019_19_RIGHT 60 - 39 | MN908947.3 5867 5894 nCoV-2019_20_LEFT 60 + 40 | MN908947.3 6247 6272 nCoV-2019_20_RIGHT 60 - 41 | MN908947.3 6167 6196 nCoV-2019_21_LEFT 60 + 42 | MN908947.3 6528 6550 nCoV-2019_21_RIGHT 60 - 43 | MN908947.3 6466 6495 nCoV-2019_22_LEFT 60 + 44 | MN908947.3 6846 6873 nCoV-2019_22_RIGHT 60 - 45 | MN908947.3 6718 6745 nCoV-2019_23_LEFT 60 + 46 | MN908947.3 7092 7117 nCoV-2019_23_RIGHT 60 - 47 | MN908947.3 7035 7058 nCoV-2019_24_LEFT 60 + 48 | MN908947.3 7389 7415 nCoV-2019_24_RIGHT 60 - 49 | MN908947.3 7305 7332 nCoV-2019_25_LEFT 60 + 50 | MN908947.3 7671 7694 nCoV-2019_25_RIGHT 60 - 51 | MN908947.3 7626 7651 nCoV-2019_26_LEFT 60 + 52 | MN908947.3 7997 8019 nCoV-2019_26_RIGHT 60 - 53 | MN908947.3 7943 7968 nCoV-2019_27_LEFT 60 + 54 | MN908947.3 8319 8341 nCoV-2019_27_RIGHT 60 - 55 | MN908947.3 8249 8275 nCoV-2019_28_LEFT 60 + 56 | MN908947.3 8635 8661 nCoV-2019_28_RIGHT 60 - 57 | MN908947.3 8595 8619 nCoV-2019_29_LEFT 60 + 58 | MN908947.3 8954 8983 nCoV-2019_29_RIGHT 60 - 59 | MN908947.3 8888 8913 nCoV-2019_30_LEFT 60 + 60 | MN908947.3 9245 9271 nCoV-2019_30_RIGHT 60 - 61 | MN908947.3 9204 9226 nCoV-2019_31_LEFT 60 + 62 | MN908947.3 9557 9585 nCoV-2019_31_RIGHT 60 - 63 | MN908947.3 9477 9502 nCoV-2019_32_LEFT 60 + 64 | MN908947.3 9834 9858 nCoV-2019_32_RIGHT 60 - 65 | MN908947.3 9784 9806 nCoV-2019_33_LEFT 60 + 66 | MN908947.3 10146 10171 nCoV-2019_33_RIGHT 60 - 67 | MN908947.3 10076 10099 nCoV-2019_34_LEFT 60 + 68 | MN908947.3 10437 10459 nCoV-2019_34_RIGHT 60 - 69 | MN908947.3 10362 10384 nCoV-2019_35_LEFT 60 + 70 | MN908947.3 10737 10763 nCoV-2019_35_RIGHT 60 - 71 | MN908947.3 10666 10688 nCoV-2019_36_LEFT 60 + 72 | MN908947.3 11048 11074 nCoV-2019_36_RIGHT 60 - 73 | MN908947.3 10999 11022 nCoV-2019_37_LEFT 60 + 74 | MN908947.3 11372 11394 nCoV-2019_37_RIGHT 60 - 75 | MN908947.3 11306 11331 nCoV-2019_38_LEFT 60 + 76 | MN908947.3 11668 11693 nCoV-2019_38_RIGHT 60 - 77 | MN908947.3 11555 11584 nCoV-2019_39_LEFT 60 + 78 | MN908947.3 11927 11949 nCoV-2019_39_RIGHT 60 - 79 | MN908947.3 11863 11889 nCoV-2019_40_LEFT 60 + 80 | MN908947.3 12234 12256 nCoV-2019_40_RIGHT 60 - 81 | MN908947.3 12110 12133 nCoV-2019_41_LEFT 60 + 82 | MN908947.3 12465 12490 nCoV-2019_41_RIGHT 60 - 83 | MN908947.3 12417 12439 nCoV-2019_42_LEFT 60 + 84 | MN908947.3 12779 12802 nCoV-2019_42_RIGHT 60 - 85 | MN908947.3 12710 12732 nCoV-2019_43_LEFT 60 + 86 | MN908947.3 13074 13096 nCoV-2019_43_RIGHT 60 - 87 | MN908947.3 13005 13027 nCoV-2019_44_LEFT 60 + 88 | MN908947.3 13378 13400 nCoV-2019_44_RIGHT 60 - 89 | MN908947.3 13319 13344 nCoV-2019_45_LEFT 60 + 90 | MN908947.3 13669 13699 nCoV-2019_45_RIGHT 60 - 91 | MN908947.3 13599 13621 nCoV-2019_46_LEFT 60 + 92 | MN908947.3 13962 13984 nCoV-2019_46_RIGHT 60 - 93 | MN908947.3 13918 13946 nCoV-2019_47_LEFT 60 + 94 | MN908947.3 14271 14299 nCoV-2019_47_RIGHT 60 - 95 | MN908947.3 14207 14232 nCoV-2019_48_LEFT 60 + 96 | MN908947.3 14579 14601 nCoV-2019_48_RIGHT 60 - 97 | MN908947.3 14545 14570 nCoV-2019_49_LEFT 60 + 98 | MN908947.3 14898 14926 nCoV-2019_49_RIGHT 60 - 99 | MN908947.3 14865 14895 nCoV-2019_50_LEFT 60 + 100 | MN908947.3 15224 15246 nCoV-2019_50_RIGHT 60 - 101 | MN908947.3 15171 15193 nCoV-2019_51_LEFT 60 + 102 | MN908947.3 15538 15560 nCoV-2019_51_RIGHT 60 - 103 | MN908947.3 15481 15503 nCoV-2019_52_LEFT 60 + 104 | MN908947.3 15861 15886 nCoV-2019_52_RIGHT 60 - 105 | MN908947.3 15827 15851 nCoV-2019_53_LEFT 60 + 106 | MN908947.3 16186 16209 nCoV-2019_53_RIGHT 60 - 107 | MN908947.3 16118 16144 nCoV-2019_54_LEFT 60 + 108 | MN908947.3 16485 16510 nCoV-2019_54_RIGHT 60 - 109 | MN908947.3 16416 16444 nCoV-2019_55_LEFT 60 + 110 | MN908947.3 16804 16833 nCoV-2019_55_RIGHT 60 - 111 | MN908947.3 16748 16770 nCoV-2019_56_LEFT 60 + 112 | MN908947.3 17130 17152 nCoV-2019_56_RIGHT 60 - 113 | MN908947.3 17065 17087 nCoV-2019_57_LEFT 60 + 114 | MN908947.3 17430 17452 nCoV-2019_57_RIGHT 60 - 115 | MN908947.3 17381 17406 nCoV-2019_58_LEFT 60 + 116 | MN908947.3 17738 17761 nCoV-2019_58_RIGHT 60 - 117 | MN908947.3 17674 17697 nCoV-2019_59_LEFT 60 + 118 | MN908947.3 18036 18062 nCoV-2019_59_RIGHT 60 - 119 | MN908947.3 17966 17993 nCoV-2019_60_LEFT 60 + 120 | MN908947.3 18324 18348 nCoV-2019_60_RIGHT 60 - 121 | MN908947.3 18253 18275 nCoV-2019_61_LEFT 60 + 122 | MN908947.3 18650 18672 nCoV-2019_61_RIGHT 60 - 123 | MN908947.3 18596 18618 nCoV-2019_62_LEFT 60 + 124 | MN908947.3 18957 18979 nCoV-2019_62_RIGHT 60 - 125 | MN908947.3 18896 18918 nCoV-2019_63_LEFT 60 + 126 | MN908947.3 19275 19297 nCoV-2019_63_RIGHT 60 - 127 | MN908947.3 19204 19232 nCoV-2019_64_LEFT 60 + 128 | MN908947.3 19591 19616 nCoV-2019_64_RIGHT 60 - 129 | MN908947.3 19548 19570 nCoV-2019_65_LEFT 60 + 130 | MN908947.3 19911 19939 nCoV-2019_65_RIGHT 60 - 131 | MN908947.3 19844 19866 nCoV-2019_66_LEFT 60 + 132 | MN908947.3 20231 20255 nCoV-2019_66_RIGHT 60 - 133 | MN908947.3 20172 20200 nCoV-2019_67_LEFT 60 + 134 | MN908947.3 20542 20572 nCoV-2019_67_RIGHT 60 - 135 | MN908947.3 20472 20496 nCoV-2019_68_LEFT 60 + 136 | MN908947.3 20867 20890 nCoV-2019_68_RIGHT 60 - 137 | MN908947.3 20786 20813 nCoV-2019_69_LEFT 60 + 138 | MN908947.3 21146 21169 nCoV-2019_69_RIGHT 60 - 139 | MN908947.3 21075 21104 nCoV-2019_70_LEFT 60 + 140 | MN908947.3 21427 21455 nCoV-2019_70_RIGHT 60 - 141 | MN908947.3 21357 21386 nCoV-2019_71_LEFT 60 + 142 | MN908947.3 21716 21743 nCoV-2019_71_RIGHT 60 - 143 | MN908947.3 21658 21682 nCoV-2019_72_LEFT 60 + 144 | MN908947.3 22013 22038 nCoV-2019_72_RIGHT 60 - 145 | MN908947.3 21961 21990 nCoV-2019_73_LEFT 60 + 146 | MN908947.3 22324 22346 nCoV-2019_73_RIGHT 60 - 147 | MN908947.3 22262 22290 nCoV-2019_74_LEFT 60 + 148 | MN908947.3 22626 22650 nCoV-2019_74_RIGHT 60 - 149 | MN908947.3 22516 22542 nCoV-2019_75_LEFT 60 + 150 | MN908947.3 22877 22903 nCoV-2019_75_RIGHT 60 - 151 | MN908947.3 22797 22819 nCoV-2019_76_LEFT 60 + 152 | MN908947.3 23192 23214 nCoV-2019_76_RIGHT 60 - 153 | MN908947.3 23122 23144 nCoV-2019_77_LEFT 60 + 154 | MN908947.3 23500 23522 nCoV-2019_77_RIGHT 60 - 155 | MN908947.3 23443 23466 nCoV-2019_78_LEFT 60 + 156 | MN908947.3 23822 23847 nCoV-2019_78_RIGHT 60 - 157 | MN908947.3 23789 23812 nCoV-2019_79_LEFT 60 + 158 | MN908947.3 24145 24169 nCoV-2019_79_RIGHT 60 - 159 | MN908947.3 24078 24100 nCoV-2019_80_LEFT 60 + 160 | MN908947.3 24443 24467 nCoV-2019_80_RIGHT 60 - 161 | MN908947.3 24391 24416 nCoV-2019_81_LEFT 60 + 162 | MN908947.3 24765 24789 nCoV-2019_81_RIGHT 60 - 163 | MN908947.3 24696 24721 nCoV-2019_82_LEFT 60 + 164 | MN908947.3 25052 25076 nCoV-2019_82_RIGHT 60 - 165 | MN908947.3 24978 25003 nCoV-2019_83_LEFT 60 + 166 | MN908947.3 25347 25369 nCoV-2019_83_RIGHT 60 - 167 | MN908947.3 25279 25301 nCoV-2019_84_LEFT 60 + 168 | MN908947.3 25646 25673 nCoV-2019_84_RIGHT 60 - 169 | MN908947.3 25601 25623 nCoV-2019_85_LEFT 60 + 170 | MN908947.3 25969 25994 nCoV-2019_85_RIGHT 60 - 171 | MN908947.3 25902 25924 nCoV-2019_86_LEFT 60 + 172 | MN908947.3 26290 26315 nCoV-2019_86_RIGHT 60 - 173 | MN908947.3 26197 26219 nCoV-2019_87_LEFT 60 + 174 | MN908947.3 26566 26590 nCoV-2019_87_RIGHT 60 - 175 | MN908947.3 26520 26542 nCoV-2019_88_LEFT 60 + 176 | MN908947.3 26890 26913 nCoV-2019_88_RIGHT 60 - 177 | MN908947.3 26835 26857 nCoV-2019_89_LEFT 60 + 178 | MN908947.3 27202 27227 nCoV-2019_89_RIGHT 60 - 179 | MN908947.3 27141 27164 nCoV-2019_90_LEFT 60 + 180 | MN908947.3 27511 27533 nCoV-2019_90_RIGHT 60 - 181 | MN908947.3 27446 27471 nCoV-2019_91_LEFT 60 + 182 | MN908947.3 27825 27854 nCoV-2019_91_RIGHT 60 - 183 | MN908947.3 27784 27808 nCoV-2019_92_LEFT 60 + 184 | MN908947.3 28145 28172 nCoV-2019_92_RIGHT 60 - 185 | MN908947.3 28081 28104 nCoV-2019_93_LEFT 60 + 186 | MN908947.3 28442 28464 nCoV-2019_93_RIGHT 60 - 187 | MN908947.3 28394 28416 nCoV-2019_94_LEFT 60 + 188 | MN908947.3 28756 28779 nCoV-2019_94_RIGHT 60 - 189 | MN908947.3 28677 28699 nCoV-2019_95_LEFT 60 + 190 | MN908947.3 29041 29063 nCoV-2019_95_RIGHT 60 - 191 | MN908947.3 28985 29007 nCoV-2019_96_LEFT 60 + 192 | MN908947.3 29356 29378 nCoV-2019_96_RIGHT 60 - 193 | MN908947.3 29288 29316 nCoV-2019_97_LEFT 60 + 194 | MN908947.3 29665 29693 nCoV-2019_97_RIGHT 60 - 195 | MN908947.3 29486 29510 nCoV-2019_98_LEFT 60 + 196 | MN908947.3 29836 29866 nCoV-2019_98_RIGHT 60 - 197 | -------------------------------------------------------------------------------- /reference/aa_codes.txt: -------------------------------------------------------------------------------- 1 | Name Three-Letter Code One-Letter Code 2 | Alanine Ala A 3 | Arginine Arg R 4 | Asparagine Asn N 5 | Aspartic Acid Asp D 6 | Cysteine Cys C 7 | Glutamic Acid Glu E 8 | Glutamine Gln Q 9 | Glycine Gly G 10 | Histidine His H 11 | Isoleucine Ile I 12 | Leucine Leu L 13 | Lysine Lys K 14 | Methionine Met M 15 | Phenylalanine Phe F 16 | Proline Pro P 17 | Serine Ser S 18 | Threonine Thr T 19 | Tryptophan Trp W 20 | Tyrosine Tyr Y 21 | Valine Val V 22 | -------------------------------------------------------------------------------- /reference/annot_table.orfs.txt: -------------------------------------------------------------------------------- 1 | nsp1 in orf1ab 266 805 cds . 2 | nsp2 in orf1ab 806 2719 cds . 3 | nsp3 in orf1ab 2720 8554 cds . 4 | nsp4 in orf1ab 8555 10054 cds . 5 | nsp5 in orf1ab 10055 10972 cds . 6 | nsp6 in orf1ab 10973 11842 cds . 7 | nsp7 in orf1ab 11843 12091 cds . 8 | nsp8 in orf1ab 12092 12685 cds . 9 | nsp9 in orf1ab 12686 13024 cds . 10 | nsp10 in orf1ab 13025 13441 cds . 11 | nsp12 in orf1ab 13442 16236 cds . 12 | nsp13 in orf1ab 16237 18039 cds . 13 | nsp14 in orf1ab 18040 19620 cds . 14 | nsp15 in orf1ab 19621 20658 cds . 15 | nsp16 in orf1ab 20659 21552 cds . 16 | nsp11 in orf1ab 13442 13480 cds . 17 | spike 21563 25384 cds . 18 | orf3A 25393 26220 cds . 19 | geneE 26245 26472 cds . 20 | geneM 26523 27191 cds . 21 | orf6 27202 27387 cds . 22 | orf7A 27394 27759 cds . 23 | orf7B 27756 27887 cds . 24 | orf8 27894 28259 cds . 25 | geneN 28274 29533 cds . 26 | orf10 29558 29674 cds . 27 | -------------------------------------------------------------------------------- /reference/artic-primers-v1-and-v2.fa: -------------------------------------------------------------------------------- 1 | >nCoV-2019_1_LEFT 2 | ACCAACCAACTTTCGATCTCTTGT 3 | >nCoV-2019_1_RIGHT 4 | CATCTTTAAGATGTTGACGTGCCTC 5 | >nCoV-2019_2_LEFT 6 | CTGTTTTACAGGTTCGCGACGT 7 | >nCoV-2019_2_RIGHT 8 | TAAGGATCAGTGCCAAGCTCGT 9 | >nCoV-2019_3_LEFT 10 | CGGTAATAAAGGAGCTGGTGGC 11 | >nCoV-2019_3_RIGHT 12 | AAGGTGTCTGCAATTCATAGCTCT 13 | >nCoV-2019_4_LEFT 14 | GGTGTATACTGCTGCCGTGAAC 15 | >nCoV-2019_4_RIGHT 16 | CACAAGTAGTGGCACCTTCTTTAGT 17 | >nCoV-2019_5_LEFT 18 | TGGTGAAACTTCATGGCAGACG 19 | >nCoV-2019_5_RIGHT 20 | ATTGATGTTGACTTTCTCTTTTTGGAGT 21 | >nCoV-2019_6_LEFT 22 | GGTGTTGTTGGAGAAGGTTCCG 23 | >nCoV-2019_6_RIGHT 24 | TAGCGGCCTTCTGTAAAACACG 25 | >nCoV-2019_7_LEFT 26 | ATCAGAGGCTGCTCGTGTTGTA 27 | >nCoV-2019_7_RIGHT 28 | TGCACAGGTGACAATTTGTCCA 29 | >nCoV-2019_8_LEFT 30 | AGAGTTTCTTAGAGACGGTTGGGA 31 | >nCoV-2019_8_RIGHT 32 | GCTTCAACAGCTTCACTAGTAGGT 33 | >nCoV-2019_9_LEFT 34 | TCCCACAGAAGTGTTAACAGAGGA 35 | >nCoV-2019_9_RIGHT 36 | ATGACAGCATCTGCCACAACAC 37 | >nCoV-2019_10_LEFT 38 | TGAGAAGTGCTCTGCCTATACAGT 39 | >nCoV-2019_10_RIGHT 40 | TCATCTAACCAATCTTCTTCTTGCTCT 41 | >nCoV-2019_11_LEFT 42 | GGAATTTGGTGCCACTTCTGCT 43 | >nCoV-2019_11_RIGHT 44 | TCATCAGATTCAACTTGCATGGCA 45 | >nCoV-2019_12_LEFT 46 | AAACATGGAGGAGGTGTTGCAG 47 | >nCoV-2019_12_RIGHT 48 | TTCACTCTTCATTTCCAAAAAGCTTGA 49 | >nCoV-2019_13_LEFT 50 | TCGCACAAATGTCTACTTAGCTGT 51 | >nCoV-2019_13_RIGHT 52 | ACCACAGCAGTTAAAACACCCT 53 | >nCoV-2019_14_LEFT 54 | CATCCAGATTCTGCCACTCTTGT 55 | >nCoV-2019_14_RIGHT 56 | AGTTTCCACACAGACAGGCATT 57 | >nCoV-2019_15_LEFT 58 | ACAGTGCTTAAAAAGTGTAAAAGTGCC 59 | >nCoV-2019_15_RIGHT 60 | AACAGAAACTGTAGCTGGCACT 61 | >nCoV-2019_16_LEFT 62 | AATTTGGAAGAAGCTGCTCGGT 63 | >nCoV-2019_16_RIGHT 64 | CACAACTTGCGTGTGGAGGTTA 65 | >nCoV-2019_17_LEFT 66 | CTTCTTTCTTTGAGAGAAGTGAGGACT 67 | >nCoV-2019_17_RIGHT 68 | TTTGTTGGAGTGTTAACAATGCAGT 69 | >nCoV-2019_18_LEFT 70 | TGGAAATACCCACAAGTTAATGGTTTAAC 71 | >nCoV-2019_18_LEFT_alt2 72 | ACTTCTATTAAATGGGCAGATAACAACTGT 73 | >nCoV-2019_18_RIGHT 74 | AGCTTGTTTACCACACGTACAAGG 75 | >nCoV-2019_19_LEFT 76 | GCTGTTATGTACATGGGCACACT 77 | >nCoV-2019_19_RIGHT 78 | TGTCCAACTTAGGGTCAATTTCTGT 79 | >nCoV-2019_20_LEFT 80 | ACAAAGAAAACAGTTACACAACAACCA 81 | >nCoV-2019_20_RIGHT 82 | ACGTGGCTTTATTAGTTGCATTGTT 83 | >nCoV-2019_21_LEFT 84 | TGGCTATTGATTATAAACACTACACACCC 85 | >nCoV-2019_21_RIGHT 86 | TAGATCTGTGTGGCCAACCTCT 87 | >nCoV-2019_22_LEFT 88 | ACTACCGAAGTTGTAGGAGACATTATACT 89 | >nCoV-2019_22_RIGHT 90 | ACAGTATTCTTTGCTATAGTAGTCGGC 91 | >nCoV-2019_23_LEFT 92 | ACAACTACTAACATAGTTACACGGTGT 93 | >nCoV-2019_23_RIGHT 94 | ACCAGTACAGTAGGTTGCAATAGTG 95 | >nCoV-2019_24_LEFT 96 | AGGCATGCCTTCTTACTGTACTG 97 | >nCoV-2019_24_RIGHT 98 | ACATTCTAACCATAGCTGAAATCGGG 99 | >nCoV-2019_25_LEFT 100 | GCAATTGTTTTTCAGCTATTTTGCAGT 101 | >nCoV-2019_25_RIGHT 102 | ACTGTAGTGACAAGTCTCTCGCA 103 | >nCoV-2019_26_LEFT 104 | TTGTGATACATTCTGTGCTGGTAGT 105 | >nCoV-2019_26_RIGHT 106 | TCCGCACTATCACCAACATCAG 107 | >nCoV-2019_27_LEFT 108 | ACTACAGTCAGCTTATGTGTCAACC 109 | >nCoV-2019_27_RIGHT 110 | AATACAAGCACCAAGGTCACGG 111 | >nCoV-2019_28_LEFT 112 | ACATAGAAGTTACTGGCGATAGTTGT 113 | >nCoV-2019_28_RIGHT 114 | TGTTTAGACATGACATGAACAGGTGT 115 | >nCoV-2019_29_LEFT 116 | ACTTGTGTTCCTTTTTGTTGCTGC 117 | >nCoV-2019_29_RIGHT 118 | AGTGTACTCTATAAGTTTTGATGGTGTGT 119 | >nCoV-2019_30_LEFT 120 | GCACAACTAATGGTGACTTTTTGCA 121 | >nCoV-2019_30_RIGHT 122 | ACCACTAGTAGATACACAAACACCAG 123 | >nCoV-2019_31_LEFT 124 | TTCTGAGTACTGTAGGCACGGC 125 | >nCoV-2019_31_RIGHT 126 | ACAGAATAAACACCAGGTAAGAATGAGT 127 | >nCoV-2019_32_LEFT 128 | TGGTGAATACAGTCATGTAGTTGCC 129 | >nCoV-2019_32_RIGHT 130 | AGCACATCACTACGCAACTTTAGA 131 | >nCoV-2019_33_LEFT 132 | ACTTTTGAAGAAGCTGCGCTGT 133 | >nCoV-2019_33_RIGHT 134 | TGGACAGTAAACTACGTCATCAAGC 135 | >nCoV-2019_34_LEFT 136 | TCCCATCTGGTAAAGTTGAGGGT 137 | >nCoV-2019_34_RIGHT 138 | AGTGAAATTGGGCCTCATAGCA 139 | >nCoV-2019_35_LEFT 140 | TGTTCGCATTCAACCAGGACAG 141 | >nCoV-2019_35_RIGHT 142 | ACTTCATAGCCACAAGGTTAAAGTCA 143 | >nCoV-2019_36_LEFT 144 | TTAGCTTGGTTGTACGCTGCTG 145 | >nCoV-2019_36_RIGHT 146 | GAACAAAGACCATTGAGTACTCTGGA 147 | >nCoV-2019_37_LEFT 148 | ACACACCACTGGTTGTTACTCAC 149 | >nCoV-2019_37_RIGHT 150 | GTCCACACTCTCCTAGCACCAT 151 | >nCoV-2019_38_LEFT 152 | ACTGTGTTATGTATGCATCAGCTGT 153 | >nCoV-2019_38_RIGHT 154 | CACCAAGAGTCAGTCTAAAGTAGCG 155 | >nCoV-2019_39_LEFT 156 | AGTATTGCCCTATTTTCTTCATAACTGGT 157 | >nCoV-2019_39_RIGHT 158 | TGTAACTGGACACATTGAGCCC 159 | >nCoV-2019_40_LEFT 160 | TGCACATCAGTAGTCTTACTCTCAGT 161 | >nCoV-2019_40_RIGHT 162 | CATGGCTGCATCACGGTCAAAT 163 | >nCoV-2019_41_LEFT 164 | GTTCCCTTCCATCATATGCAGCT 165 | >nCoV-2019_41_RIGHT 166 | TGGTATGACAACCATTAGTTTGGCT 167 | >nCoV-2019_42_LEFT 168 | TGCAAGAGATGGTTGTGTTCCC 169 | >nCoV-2019_42_RIGHT 170 | CCTACCTCCCTTTGTTGTGTTGT 171 | >nCoV-2019_43_LEFT 172 | TACGACAGATGTCTTGTGCTGC 173 | >nCoV-2019_43_RIGHT 174 | AGCAGCATCTACAGCAAAAGCA 175 | >nCoV-2019_44_LEFT 176 | TGCCACAGTACGTCTACAAGCT 177 | >nCoV-2019_44_RIGHT 178 | AACCTTTCCACATACCGCAGAC 179 | >nCoV-2019_45_LEFT 180 | TACCTACAACTTGTGCTAATGACCC 181 | >nCoV-2019_45_RIGHT 182 | AAATTGTTTCTTCATGTTGGTAGTTAGAGA 183 | >nCoV-2019_46_LEFT 184 | TGTCGCTTCCAAGAAAAGGACG 185 | >nCoV-2019_46_RIGHT 186 | CACGTTCACCTAAGTTGGCGTA 187 | >nCoV-2019_47_LEFT 188 | AGGACTGGTATGATTTTGTAGAAAACCC 189 | >nCoV-2019_47_RIGHT 190 | AATAACGGTCAAAGAGTTTTAACCTCTC 191 | >nCoV-2019_48_LEFT 192 | TGTTGACACTGACTTAACAAAGCCT 193 | >nCoV-2019_48_RIGHT 194 | TAGATTACCAGAAGCAGCGTGC 195 | >nCoV-2019_49_LEFT 196 | AGGAATTACTTGTGTATGCTGCTGA 197 | >nCoV-2019_49_RIGHT 198 | TGACGATGACTTGGTTAGCATTAATACA 199 | >nCoV-2019_50_LEFT 200 | GTTGATAAGTACTTTGATTGTTACGATGGT 201 | >nCoV-2019_50_RIGHT 202 | TAACATGTTGTGCCAACCACCA 203 | >nCoV-2019_51_LEFT 204 | TCAATAGCCGCCACTAGAGGAG 205 | >nCoV-2019_51_RIGHT 206 | AGTGCATTAACATTGGCCGTGA 207 | >nCoV-2019_52_LEFT 208 | CATCAGGAGATGCCACAACTGC 209 | >nCoV-2019_52_RIGHT 210 | GTTGAGAGCAAAATTCATGAGGTCC 211 | >nCoV-2019_53_LEFT 212 | AGCAAAATGTTGGACTGAGACTGA 213 | >nCoV-2019_53_RIGHT 214 | AGCCTCATAAAACTCAGGTTCCC 215 | >nCoV-2019_54_LEFT 216 | TGAGTTAACAGGACACATGTTAGACA 217 | >nCoV-2019_54_RIGHT 218 | AACCAAAAACTTGTCCATTAGCACA 219 | >nCoV-2019_55_LEFT 220 | ACTCAACTTTACTTAGGAGGTATGAGCT 221 | >nCoV-2019_55_RIGHT 222 | GGTGTACTCTCCTATTTGTACTTTACTGT 223 | >nCoV-2019_56_LEFT 224 | ACCTAGACCACCACTTAACCGA 225 | >nCoV-2019_56_RIGHT 226 | ACACTATGCGAGCAGAAGGGTA 227 | >nCoV-2019_57_LEFT 228 | ATTCTACACTCCAGGGACCACC 229 | >nCoV-2019_57_RIGHT 230 | GTAATTGAGCAGGGTCGCCAAT 231 | >nCoV-2019_58_LEFT 232 | TGATTTGAGTGTTGTCAATGCCAGA 233 | >nCoV-2019_58_RIGHT 234 | CTTTTCTCCAAGCAGGGTTACGT 235 | >nCoV-2019_59_LEFT 236 | TCACGCATGATGTTTCATCTGCA 237 | >nCoV-2019_59_RIGHT 238 | AAGAGTCCTGTTACATTTTCAGCTTG 239 | >nCoV-2019_60_LEFT 240 | TGATAGAGACCTTTATGACAAGTTGCA 241 | >nCoV-2019_60_RIGHT 242 | GGTACCAACAGCTTCTCTAGTAGC 243 | >nCoV-2019_61_LEFT 244 | TGTTTATCACCCGCGAAGAAGC 245 | >nCoV-2019_61_RIGHT 246 | ATCACATAGACAACAGGTGCGC 247 | >nCoV-2019_62_LEFT 248 | GGCACATGGCTTTGAGTTGACA 249 | >nCoV-2019_62_RIGHT 250 | GTTGAACCTTTCTACAAGCCGC 251 | >nCoV-2019_63_LEFT 252 | TGTTAAGCGTGTTGACTGGACT 253 | >nCoV-2019_63_RIGHT 254 | ACAAACTGCCACCATCACAACC 255 | >nCoV-2019_64_LEFT 256 | TCGATAGATATCCTGCTAATTCCATTGT 257 | >nCoV-2019_64_RIGHT 258 | AGTCTTGTAAAAGTGTTCCAGAGGT 259 | >nCoV-2019_65_LEFT 260 | GCTGGCTTTAGCTTGTGGGTTT 261 | >nCoV-2019_65_RIGHT 262 | TGTCAGTCATAGAACAAACACCAATAGT 263 | >nCoV-2019_66_LEFT 264 | GGGTGTGGACATTGCTGCTAAT 265 | >nCoV-2019_66_RIGHT 266 | TCAATTTCCATTTGACTCCTGGGT 267 | >nCoV-2019_67_LEFT 268 | GTTGTCCAACAATTACCTGAAACTTACT 269 | >nCoV-2019_67_RIGHT 270 | CAACCTTAGAAACTACAGATAAATCTTGGG 271 | >nCoV-2019_68_LEFT 272 | ACAGGTTCATCTAAGTGTGTGTGT 273 | >nCoV-2019_68_RIGHT 274 | CTCCTTTATCAGAACCAGCACCA 275 | >nCoV-2019_69_LEFT 276 | TGTCGCAAAATATACTCAACTGTGTCA 277 | >nCoV-2019_69_RIGHT 278 | TCTTTATAGCCACGGAACCTCCA 279 | >nCoV-2019_70_LEFT 280 | ACAAAAGAAAATGACTCTAAAGAGGGTTT 281 | >nCoV-2019_70_RIGHT 282 | TGACCTTCTTTTAAAGACATAACAGCAG 283 | >nCoV-2019_71_LEFT 284 | ACAAATCCAATTCAGTTGTCTTCCTATTC 285 | >nCoV-2019_71_RIGHT 286 | TGGAAAAGAAAGGTAAGAACAAGTCCT 287 | >nCoV-2019_72_LEFT 288 | ACACGTGGTGTTTATTACCCTGAC 289 | >nCoV-2019_72_RIGHT 290 | ACTCTGAACTCACTTTCCATCCAAC 291 | >nCoV-2019_73_LEFT 292 | CAATTTTGTAATGATCCATTTTTGGGTGT 293 | >nCoV-2019_73_RIGHT 294 | CACCAGCTGTCCAACCTGAAGA 295 | >nCoV-2019_74_LEFT 296 | ACATCACTAGGTTTCAAACTTTACTTGC 297 | >nCoV-2019_74_RIGHT 298 | GCAACACAGTTGCTGATTCTCTTC 299 | >nCoV-2019_75_LEFT 300 | AGAGTCCAACCAACAGAATCTATTGT 301 | >nCoV-2019_75_RIGHT 302 | ACCACCAACCTTAGAATCAAGATTGT 303 | >nCoV-2019_76_LEFT 304 | AGGGCAAACTGGAAAGATTGCT 305 | >nCoV-2019_76_RIGHT 306 | ACACCTGTGCCTGTTAAACCAT 307 | >nCoV-2019_77_LEFT 308 | CCAGCAACTGTTTGTGGACCTA 309 | >nCoV-2019_77_RIGHT 310 | CAGCCCCTATTAAACAGCCTGC 311 | >nCoV-2019_78_LEFT 312 | CAACTTACTCCTACTTGGCGTGT 313 | >nCoV-2019_78_RIGHT 314 | TGTGTACAAAAACTGCCATATTGCA 315 | >nCoV-2019_79_LEFT 316 | GTGGTGATTCAACTGAATGCAGC 317 | >nCoV-2019_79_RIGHT 318 | CATTTCATCTGTGAGCAAAGGTGG 319 | >nCoV-2019_80_LEFT 320 | TTGCCTTGGTGATATTGCTGCT 321 | >nCoV-2019_80_RIGHT 322 | TGGAGCTAAGTTGTTTAACAAGCG 323 | >nCoV-2019_81_LEFT 324 | GCACTTGGAAAACTTCAAGATGTGG 325 | >nCoV-2019_81_RIGHT 326 | GTGAAGTTCTTTTCTTGTGCAGGG 327 | >nCoV-2019_82_LEFT 328 | GGGCTATCATCTTATGTCCTTCCCT 329 | >nCoV-2019_82_RIGHT 330 | TGCCAGAGATGTCACCTAAATCAA 331 | >nCoV-2019_83_LEFT 332 | TCCTTTGCAACCTGAATTAGACTCA 333 | >nCoV-2019_83_RIGHT 334 | TTTGACTCCTTTGAGCACTGGC 335 | >nCoV-2019_84_LEFT 336 | TGCTGTAGTTGTCTCAAGGGCT 337 | >nCoV-2019_84_RIGHT 338 | AGGTGTGAGTAAACTGTTACAAACAAC 339 | >nCoV-2019_85_LEFT 340 | ACTAGCACTCTCCAAGGGTGTT 341 | >nCoV-2019_85_RIGHT 342 | ACACAGTCTTTTACTCCAGATTCCC 343 | >nCoV-2019_86_LEFT 344 | TCAGGTGATGGCACAACAAGTC 345 | >nCoV-2019_86_RIGHT 346 | ACGAAAGCAAGAAAAAGAAGTACGC 347 | >nCoV-2019_87_LEFT 348 | CGACTACTAGCGTGCCTTTGTA 349 | >nCoV-2019_87_RIGHT 350 | ACTAGGTTCCATTGTTCAAGGAGC 351 | >nCoV-2019_88_LEFT 352 | CCATGGCAGATTCCAACGGTAC 353 | >nCoV-2019_88_RIGHT 354 | TGGTCAGAATAGTGCCATGGAGT 355 | >nCoV-2019_89_LEFT 356 | GTACGCGTTCCATGTGGTCATT 357 | >nCoV-2019_89_RIGHT 358 | ACCTGAAAGTCAACGAGATGAAACA 359 | >nCoV-2019_90_LEFT 360 | ACACAGACCATTCCAGTAGCAGT 361 | >nCoV-2019_90_RIGHT 362 | TGAAATGGTGAATTGCCCTCGT 363 | >nCoV-2019_91_LEFT 364 | TCACTACCAAGAGTGTGTTAGAGGT 365 | >nCoV-2019_91_RIGHT 366 | TTCAAGTGAGAACCAAAAGATAATAAGCA 367 | >nCoV-2019_92_LEFT 368 | TTTGTGCTTTTTAGCCTTTCTGCT 369 | >nCoV-2019_92_RIGHT 370 | AGGTTCCTGGCAATTAATTGTAAAAGG 371 | >nCoV-2019_93_LEFT 372 | TGAGGCTGGTTCTAAATCACCCA 373 | >nCoV-2019_93_RIGHT 374 | AGGTCTTCCTTGCCATGTTGAG 375 | >nCoV-2019_94_LEFT 376 | GGCCCCAAGGTTTACCCAATAA 377 | >nCoV-2019_94_RIGHT 378 | TTTGGCAATGTTGTTCCTTGAGG 379 | >nCoV-2019_95_LEFT 380 | TGAGGGAGCCTTGAATACACCA 381 | >nCoV-2019_95_RIGHT 382 | CAGTACGTTTTTGCCGAGGCTT 383 | >nCoV-2019_96_LEFT 384 | GCCAACAACAACAAGGCCAAAC 385 | >nCoV-2019_96_RIGHT 386 | TAGGCTCTGTTGGTGGGAATGT 387 | >nCoV-2019_97_LEFT 388 | TGGATGACAAAGATCCAAATTTCAAAGA 389 | >nCoV-2019_97_RIGHT 390 | ACACACTGATTAAAGATTGCTATGTGAG 391 | >nCoV-2019_98_LEFT 392 | AACAATTGCAACAATCCATGAGCA 393 | >nCoV-2019_98_RIGHT 394 | TTCTCCTAAGAAGCTATTAAAATCACATGG 395 | -------------------------------------------------------------------------------- /reference/data/NC_045512.2/genes.gff: -------------------------------------------------------------------------------- 1 | ##gff-version 3 2 | ##sequence-region NC_045512.2 1 29903 3 | NC_045512.2 annotation remark 1 29903 . . . accessions=NC_045512;comment=REVIEWED REFSEQ: This record has been curated by NCBI staff. The%0Areference sequence is identical to MN908947.%0AOn Jan 17%2C 2020 this sequence version replaced NC_045512.1.%0AAnnotation was added using homology to SARSr-CoV NC_004718.3. %23%23%23%0AFormerly called %27Wuhan seafood market pneumonia virus.%27 If you have%0Aquestions or suggestions%2C please email us at info%40ncbi.nlm.nih.gov%0Aand include the accession number NC_045512.%23%23%23 Protein structures%0Acan be found at%0Ahttps://www.ncbi.nlm.nih.gov/structure/%3Fterm%3Dsars-cov-2.%23%23%23 Find%0Aall other Severe acute respiratory syndrome coronavirus 2%0A%28SARS-CoV-2%29 sequences at%0Ahttps://www.ncbi.nlm.nih.gov/genbank/sars-cov-2-seqs/%0ACOMPLETENESS: full length.;data_file_division=VRL;date=18-JUL-2020;keywords=RefSeq;molecule_type=ss-RNA;organism=Severe acute respiratory syndrome coronavirus 2;references=location: %5B0:29903%5D%0Aauthors: Wu%2CF.%2C Zhao%2CS.%2C Yu%2CB.%2C Chen%2CY.M.%2C Wang%2CW.%2C Song%2CZ.G.%2C Hu%2CY.%2C Tao%2CZ.W.%2C Tian%2CJ.H.%2C Pei%2CY.Y.%2C Yuan%2CM.L.%2C Zhang%2CY.L.%2C Dai%2CF.H.%2C Liu%2CY.%2C Wang%2CQ.M.%2C Zheng%2CJ.J.%2C Xu%2CL.%2C Holmes%2CE.C. and Zhang%2CY.Z.%0Atitle: A new coronavirus associated with human respiratory disease in China%0Ajournal: Nature 579 %287798%29%2C 265-269 %282020%29%0Amedline id: %0Apubmed id: 32015508%0Acomment: Erratum:%5BNature. 2020 Apr%3B580%287803%29:E7. PMID: 32296181%5D,location: %5B13475:13503%5D%0Aauthors: Baranov%2CP.V.%2C Henderson%2CC.M.%2C Anderson%2CC.B.%2C Gesteland%2CR.F.%2C Atkins%2CJ.F. and Howard%2CM.T.%0Atitle: Programmed ribosomal frameshifting in decoding the SARS-CoV genome%0Ajournal: Virology 332 %282%29%2C 498-510 %282005%29%0Amedline id: %0Apubmed id: 15680415%0Acomment:,location: %5B29727:29768%5D%0Aauthors: Robertson%2CM.P.%2C Igel%2CH.%2C Baertsch%2CR.%2C Haussler%2CD.%2C Ares%2CM. Jr. and Scott%2CW.G.%0Atitle: The structure of a rigorously conserved RNA element within the SARS virus genome%0Ajournal: PLoS Biol. 3 %281%29%2C e5 %282005%29%0Amedline id: %0Apubmed id: 15630477%0Acomment:,location: %5B29608:29657%5D%0Aauthors: Williams%2CG.D.%2C Chang%2CR.Y. and Brian%2CD.A.%0Atitle: A phylogenetically conserved hairpin-type 3%27 untranslated region pseudoknot functions in coronavirus RNA replication%0Ajournal: J. Virol. 73 %2810%29%2C 8349-8355 %281999%29%0Amedline id: %0Apubmed id: 10482585%0Acomment:,location: %5B0:29903%5D%0Aauthors: %0Aconsrtm: NCBI Genome Project%0Atitle: Direct Submission%0Ajournal: Submitted %2817-JAN-2020%29 National Center for Biotechnology Information%2C NIH%2C Bethesda%2C MD 20894%2C USA%0Amedline id: %0Apubmed id: %0Acomment:,location: %5B0:29903%5D%0Aauthors: Wu%2CF.%2C Zhao%2CS.%2C Yu%2CB.%2C Chen%2CY.-M.%2C Wang%2CW.%2C Hu%2CY.%2C Song%2CZ.-G.%2C Tao%2CZ.-W.%2C Tian%2CJ.-H.%2C Pei%2CY.-Y.%2C Yuan%2CM.L.%2C Zhang%2CY.-L.%2C Dai%2CF.-H.%2C Liu%2CY.%2C Wang%2CQ.-M.%2C Zheng%2CJ.-J.%2C Xu%2CL.%2C Holmes%2CE.C. and Zhang%2CY.-Z.%0Atitle: Direct Submission%0Ajournal: Submitted %2805-JAN-2020%29 Shanghai Public Health Clinical Center %26 School of Public Health%2C Fudan University%2C Shanghai%2C China%0Amedline id: %0Apubmed id: %0Acomment:;sequence_version=2;source=Severe acute respiratory syndrome coronavirus 2 %28SARS-CoV-2%29;structured_comment=OrderedDict%28%5B%28%27Assembly-Data%27%2C OrderedDict%28%5B%28%27Assembly Method%27%2C %27Megahit v. V1.1.3%27%29%2C %28%27Sequencing Technology%27%2C %27Illumina%27%29%5D%29%29%5D%29;taxonomy=Viruses,Riboviria,Orthornavirae,Pisuviricota,Pisoniviricetes,Nidovirales,Cornidovirineae,Coronaviridae,Orthocoronavirinae,Betacoronavirus,Sarbecovirus;topology=linear 4 | NC_045512.2 feature gene 266 21555 . + . ID=gene:ORF1ab;Name=ORF1ab;biotype=protein_coding;db_xref=GeneID:43740578;gene=ORF1ab;locus_tag=GU280_gp01 5 | NC_045512.2 feature CDS 266 13468 . + 0 ID=CDS:YP_009724389.1;Parent=transcript:YP_009724389.1_0;biotype=protein_coding;codon_start=1;db_xref=GeneID:43740578;gene=ORF1ab;locus_tag=GU280_gp01;protein_id=YP_009724389.1;ribosomal_slippage= 6 | NC_045512.2 feature mRNA 266 21555 . + . ID=transcript:YP_009724389.1_0;Parent=gene:ORF1ab;biotype=protein_coding 7 | NC_045512.2 feature CDS 13468 21555 . + 0 ID=CDS:YP_009724389.1;Parent=transcript:YP_009724389.1_1;biotype=protein_coding;codon_start=1;db_xref=GeneID:43740578;gene=ORF1ab;locus_tag=GU280_gp01;protein_id=YP_009724389.1;ribosomal_slippage= 8 | NC_045512.2 feature mRNA 266 21555 . + . ID=transcript:YP_009724389.1_1;Parent=gene:ORF1ab;biotype=protein_coding 9 | NC_045512.2 feature CDS 266 13483 . + 0 ID=CDS:YP_009725295.1;Parent=transcript:YP_009725295.1_0;biotype=protein_coding;codon_start=1;db_xref=GeneID:43740578;gene=ORF1ab;locus_tag=GU280_gp01;protein_id=YP_009725295.1 10 | NC_045512.2 feature mRNA 266 13483 . + . ID=transcript:YP_009725295.1_0;Parent=gene:ORF1ab;biotype=protein_coding 11 | NC_045512.2 feature gene 21563 25384 . + . ID=gene:S;Name=S;biotype=protein_coding;db_xref=GeneID:43740568;gene=S;gene_synonym=spike glycoprotein;locus_tag=GU280_gp02 12 | NC_045512.2 feature CDS 21563 25384 . + 0 ID=CDS:YP_009724390.1;Parent=transcript:YP_009724390.1_0;biotype=protein_coding;codon_start=1;db_xref=GeneID:43740568;gene=S;gene_synonym=spike glycoprotein;locus_tag=GU280_gp02;protein_id=YP_009724390.1 13 | NC_045512.2 feature mRNA 21563 25384 . + . ID=transcript:YP_009724390.1_0;Parent=gene:S;biotype=protein_coding 14 | NC_045512.2 feature gene 25393 26220 . + . ID=gene:ORF3a;Name=ORF3a;biotype=protein_coding;db_xref=GeneID:43740569;gene=ORF3a;locus_tag=GU280_gp03 15 | NC_045512.2 feature CDS 25393 26220 . + 0 ID=CDS:YP_009724391.1;Parent=transcript:YP_009724391.1_0;biotype=protein_coding;codon_start=1;db_xref=GeneID:43740569;gene=ORF3a;locus_tag=GU280_gp03;protein_id=YP_009724391.1 16 | NC_045512.2 feature mRNA 25393 26220 . + . ID=transcript:YP_009724391.1_0;Parent=gene:ORF3a;biotype=protein_coding 17 | NC_045512.2 feature gene 26245 26472 . + . ID=gene:E;Name=E;biotype=protein_coding;db_xref=GeneID:43740570;gene=E;locus_tag=GU280_gp04 18 | NC_045512.2 feature CDS 26245 26472 . + 0 ID=CDS:YP_009724392.1;Parent=transcript:YP_009724392.1_0;biotype=protein_coding;codon_start=1;db_xref=GeneID:43740570;gene=E;locus_tag=GU280_gp04;protein_id=YP_009724392.1 19 | NC_045512.2 feature mRNA 26245 26472 . + . ID=transcript:YP_009724392.1_0;Parent=gene:E;biotype=protein_coding 20 | NC_045512.2 feature gene 26523 27191 . + . ID=gene:M;Name=M;biotype=protein_coding;db_xref=GeneID:43740571;gene=M;locus_tag=GU280_gp05 21 | NC_045512.2 feature CDS 26523 27191 . + 0 ID=CDS:YP_009724393.1;Parent=transcript:YP_009724393.1_0;biotype=protein_coding;codon_start=1;db_xref=GeneID:43740571;gene=M;locus_tag=GU280_gp05;protein_id=YP_009724393.1 22 | NC_045512.2 feature mRNA 26523 27191 . + . ID=transcript:YP_009724393.1_0;Parent=gene:M;biotype=protein_coding 23 | NC_045512.2 feature gene 27202 27387 . + . ID=gene:ORF6;Name=ORF6;biotype=protein_coding;db_xref=GeneID:43740572;gene=ORF6;locus_tag=GU280_gp06 24 | NC_045512.2 feature CDS 27202 27387 . + 0 ID=CDS:YP_009724394.1;Parent=transcript:YP_009724394.1_0;biotype=protein_coding;codon_start=1;db_xref=GeneID:43740572;gene=ORF6;locus_tag=GU280_gp06;protein_id=YP_009724394.1 25 | NC_045512.2 feature mRNA 27202 27387 . + . ID=transcript:YP_009724394.1_0;Parent=gene:ORF6;biotype=protein_coding 26 | NC_045512.2 feature gene 27394 27759 . + . ID=gene:ORF7a;Name=ORF7a;biotype=protein_coding;db_xref=GeneID:43740573;gene=ORF7a;locus_tag=GU280_gp07 27 | NC_045512.2 feature CDS 27394 27759 . + 0 ID=CDS:YP_009724395.1;Parent=transcript:YP_009724395.1_0;biotype=protein_coding;codon_start=1;db_xref=GeneID:43740573;gene=ORF7a;locus_tag=GU280_gp07;protein_id=YP_009724395.1 28 | NC_045512.2 feature mRNA 27394 27759 . + . ID=transcript:YP_009724395.1_0;Parent=gene:ORF7a;biotype=protein_coding 29 | NC_045512.2 feature gene 27756 27887 . + . ID=gene:ORF7b;Name=ORF7b;biotype=protein_coding;db_xref=GeneID:43740574;gene=ORF7b;locus_tag=GU280_gp08 30 | NC_045512.2 feature CDS 27756 27887 . + 0 ID=CDS:YP_009725318.1;Parent=transcript:YP_009725318.1_0;biotype=protein_coding;codon_start=1;db_xref=GeneID:43740574;gene=ORF7b;locus_tag=GU280_gp08;protein_id=YP_009725318.1 31 | NC_045512.2 feature mRNA 27756 27887 . + . ID=transcript:YP_009725318.1_0;Parent=gene:ORF7b;biotype=protein_coding 32 | NC_045512.2 feature gene 27894 28259 . + . ID=gene:ORF8;Name=ORF8;biotype=protein_coding;db_xref=GeneID:43740577;gene=ORF8;locus_tag=GU280_gp09 33 | NC_045512.2 feature CDS 27894 28259 . + 0 ID=CDS:YP_009724396.1;Parent=transcript:YP_009724396.1_0;biotype=protein_coding;codon_start=1;db_xref=GeneID:43740577;gene=ORF8;locus_tag=GU280_gp09;protein_id=YP_009724396.1 34 | NC_045512.2 feature mRNA 27894 28259 . + . ID=transcript:YP_009724396.1_0;Parent=gene:ORF8;biotype=protein_coding 35 | NC_045512.2 feature gene 28274 29533 . + . ID=gene:N;Name=N;biotype=protein_coding;db_xref=GeneID:43740575;gene=N;locus_tag=GU280_gp10 36 | NC_045512.2 feature CDS 28274 29533 . + 0 ID=CDS:YP_009724397.2;Parent=transcript:YP_009724397.2_0;biotype=protein_coding;codon_start=1;db_xref=GeneID:43740575;gene=N;locus_tag=GU280_gp10;protein_id=YP_009724397.2 37 | NC_045512.2 feature mRNA 28274 29533 . + . ID=transcript:YP_009724397.2_0;Parent=gene:N;biotype=protein_coding 38 | NC_045512.2 feature gene 29558 29674 . + . ID=gene:ORF10;Name=ORF10;biotype=protein_coding;db_xref=GeneID:43740576;gene=ORF10;locus_tag=GU280_gp11 39 | NC_045512.2 feature CDS 29558 29674 . + 0 ID=CDS:YP_009725255.1;Parent=transcript:YP_009725255.1_0;biotype=protein_coding;codon_start=1;db_xref=GeneID:43740576;gene=ORF10;locus_tag=GU280_gp11;protein_id=YP_009725255.1 40 | NC_045512.2 feature mRNA 29558 29674 . + . ID=transcript:YP_009725255.1_0;Parent=gene:ORF10;biotype=protein_coding 41 | -------------------------------------------------------------------------------- /reference/low_complexity_regions.txt: -------------------------------------------------------------------------------- 1 | MN908947.3 1788 1819 2 | MN908947.3 6309 6336 3 | MN908947.3 9621 9634 4 | MN908947.3 11023 11047 5 | MN908947.3 11066 11108 6 | MN908947.3 11986 12003 7 | MN908947.3 16500 16522 8 | MN908947.3 17648 17662 9 | MN908947.3 19979 19990 10 | MN908947.3 20135 20144 11 | MN908947.3 20522 20542 12 | MN908947.3 21093 21108 13 | MN908947.3 21731 21743 14 | MN908947.3 24671 24691 15 | MN908947.3 25528 25561 16 | -------------------------------------------------------------------------------- /reference/nCoV-2019.reference.gtf: -------------------------------------------------------------------------------- 1 | #gtf-version 2.2 2 | #!genome-build ASM985889v3 3 | #!genome-build-accession NCBI_Assembly:GCF_009858895.2 4 | MN908947.3 RefSeq gene 266 21555 . + . gene_id "GU280_gp01"; transcript_id ""; db_xref "GeneID:43740578"; gbkey "Gene"; gene "ORF1ab"; gene_biotype "protein_coding"; locus_tag "GU280_gp01"; 5 | MN908947.3 RefSeq CDS 266 13468 . + 0 gene_id "GU280_gp01"; transcript_id "unknown_transcript_1"; exception "ribosomal slippage"; gbkey "CDS"; gene "ORF1ab"; locus_tag "GU280_gp01"; note "pp1ab; translated by -1 ribosomal frameshift"; product "ORF1ab polyprotein"; protein_id "YP_009724389.1"; 6 | MN908947.3 RefSeq CDS 13468 21552 . + 0 gene_id "GU280_gp01"; transcript_id "unknown_transcript_1"; exception "ribosomal slippage"; gbkey "CDS"; gene "ORF1ab"; locus_tag "GU280_gp01"; note "pp1ab; translated by -1 ribosomal frameshift"; product "ORF1ab polyprotein"; protein_id "YP_009724389.1"; 7 | MN908947.3 RefSeq start_codon 266 268 . + 0 gene_id "GU280_gp01"; transcript_id "unknown_transcript_1"; exception "ribosomal slippage"; gbkey "CDS"; gene "ORF1ab"; locus_tag "GU280_gp01"; note "pp1ab; translated by -1 ribosomal frameshift"; product "ORF1ab polyprotein"; protein_id "YP_009724389.1"; 8 | MN908947.3 RefSeq stop_codon 21553 21555 . + 0 gene_id "GU280_gp01"; transcript_id "unknown_transcript_1"; exception "ribosomal slippage"; gbkey "CDS"; gene "ORF1ab"; locus_tag "GU280_gp01"; note "pp1ab; translated by -1 ribosomal frameshift"; product "ORF1ab polyprotein"; protein_id "YP_009724389.1"; 9 | MN908947.3 RefSeq CDS 266 13480 . + 0 gene_id "GU280_gp01"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF1ab"; locus_tag "GU280_gp01"; note "pp1a"; product "ORF1a polyprotein"; protein_id "YP_009725295.1"; 10 | MN908947.3 RefSeq start_codon 266 268 . + 0 gene_id "GU280_gp01"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF1ab"; locus_tag "GU280_gp01"; note "pp1a"; product "ORF1a polyprotein"; protein_id "YP_009725295.1"; 11 | MN908947.3 RefSeq stop_codon 13481 13483 . + 0 gene_id "GU280_gp01"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF1ab"; locus_tag "GU280_gp01"; note "pp1a"; product "ORF1a polyprotein"; protein_id "YP_009725295.1"; 12 | MN908947.3 RefSeq gene 21563 25384 . + . gene_id "GU280_gp02"; transcript_id ""; db_xref "GeneID:43740568"; gbkey "Gene"; gene "S"; gene_biotype "protein_coding"; gene_synonym "spike glycoprotein"; locus_tag "GU280_gp02"; 13 | MN908947.3 RefSeq CDS 21563 25381 . + 0 gene_id "GU280_gp02"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "S"; locus_tag "GU280_gp02"; note "structural protein; spike protein"; product "surface glycoprotein"; protein_id "YP_009724390.1"; 14 | MN908947.3 RefSeq start_codon 21563 21565 . + 0 gene_id "GU280_gp02"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "S"; locus_tag "GU280_gp02"; note "structural protein; spike protein"; product "surface glycoprotein"; protein_id "YP_009724390.1"; 15 | MN908947.3 RefSeq stop_codon 25382 25384 . + 0 gene_id "GU280_gp02"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "S"; locus_tag "GU280_gp02"; note "structural protein; spike protein"; product "surface glycoprotein"; protein_id "YP_009724390.1"; 16 | MN908947.3 RefSeq gene 25393 26220 . + . gene_id "GU280_gp03"; transcript_id ""; db_xref "GeneID:43740569"; gbkey "Gene"; gene "ORF3a"; gene_biotype "protein_coding"; locus_tag "GU280_gp03"; 17 | MN908947.3 RefSeq CDS 25393 26217 . + 0 gene_id "GU280_gp03"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF3a"; locus_tag "GU280_gp03"; product "ORF3a protein"; protein_id "YP_009724391.1"; 18 | MN908947.3 RefSeq start_codon 25393 25395 . + 0 gene_id "GU280_gp03"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF3a"; locus_tag "GU280_gp03"; product "ORF3a protein"; protein_id "YP_009724391.1"; 19 | MN908947.3 RefSeq stop_codon 26218 26220 . + 0 gene_id "GU280_gp03"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF3a"; locus_tag "GU280_gp03"; product "ORF3a protein"; protein_id "YP_009724391.1"; 20 | MN908947.3 RefSeq gene 26245 26472 . + . gene_id "GU280_gp04"; transcript_id ""; db_xref "GeneID:43740570"; gbkey "Gene"; gene "E"; gene_biotype "protein_coding"; locus_tag "GU280_gp04"; 21 | MN908947.3 RefSeq CDS 26245 26469 . + 0 gene_id "GU280_gp04"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "E"; locus_tag "GU280_gp04"; note "ORF4; structural protein; E protein"; product "envelope protein"; protein_id "YP_009724392.1"; 22 | MN908947.3 RefSeq start_codon 26245 26247 . + 0 gene_id "GU280_gp04"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "E"; locus_tag "GU280_gp04"; note "ORF4; structural protein; E protein"; product "envelope protein"; protein_id "YP_009724392.1"; 23 | MN908947.3 RefSeq stop_codon 26470 26472 . + 0 gene_id "GU280_gp04"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "E"; locus_tag "GU280_gp04"; note "ORF4; structural protein; E protein"; product "envelope protein"; protein_id "YP_009724392.1"; 24 | MN908947.3 RefSeq gene 26523 27191 . + . gene_id "GU280_gp05"; transcript_id ""; db_xref "GeneID:43740571"; gbkey "Gene"; gene "M"; gene_biotype "protein_coding"; locus_tag "GU280_gp05"; 25 | MN908947.3 RefSeq CDS 26523 27188 . + 0 gene_id "GU280_gp05"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "M"; locus_tag "GU280_gp05"; note "ORF5; structural protein"; product "membrane glycoprotein"; protein_id "YP_009724393.1"; 26 | MN908947.3 RefSeq start_codon 26523 26525 . + 0 gene_id "GU280_gp05"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "M"; locus_tag "GU280_gp05"; note "ORF5; structural protein"; product "membrane glycoprotein"; protein_id "YP_009724393.1"; 27 | MN908947.3 RefSeq stop_codon 27189 27191 . + 0 gene_id "GU280_gp05"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "M"; locus_tag "GU280_gp05"; note "ORF5; structural protein"; product "membrane glycoprotein"; protein_id "YP_009724393.1"; 28 | MN908947.3 RefSeq gene 27202 27387 . + . gene_id "GU280_gp06"; transcript_id ""; db_xref "GeneID:43740572"; gbkey "Gene"; gene "ORF6"; gene_biotype "protein_coding"; locus_tag "GU280_gp06"; 29 | MN908947.3 RefSeq CDS 27202 27384 . + 0 gene_id "GU280_gp06"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF6"; locus_tag "GU280_gp06"; product "ORF6 protein"; protein_id "YP_009724394.1"; 30 | MN908947.3 RefSeq start_codon 27202 27204 . + 0 gene_id "GU280_gp06"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF6"; locus_tag "GU280_gp06"; product "ORF6 protein"; protein_id "YP_009724394.1"; 31 | MN908947.3 RefSeq stop_codon 27385 27387 . + 0 gene_id "GU280_gp06"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF6"; locus_tag "GU280_gp06"; product "ORF6 protein"; protein_id "YP_009724394.1"; 32 | MN908947.3 RefSeq gene 27394 27759 . + . gene_id "GU280_gp07"; transcript_id ""; db_xref "GeneID:43740573"; gbkey "Gene"; gene "ORF7a"; gene_biotype "protein_coding"; locus_tag "GU280_gp07"; 33 | MN908947.3 RefSeq CDS 27394 27756 . + 0 gene_id "GU280_gp07"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF7a"; locus_tag "GU280_gp07"; product "ORF7a protein"; protein_id "YP_009724395.1"; 34 | MN908947.3 RefSeq start_codon 27394 27396 . + 0 gene_id "GU280_gp07"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF7a"; locus_tag "GU280_gp07"; product "ORF7a protein"; protein_id "YP_009724395.1"; 35 | MN908947.3 RefSeq stop_codon 27757 27759 . + 0 gene_id "GU280_gp07"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF7a"; locus_tag "GU280_gp07"; product "ORF7a protein"; protein_id "YP_009724395.1"; 36 | MN908947.3 RefSeq gene 27756 27887 . + . gene_id "GU280_gp08"; transcript_id ""; db_xref "GeneID:43740574"; gbkey "Gene"; gene "ORF7b"; gene_biotype "protein_coding"; locus_tag "GU280_gp08"; 37 | MN908947.3 RefSeq CDS 27756 27884 . + 0 gene_id "GU280_gp08"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF7b"; locus_tag "GU280_gp08"; product "ORF7b"; protein_id "YP_009725318.1"; 38 | MN908947.3 RefSeq start_codon 27756 27758 . + 0 gene_id "GU280_gp08"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF7b"; locus_tag "GU280_gp08"; product "ORF7b"; protein_id "YP_009725318.1"; 39 | MN908947.3 RefSeq stop_codon 27885 27887 . + 0 gene_id "GU280_gp08"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF7b"; locus_tag "GU280_gp08"; product "ORF7b"; protein_id "YP_009725318.1"; 40 | MN908947.3 RefSeq gene 27894 28259 . + . gene_id "GU280_gp09"; transcript_id ""; db_xref "GeneID:43740577"; gbkey "Gene"; gene "ORF8"; gene_biotype "protein_coding"; locus_tag "GU280_gp09"; 41 | MN908947.3 RefSeq CDS 27894 28256 . + 0 gene_id "GU280_gp09"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF8"; locus_tag "GU280_gp09"; product "ORF8 protein"; protein_id "YP_009724396.1"; 42 | MN908947.3 RefSeq start_codon 27894 27896 . + 0 gene_id "GU280_gp09"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF8"; locus_tag "GU280_gp09"; product "ORF8 protein"; protein_id "YP_009724396.1"; 43 | MN908947.3 RefSeq stop_codon 28257 28259 . + 0 gene_id "GU280_gp09"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF8"; locus_tag "GU280_gp09"; product "ORF8 protein"; protein_id "YP_009724396.1"; 44 | MN908947.3 RefSeq gene 28274 29533 . + . gene_id "GU280_gp10"; transcript_id ""; db_xref "GeneID:43740575"; gbkey "Gene"; gene "N"; gene_biotype "protein_coding"; locus_tag "GU280_gp10"; 45 | MN908947.3 RefSeq CDS 28274 29530 . + 0 gene_id "GU280_gp10"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "N"; locus_tag "GU280_gp10"; note "ORF9; structural protein"; product "nucleocapsid phosphoprotein"; protein_id "YP_009724397.2"; 46 | MN908947.3 RefSeq start_codon 28274 28276 . + 0 gene_id "GU280_gp10"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "N"; locus_tag "GU280_gp10"; note "ORF9; structural protein"; product "nucleocapsid phosphoprotein"; protein_id "YP_009724397.2"; 47 | MN908947.3 RefSeq stop_codon 29531 29533 . + 0 gene_id "GU280_gp10"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "N"; locus_tag "GU280_gp10"; note "ORF9; structural protein"; product "nucleocapsid phosphoprotein"; protein_id "YP_009724397.2"; 48 | MN908947.3 RefSeq gene 29558 29674 . + . gene_id "GU280_gp11"; transcript_id ""; db_xref "GeneID:43740576"; gbkey "Gene"; gene "ORF10"; gene_biotype "protein_coding"; locus_tag "GU280_gp11"; 49 | MN908947.3 RefSeq CDS 29558 29671 . + 0 gene_id "GU280_gp11"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF10"; locus_tag "GU280_gp11"; product "ORF10 protein"; protein_id "YP_009725255.1"; 50 | MN908947.3 RefSeq start_codon 29558 29560 . + 0 gene_id "GU280_gp11"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF10"; locus_tag "GU280_gp11"; product "ORF10 protein"; protein_id "YP_009725255.1"; 51 | MN908947.3 RefSeq stop_codon 29672 29674 . + 0 gene_id "GU280_gp11"; transcript_id "unknown_transcript_1"; gbkey "CDS"; gene "ORF10"; locus_tag "GU280_gp11"; product "ORF10 protein"; protein_id "YP_009725255.1"; 52 | ### 53 | -------------------------------------------------------------------------------- /reference/primer_schemes/nCoV-2019/V1/nCoV-2019.bed: -------------------------------------------------------------------------------- 1 | MN908947.3 30 54 nCoV-2019_1_LEFT 60 + 2 | MN908947.3 385 410 nCoV-2019_1_RIGHT 60 - 3 | MN908947.3 320 342 nCoV-2019_2_LEFT 60 + 4 | MN908947.3 704 726 nCoV-2019_2_RIGHT 60 - 5 | MN908947.3 642 664 nCoV-2019_3_LEFT 60 + 6 | MN908947.3 1004 1028 nCoV-2019_3_RIGHT 60 - 7 | MN908947.3 943 965 nCoV-2019_4_LEFT 60 + 8 | MN908947.3 1312 1337 nCoV-2019_4_RIGHT 60 - 9 | MN908947.3 1242 1264 nCoV-2019_5_LEFT 60 + 10 | MN908947.3 1623 1651 nCoV-2019_5_RIGHT 60 - 11 | MN908947.3 1573 1595 nCoV-2019_6_LEFT 60 + 12 | MN908947.3 1942 1964 nCoV-2019_6_RIGHT 60 - 13 | MN908947.3 1875 1897 nCoV-2019_7_LEFT 60 + 14 | MN908947.3 2247 2269 nCoV-2019_7_RIGHT 60 - 15 | MN908947.3 2181 2205 nCoV-2019_8_LEFT 60 + 16 | MN908947.3 2568 2592 nCoV-2019_8_RIGHT 60 - 17 | MN908947.3 2505 2529 nCoV-2019_9_LEFT 60 + 18 | MN908947.3 2882 2904 nCoV-2019_9_RIGHT 60 - 19 | MN908947.3 2826 2850 nCoV-2019_10_LEFT 60 + 20 | MN908947.3 3183 3210 nCoV-2019_10_RIGHT 60 - 21 | MN908947.3 3144 3166 nCoV-2019_11_LEFT 60 + 22 | MN908947.3 3507 3531 nCoV-2019_11_RIGHT 60 - 23 | MN908947.3 3460 3482 nCoV-2019_12_LEFT 60 + 24 | MN908947.3 3826 3853 nCoV-2019_12_RIGHT 60 - 25 | MN908947.3 3771 3795 nCoV-2019_13_LEFT 60 + 26 | MN908947.3 4142 4164 nCoV-2019_13_RIGHT 60 - 27 | MN908947.3 4054 4077 nCoV-2019_14_LEFT 60 + 28 | MN908947.3 4428 4450 nCoV-2019_14_RIGHT 60 - 29 | MN908947.3 4294 4321 nCoV-2019_15_LEFT 60 + 30 | MN908947.3 4674 4696 nCoV-2019_15_RIGHT 60 - 31 | MN908947.3 4636 4658 nCoV-2019_16_LEFT 60 + 32 | MN908947.3 4995 5017 nCoV-2019_16_RIGHT 60 - 33 | MN908947.3 4939 4966 nCoV-2019_17_LEFT 60 + 34 | MN908947.3 5296 5321 nCoV-2019_17_RIGHT 60 - 35 | MN908947.3 5230 5259 nCoV-2019_18_LEFT 60 + 36 | MN908947.3 5620 5644 nCoV-2019_18_RIGHT 60 - 37 | MN908947.3 5563 5586 nCoV-2019_19_LEFT 60 + 38 | MN908947.3 5932 5957 nCoV-2019_19_RIGHT 60 - 39 | MN908947.3 5867 5894 nCoV-2019_20_LEFT 60 + 40 | MN908947.3 6247 6272 nCoV-2019_20_RIGHT 60 - 41 | MN908947.3 6167 6196 nCoV-2019_21_LEFT 60 + 42 | MN908947.3 6528 6550 nCoV-2019_21_RIGHT 60 - 43 | MN908947.3 6466 6495 nCoV-2019_22_LEFT 60 + 44 | MN908947.3 6846 6873 nCoV-2019_22_RIGHT 60 - 45 | MN908947.3 6718 6745 nCoV-2019_23_LEFT 60 + 46 | MN908947.3 7092 7117 nCoV-2019_23_RIGHT 60 - 47 | MN908947.3 7035 7058 nCoV-2019_24_LEFT 60 + 48 | MN908947.3 7389 7415 nCoV-2019_24_RIGHT 60 - 49 | MN908947.3 7305 7332 nCoV-2019_25_LEFT 60 + 50 | MN908947.3 7671 7694 nCoV-2019_25_RIGHT 60 - 51 | MN908947.3 7626 7651 nCoV-2019_26_LEFT 60 + 52 | MN908947.3 7997 8019 nCoV-2019_26_RIGHT 60 - 53 | MN908947.3 7943 7968 nCoV-2019_27_LEFT 60 + 54 | MN908947.3 8319 8341 nCoV-2019_27_RIGHT 60 - 55 | MN908947.3 8249 8275 nCoV-2019_28_LEFT 60 + 56 | MN908947.3 8635 8661 nCoV-2019_28_RIGHT 60 - 57 | MN908947.3 8595 8619 nCoV-2019_29_LEFT 60 + 58 | MN908947.3 8954 8983 nCoV-2019_29_RIGHT 60 - 59 | MN908947.3 8888 8913 nCoV-2019_30_LEFT 60 + 60 | MN908947.3 9245 9271 nCoV-2019_30_RIGHT 60 - 61 | MN908947.3 9204 9226 nCoV-2019_31_LEFT 60 + 62 | MN908947.3 9557 9585 nCoV-2019_31_RIGHT 60 - 63 | MN908947.3 9477 9502 nCoV-2019_32_LEFT 60 + 64 | MN908947.3 9834 9858 nCoV-2019_32_RIGHT 60 - 65 | MN908947.3 9784 9806 nCoV-2019_33_LEFT 60 + 66 | MN908947.3 10146 10171 nCoV-2019_33_RIGHT 60 - 67 | MN908947.3 10076 10099 nCoV-2019_34_LEFT 60 + 68 | MN908947.3 10437 10459 nCoV-2019_34_RIGHT 60 - 69 | MN908947.3 10362 10384 nCoV-2019_35_LEFT 60 + 70 | MN908947.3 10737 10763 nCoV-2019_35_RIGHT 60 - 71 | MN908947.3 10666 10688 nCoV-2019_36_LEFT 60 + 72 | MN908947.3 11048 11074 nCoV-2019_36_RIGHT 60 - 73 | MN908947.3 10999 11022 nCoV-2019_37_LEFT 60 + 74 | MN908947.3 11372 11394 nCoV-2019_37_RIGHT 60 - 75 | MN908947.3 11306 11331 nCoV-2019_38_LEFT 60 + 76 | MN908947.3 11668 11693 nCoV-2019_38_RIGHT 60 - 77 | MN908947.3 11555 11584 nCoV-2019_39_LEFT 60 + 78 | MN908947.3 11927 11949 nCoV-2019_39_RIGHT 60 - 79 | MN908947.3 11863 11889 nCoV-2019_40_LEFT 60 + 80 | MN908947.3 12234 12256 nCoV-2019_40_RIGHT 60 - 81 | MN908947.3 12110 12133 nCoV-2019_41_LEFT 60 + 82 | MN908947.3 12465 12490 nCoV-2019_41_RIGHT 60 - 83 | MN908947.3 12417 12439 nCoV-2019_42_LEFT 60 + 84 | MN908947.3 12779 12802 nCoV-2019_42_RIGHT 60 - 85 | MN908947.3 12710 12732 nCoV-2019_43_LEFT 60 + 86 | MN908947.3 13074 13096 nCoV-2019_43_RIGHT 60 - 87 | MN908947.3 13005 13027 nCoV-2019_44_LEFT 60 + 88 | MN908947.3 13378 13400 nCoV-2019_44_RIGHT 60 - 89 | MN908947.3 13319 13344 nCoV-2019_45_LEFT 60 + 90 | MN908947.3 13669 13699 nCoV-2019_45_RIGHT 60 - 91 | MN908947.3 13599 13621 nCoV-2019_46_LEFT 60 + 92 | MN908947.3 13962 13984 nCoV-2019_46_RIGHT 60 - 93 | MN908947.3 13918 13946 nCoV-2019_47_LEFT 60 + 94 | MN908947.3 14271 14299 nCoV-2019_47_RIGHT 60 - 95 | MN908947.3 14207 14232 nCoV-2019_48_LEFT 60 + 96 | MN908947.3 14579 14601 nCoV-2019_48_RIGHT 60 - 97 | MN908947.3 14545 14570 nCoV-2019_49_LEFT 60 + 98 | MN908947.3 14898 14926 nCoV-2019_49_RIGHT 60 - 99 | MN908947.3 14865 14895 nCoV-2019_50_LEFT 60 + 100 | MN908947.3 15224 15246 nCoV-2019_50_RIGHT 60 - 101 | MN908947.3 15171 15193 nCoV-2019_51_LEFT 60 + 102 | MN908947.3 15538 15560 nCoV-2019_51_RIGHT 60 - 103 | MN908947.3 15481 15503 nCoV-2019_52_LEFT 60 + 104 | MN908947.3 15861 15886 nCoV-2019_52_RIGHT 60 - 105 | MN908947.3 15827 15851 nCoV-2019_53_LEFT 60 + 106 | MN908947.3 16186 16209 nCoV-2019_53_RIGHT 60 - 107 | MN908947.3 16118 16144 nCoV-2019_54_LEFT 60 + 108 | MN908947.3 16485 16510 nCoV-2019_54_RIGHT 60 - 109 | MN908947.3 16416 16444 nCoV-2019_55_LEFT 60 + 110 | MN908947.3 16804 16833 nCoV-2019_55_RIGHT 60 - 111 | MN908947.3 16748 16770 nCoV-2019_56_LEFT 60 + 112 | MN908947.3 17130 17152 nCoV-2019_56_RIGHT 60 - 113 | MN908947.3 17065 17087 nCoV-2019_57_LEFT 60 + 114 | MN908947.3 17430 17452 nCoV-2019_57_RIGHT 60 - 115 | MN908947.3 17381 17406 nCoV-2019_58_LEFT 60 + 116 | MN908947.3 17738 17761 nCoV-2019_58_RIGHT 60 - 117 | MN908947.3 17674 17697 nCoV-2019_59_LEFT 60 + 118 | MN908947.3 18036 18062 nCoV-2019_59_RIGHT 60 - 119 | MN908947.3 17966 17993 nCoV-2019_60_LEFT 60 + 120 | MN908947.3 18324 18348 nCoV-2019_60_RIGHT 60 - 121 | MN908947.3 18253 18275 nCoV-2019_61_LEFT 60 + 122 | MN908947.3 18650 18672 nCoV-2019_61_RIGHT 60 - 123 | MN908947.3 18596 18618 nCoV-2019_62_LEFT 60 + 124 | MN908947.3 18957 18979 nCoV-2019_62_RIGHT 60 - 125 | MN908947.3 18896 18918 nCoV-2019_63_LEFT 60 + 126 | MN908947.3 19275 19297 nCoV-2019_63_RIGHT 60 - 127 | MN908947.3 19204 19232 nCoV-2019_64_LEFT 60 + 128 | MN908947.3 19591 19616 nCoV-2019_64_RIGHT 60 - 129 | MN908947.3 19548 19570 nCoV-2019_65_LEFT 60 + 130 | MN908947.3 19911 19939 nCoV-2019_65_RIGHT 60 - 131 | MN908947.3 19844 19866 nCoV-2019_66_LEFT 60 + 132 | MN908947.3 20231 20255 nCoV-2019_66_RIGHT 60 - 133 | MN908947.3 20172 20200 nCoV-2019_67_LEFT 60 + 134 | MN908947.3 20542 20572 nCoV-2019_67_RIGHT 60 - 135 | MN908947.3 20472 20496 nCoV-2019_68_LEFT 60 + 136 | MN908947.3 20867 20890 nCoV-2019_68_RIGHT 60 - 137 | MN908947.3 20786 20813 nCoV-2019_69_LEFT 60 + 138 | MN908947.3 21146 21169 nCoV-2019_69_RIGHT 60 - 139 | MN908947.3 21075 21104 nCoV-2019_70_LEFT 60 + 140 | MN908947.3 21427 21455 nCoV-2019_70_RIGHT 60 - 141 | MN908947.3 21357 21386 nCoV-2019_71_LEFT 60 + 142 | MN908947.3 21716 21743 nCoV-2019_71_RIGHT 60 - 143 | MN908947.3 21658 21682 nCoV-2019_72_LEFT 60 + 144 | MN908947.3 22013 22038 nCoV-2019_72_RIGHT 60 - 145 | MN908947.3 21961 21990 nCoV-2019_73_LEFT 60 + 146 | MN908947.3 22324 22346 nCoV-2019_73_RIGHT 60 - 147 | MN908947.3 22262 22290 nCoV-2019_74_LEFT 60 + 148 | MN908947.3 22626 22650 nCoV-2019_74_RIGHT 60 - 149 | MN908947.3 22516 22542 nCoV-2019_75_LEFT 60 + 150 | MN908947.3 22877 22903 nCoV-2019_75_RIGHT 60 - 151 | MN908947.3 22797 22819 nCoV-2019_76_LEFT 60 + 152 | MN908947.3 23192 23214 nCoV-2019_76_RIGHT 60 - 153 | MN908947.3 23122 23144 nCoV-2019_77_LEFT 60 + 154 | MN908947.3 23500 23522 nCoV-2019_77_RIGHT 60 - 155 | MN908947.3 23443 23466 nCoV-2019_78_LEFT 60 + 156 | MN908947.3 23822 23847 nCoV-2019_78_RIGHT 60 - 157 | MN908947.3 23789 23812 nCoV-2019_79_LEFT 60 + 158 | MN908947.3 24145 24169 nCoV-2019_79_RIGHT 60 - 159 | MN908947.3 24078 24100 nCoV-2019_80_LEFT 60 + 160 | MN908947.3 24443 24467 nCoV-2019_80_RIGHT 60 - 161 | MN908947.3 24391 24416 nCoV-2019_81_LEFT 60 + 162 | MN908947.3 24765 24789 nCoV-2019_81_RIGHT 60 - 163 | MN908947.3 24696 24721 nCoV-2019_82_LEFT 60 + 164 | MN908947.3 25052 25076 nCoV-2019_82_RIGHT 60 - 165 | MN908947.3 24978 25003 nCoV-2019_83_LEFT 60 + 166 | MN908947.3 25347 25369 nCoV-2019_83_RIGHT 60 - 167 | MN908947.3 25279 25301 nCoV-2019_84_LEFT 60 + 168 | MN908947.3 25646 25673 nCoV-2019_84_RIGHT 60 - 169 | MN908947.3 25601 25623 nCoV-2019_85_LEFT 60 + 170 | MN908947.3 25969 25994 nCoV-2019_85_RIGHT 60 - 171 | MN908947.3 25902 25924 nCoV-2019_86_LEFT 60 + 172 | MN908947.3 26290 26315 nCoV-2019_86_RIGHT 60 - 173 | MN908947.3 26197 26219 nCoV-2019_87_LEFT 60 + 174 | MN908947.3 26566 26590 nCoV-2019_87_RIGHT 60 - 175 | MN908947.3 26520 26542 nCoV-2019_88_LEFT 60 + 176 | MN908947.3 26890 26913 nCoV-2019_88_RIGHT 60 - 177 | MN908947.3 26835 26857 nCoV-2019_89_LEFT 60 + 178 | MN908947.3 27202 27227 nCoV-2019_89_RIGHT 60 - 179 | MN908947.3 27141 27164 nCoV-2019_90_LEFT 60 + 180 | MN908947.3 27511 27533 nCoV-2019_90_RIGHT 60 - 181 | MN908947.3 27446 27471 nCoV-2019_91_LEFT 60 + 182 | MN908947.3 27825 27854 nCoV-2019_91_RIGHT 60 - 183 | MN908947.3 27784 27808 nCoV-2019_92_LEFT 60 + 184 | MN908947.3 28145 28172 nCoV-2019_92_RIGHT 60 - 185 | MN908947.3 28081 28104 nCoV-2019_93_LEFT 60 + 186 | MN908947.3 28442 28464 nCoV-2019_93_RIGHT 60 - 187 | MN908947.3 28394 28416 nCoV-2019_94_LEFT 60 + 188 | MN908947.3 28756 28779 nCoV-2019_94_RIGHT 60 - 189 | MN908947.3 28677 28699 nCoV-2019_95_LEFT 60 + 190 | MN908947.3 29041 29063 nCoV-2019_95_RIGHT 60 - 191 | MN908947.3 28985 29007 nCoV-2019_96_LEFT 60 + 192 | MN908947.3 29356 29378 nCoV-2019_96_RIGHT 60 - 193 | MN908947.3 29288 29316 nCoV-2019_97_LEFT 60 + 194 | MN908947.3 29665 29693 nCoV-2019_97_RIGHT 60 - 195 | MN908947.3 29486 29510 nCoV-2019_98_LEFT 60 + 196 | MN908947.3 29836 29866 nCoV-2019_98_RIGHT 60 - 197 | -------------------------------------------------------------------------------- /reference/primer_schemes/nCoV-2019/V1/nCoV-2019.insert.bed: -------------------------------------------------------------------------------- 1 | MN908947.3 54 385 1 1 + 2 | MN908947.3 342 704 2 2 + 3 | MN908947.3 664 1004 3 1 + 4 | MN908947.3 965 1312 4 2 + 5 | MN908947.3 1264 1623 5 1 + 6 | MN908947.3 1595 1942 6 2 + 7 | MN908947.3 1897 2247 7 1 + 8 | MN908947.3 2205 2568 8 2 + 9 | MN908947.3 2529 2882 9 1 + 10 | MN908947.3 2850 3183 10 2 + 11 | MN908947.3 3166 3507 11 1 + 12 | MN908947.3 3482 3826 12 2 + 13 | MN908947.3 3795 4142 13 1 + 14 | MN908947.3 4077 4428 14 2 + 15 | MN908947.3 4321 4674 15 1 + 16 | MN908947.3 4658 4995 16 2 + 17 | MN908947.3 4966 5296 17 1 + 18 | MN908947.3 5259 5620 18 2 + 19 | MN908947.3 5586 5932 19 1 + 20 | MN908947.3 5894 6247 20 2 + 21 | MN908947.3 6196 6528 21 1 + 22 | MN908947.3 6495 6846 22 2 + 23 | MN908947.3 6745 7092 23 1 + 24 | MN908947.3 7058 7389 24 2 + 25 | MN908947.3 7332 7671 25 1 + 26 | MN908947.3 7651 7997 26 2 + 27 | MN908947.3 7968 8319 27 1 + 28 | MN908947.3 8275 8635 28 2 + 29 | MN908947.3 8619 8954 29 1 + 30 | MN908947.3 8913 9245 30 2 + 31 | MN908947.3 9226 9557 31 1 + 32 | MN908947.3 9502 9834 32 2 + 33 | MN908947.3 9806 10146 33 1 + 34 | MN908947.3 10099 10437 34 2 + 35 | MN908947.3 10384 10737 35 1 + 36 | MN908947.3 10688 11048 36 2 + 37 | MN908947.3 11022 11372 37 1 + 38 | MN908947.3 11331 11668 38 2 + 39 | MN908947.3 11584 11927 39 1 + 40 | MN908947.3 11889 12234 40 2 + 41 | MN908947.3 12133 12465 41 1 + 42 | MN908947.3 12439 12779 42 2 + 43 | MN908947.3 12732 13074 43 1 + 44 | MN908947.3 13027 13378 44 2 + 45 | MN908947.3 13344 13669 45 1 + 46 | MN908947.3 13621 13962 46 2 + 47 | MN908947.3 13946 14271 47 1 + 48 | MN908947.3 14232 14579 48 2 + 49 | MN908947.3 14570 14898 49 1 + 50 | MN908947.3 14895 15224 50 2 + 51 | MN908947.3 15193 15538 51 1 + 52 | MN908947.3 15503 15861 52 2 + 53 | MN908947.3 15851 16186 53 1 + 54 | MN908947.3 16144 16485 54 2 + 55 | MN908947.3 16444 16804 55 1 + 56 | MN908947.3 16770 17130 56 2 + 57 | MN908947.3 17087 17430 57 1 + 58 | MN908947.3 17406 17738 58 2 + 59 | MN908947.3 17697 18036 59 1 + 60 | MN908947.3 17993 18324 60 2 + 61 | MN908947.3 18275 18650 61 1 + 62 | MN908947.3 18618 18957 62 2 + 63 | MN908947.3 18918 19275 63 1 + 64 | MN908947.3 19232 19591 64 2 + 65 | MN908947.3 19570 19911 65 1 + 66 | MN908947.3 19866 20231 66 2 + 67 | MN908947.3 20200 20542 67 1 + 68 | MN908947.3 20496 20867 68 2 + 69 | MN908947.3 20813 21146 69 1 + 70 | MN908947.3 21104 21427 70 2 + 71 | MN908947.3 21386 21716 71 1 + 72 | MN908947.3 21682 22013 72 2 + 73 | MN908947.3 21990 22324 73 1 + 74 | MN908947.3 22290 22626 74 2 + 75 | MN908947.3 22542 22877 75 1 + 76 | MN908947.3 22819 23192 76 2 + 77 | MN908947.3 23144 23500 77 1 + 78 | MN908947.3 23466 23822 78 2 + 79 | MN908947.3 23812 24145 79 1 + 80 | MN908947.3 24100 24443 80 2 + 81 | MN908947.3 24416 24765 81 1 + 82 | MN908947.3 24721 25052 82 2 + 83 | MN908947.3 25003 25347 83 1 + 84 | MN908947.3 25301 25646 84 2 + 85 | MN908947.3 25623 25969 85 1 + 86 | MN908947.3 25924 26290 86 2 + 87 | MN908947.3 26219 26566 87 1 + 88 | MN908947.3 26542 26890 88 2 + 89 | MN908947.3 26857 27202 89 1 + 90 | MN908947.3 27164 27511 90 2 + 91 | MN908947.3 27471 27825 91 1 + 92 | MN908947.3 27808 28145 92 2 + 93 | MN908947.3 28104 28442 93 1 + 94 | MN908947.3 28416 28756 94 2 + 95 | MN908947.3 28699 29041 95 1 + 96 | MN908947.3 29007 29356 96 2 + 97 | MN908947.3 29316 29665 97 1 + 98 | MN908947.3 29510 29836 98 2 + 99 | -------------------------------------------------------------------------------- /reference/primer_schemes/nCoV-2019/V1/nCoV-2019.primer.bed: -------------------------------------------------------------------------------- 1 | MN908947.3 30 54 nCoV-2019_1_LEFT 1 + 2 | MN908947.3 385 410 nCoV-2019_1_RIGHT 1 - 3 | MN908947.3 320 342 nCoV-2019_2_LEFT 2 + 4 | MN908947.3 704 726 nCoV-2019_2_RIGHT 2 - 5 | MN908947.3 642 664 nCoV-2019_3_LEFT 1 + 6 | MN908947.3 1004 1028 nCoV-2019_3_RIGHT 1 - 7 | MN908947.3 943 965 nCoV-2019_4_LEFT 2 + 8 | MN908947.3 1312 1337 nCoV-2019_4_RIGHT 2 - 9 | MN908947.3 1242 1264 nCoV-2019_5_LEFT 1 + 10 | MN908947.3 1623 1651 nCoV-2019_5_RIGHT 1 - 11 | MN908947.3 1573 1595 nCoV-2019_6_LEFT 2 + 12 | MN908947.3 1942 1964 nCoV-2019_6_RIGHT 2 - 13 | MN908947.3 1875 1897 nCoV-2019_7_LEFT 1 + 14 | MN908947.3 2247 2269 nCoV-2019_7_RIGHT 1 - 15 | MN908947.3 2181 2205 nCoV-2019_8_LEFT 2 + 16 | MN908947.3 2568 2592 nCoV-2019_8_RIGHT 2 - 17 | MN908947.3 2505 2529 nCoV-2019_9_LEFT 1 + 18 | MN908947.3 2882 2904 nCoV-2019_9_RIGHT 1 - 19 | MN908947.3 2826 2850 nCoV-2019_10_LEFT 2 + 20 | MN908947.3 3183 3210 nCoV-2019_10_RIGHT 2 - 21 | MN908947.3 3144 3166 nCoV-2019_11_LEFT 1 + 22 | MN908947.3 3507 3531 nCoV-2019_11_RIGHT 1 - 23 | MN908947.3 3460 3482 nCoV-2019_12_LEFT 2 + 24 | MN908947.3 3826 3853 nCoV-2019_12_RIGHT 2 - 25 | MN908947.3 3771 3795 nCoV-2019_13_LEFT 1 + 26 | MN908947.3 4142 4164 nCoV-2019_13_RIGHT 1 - 27 | MN908947.3 4054 4077 nCoV-2019_14_LEFT 2 + 28 | MN908947.3 4428 4450 nCoV-2019_14_RIGHT 2 - 29 | MN908947.3 4294 4321 nCoV-2019_15_LEFT 1 + 30 | MN908947.3 4674 4696 nCoV-2019_15_RIGHT 1 - 31 | MN908947.3 4636 4658 nCoV-2019_16_LEFT 2 + 32 | MN908947.3 4995 5017 nCoV-2019_16_RIGHT 2 - 33 | MN908947.3 4939 4966 nCoV-2019_17_LEFT 1 + 34 | MN908947.3 5296 5321 nCoV-2019_17_RIGHT 1 - 35 | MN908947.3 5230 5259 nCoV-2019_18_LEFT 2 + 36 | MN908947.3 5620 5644 nCoV-2019_18_RIGHT 2 - 37 | MN908947.3 5563 5586 nCoV-2019_19_LEFT 1 + 38 | MN908947.3 5932 5957 nCoV-2019_19_RIGHT 1 - 39 | MN908947.3 5867 5894 nCoV-2019_20_LEFT 2 + 40 | MN908947.3 6247 6272 nCoV-2019_20_RIGHT 2 - 41 | MN908947.3 6167 6196 nCoV-2019_21_LEFT 1 + 42 | MN908947.3 6528 6550 nCoV-2019_21_RIGHT 1 - 43 | MN908947.3 6466 6495 nCoV-2019_22_LEFT 2 + 44 | MN908947.3 6846 6873 nCoV-2019_22_RIGHT 2 - 45 | MN908947.3 6718 6745 nCoV-2019_23_LEFT 1 + 46 | MN908947.3 7092 7117 nCoV-2019_23_RIGHT 1 - 47 | MN908947.3 7035 7058 nCoV-2019_24_LEFT 2 + 48 | MN908947.3 7389 7415 nCoV-2019_24_RIGHT 2 - 49 | MN908947.3 7305 7332 nCoV-2019_25_LEFT 1 + 50 | MN908947.3 7671 7694 nCoV-2019_25_RIGHT 1 - 51 | MN908947.3 7626 7651 nCoV-2019_26_LEFT 2 + 52 | MN908947.3 7997 8019 nCoV-2019_26_RIGHT 2 - 53 | MN908947.3 7943 7968 nCoV-2019_27_LEFT 1 + 54 | MN908947.3 8319 8341 nCoV-2019_27_RIGHT 1 - 55 | MN908947.3 8249 8275 nCoV-2019_28_LEFT 2 + 56 | MN908947.3 8635 8661 nCoV-2019_28_RIGHT 2 - 57 | MN908947.3 8595 8619 nCoV-2019_29_LEFT 1 + 58 | MN908947.3 8954 8983 nCoV-2019_29_RIGHT 1 - 59 | MN908947.3 8888 8913 nCoV-2019_30_LEFT 2 + 60 | MN908947.3 9245 9271 nCoV-2019_30_RIGHT 2 - 61 | MN908947.3 9204 9226 nCoV-2019_31_LEFT 1 + 62 | MN908947.3 9557 9585 nCoV-2019_31_RIGHT 1 - 63 | MN908947.3 9477 9502 nCoV-2019_32_LEFT 2 + 64 | MN908947.3 9834 9858 nCoV-2019_32_RIGHT 2 - 65 | MN908947.3 9784 9806 nCoV-2019_33_LEFT 1 + 66 | MN908947.3 10146 10171 nCoV-2019_33_RIGHT 1 - 67 | MN908947.3 10076 10099 nCoV-2019_34_LEFT 2 + 68 | MN908947.3 10437 10459 nCoV-2019_34_RIGHT 2 - 69 | MN908947.3 10362 10384 nCoV-2019_35_LEFT 1 + 70 | MN908947.3 10737 10763 nCoV-2019_35_RIGHT 1 - 71 | MN908947.3 10666 10688 nCoV-2019_36_LEFT 2 + 72 | MN908947.3 11048 11074 nCoV-2019_36_RIGHT 2 - 73 | MN908947.3 10999 11022 nCoV-2019_37_LEFT 1 + 74 | MN908947.3 11372 11394 nCoV-2019_37_RIGHT 1 - 75 | MN908947.3 11306 11331 nCoV-2019_38_LEFT 2 + 76 | MN908947.3 11668 11693 nCoV-2019_38_RIGHT 2 - 77 | MN908947.3 11555 11584 nCoV-2019_39_LEFT 1 + 78 | MN908947.3 11927 11949 nCoV-2019_39_RIGHT 1 - 79 | MN908947.3 11863 11889 nCoV-2019_40_LEFT 2 + 80 | MN908947.3 12234 12256 nCoV-2019_40_RIGHT 2 - 81 | MN908947.3 12110 12133 nCoV-2019_41_LEFT 1 + 82 | MN908947.3 12465 12490 nCoV-2019_41_RIGHT 1 - 83 | MN908947.3 12417 12439 nCoV-2019_42_LEFT 2 + 84 | MN908947.3 12779 12802 nCoV-2019_42_RIGHT 2 - 85 | MN908947.3 12710 12732 nCoV-2019_43_LEFT 1 + 86 | MN908947.3 13074 13096 nCoV-2019_43_RIGHT 1 - 87 | MN908947.3 13005 13027 nCoV-2019_44_LEFT 2 + 88 | MN908947.3 13378 13400 nCoV-2019_44_RIGHT 2 - 89 | MN908947.3 13319 13344 nCoV-2019_45_LEFT 1 + 90 | MN908947.3 13669 13699 nCoV-2019_45_RIGHT 1 - 91 | MN908947.3 13599 13621 nCoV-2019_46_LEFT 2 + 92 | MN908947.3 13962 13984 nCoV-2019_46_RIGHT 2 - 93 | MN908947.3 13918 13946 nCoV-2019_47_LEFT 1 + 94 | MN908947.3 14271 14299 nCoV-2019_47_RIGHT 1 - 95 | MN908947.3 14207 14232 nCoV-2019_48_LEFT 2 + 96 | MN908947.3 14579 14601 nCoV-2019_48_RIGHT 2 - 97 | MN908947.3 14545 14570 nCoV-2019_49_LEFT 1 + 98 | MN908947.3 14898 14926 nCoV-2019_49_RIGHT 1 - 99 | MN908947.3 14865 14895 nCoV-2019_50_LEFT 2 + 100 | MN908947.3 15224 15246 nCoV-2019_50_RIGHT 2 - 101 | MN908947.3 15171 15193 nCoV-2019_51_LEFT 1 + 102 | MN908947.3 15538 15560 nCoV-2019_51_RIGHT 1 - 103 | MN908947.3 15481 15503 nCoV-2019_52_LEFT 2 + 104 | MN908947.3 15861 15886 nCoV-2019_52_RIGHT 2 - 105 | MN908947.3 15827 15851 nCoV-2019_53_LEFT 1 + 106 | MN908947.3 16186 16209 nCoV-2019_53_RIGHT 1 - 107 | MN908947.3 16118 16144 nCoV-2019_54_LEFT 2 + 108 | MN908947.3 16485 16510 nCoV-2019_54_RIGHT 2 - 109 | MN908947.3 16416 16444 nCoV-2019_55_LEFT 1 + 110 | MN908947.3 16804 16833 nCoV-2019_55_RIGHT 1 - 111 | MN908947.3 16748 16770 nCoV-2019_56_LEFT 2 + 112 | MN908947.3 17130 17152 nCoV-2019_56_RIGHT 2 - 113 | MN908947.3 17065 17087 nCoV-2019_57_LEFT 1 + 114 | MN908947.3 17430 17452 nCoV-2019_57_RIGHT 1 - 115 | MN908947.3 17381 17406 nCoV-2019_58_LEFT 2 + 116 | MN908947.3 17738 17761 nCoV-2019_58_RIGHT 2 - 117 | MN908947.3 17674 17697 nCoV-2019_59_LEFT 1 + 118 | MN908947.3 18036 18062 nCoV-2019_59_RIGHT 1 - 119 | MN908947.3 17966 17993 nCoV-2019_60_LEFT 2 + 120 | MN908947.3 18324 18348 nCoV-2019_60_RIGHT 2 - 121 | MN908947.3 18253 18275 nCoV-2019_61_LEFT 1 + 122 | MN908947.3 18650 18672 nCoV-2019_61_RIGHT 1 - 123 | MN908947.3 18596 18618 nCoV-2019_62_LEFT 2 + 124 | MN908947.3 18957 18979 nCoV-2019_62_RIGHT 2 - 125 | MN908947.3 18896 18918 nCoV-2019_63_LEFT 1 + 126 | MN908947.3 19275 19297 nCoV-2019_63_RIGHT 1 - 127 | MN908947.3 19204 19232 nCoV-2019_64_LEFT 2 + 128 | MN908947.3 19591 19616 nCoV-2019_64_RIGHT 2 - 129 | MN908947.3 19548 19570 nCoV-2019_65_LEFT 1 + 130 | MN908947.3 19911 19939 nCoV-2019_65_RIGHT 1 - 131 | MN908947.3 19844 19866 nCoV-2019_66_LEFT 2 + 132 | MN908947.3 20231 20255 nCoV-2019_66_RIGHT 2 - 133 | MN908947.3 20172 20200 nCoV-2019_67_LEFT 1 + 134 | MN908947.3 20542 20572 nCoV-2019_67_RIGHT 1 - 135 | MN908947.3 20472 20496 nCoV-2019_68_LEFT 2 + 136 | MN908947.3 20867 20890 nCoV-2019_68_RIGHT 2 - 137 | MN908947.3 20786 20813 nCoV-2019_69_LEFT 1 + 138 | MN908947.3 21146 21169 nCoV-2019_69_RIGHT 1 - 139 | MN908947.3 21075 21104 nCoV-2019_70_LEFT 2 + 140 | MN908947.3 21427 21455 nCoV-2019_70_RIGHT 2 - 141 | MN908947.3 21357 21386 nCoV-2019_71_LEFT 1 + 142 | MN908947.3 21716 21743 nCoV-2019_71_RIGHT 1 - 143 | MN908947.3 21658 21682 nCoV-2019_72_LEFT 2 + 144 | MN908947.3 22013 22038 nCoV-2019_72_RIGHT 2 - 145 | MN908947.3 21961 21990 nCoV-2019_73_LEFT 1 + 146 | MN908947.3 22324 22346 nCoV-2019_73_RIGHT 1 - 147 | MN908947.3 22262 22290 nCoV-2019_74_LEFT 2 + 148 | MN908947.3 22626 22650 nCoV-2019_74_RIGHT 2 - 149 | MN908947.3 22516 22542 nCoV-2019_75_LEFT 1 + 150 | MN908947.3 22877 22903 nCoV-2019_75_RIGHT 1 - 151 | MN908947.3 22797 22819 nCoV-2019_76_LEFT 2 + 152 | MN908947.3 23192 23214 nCoV-2019_76_RIGHT 2 - 153 | MN908947.3 23122 23144 nCoV-2019_77_LEFT 1 + 154 | MN908947.3 23500 23522 nCoV-2019_77_RIGHT 1 - 155 | MN908947.3 23443 23466 nCoV-2019_78_LEFT 2 + 156 | MN908947.3 23822 23847 nCoV-2019_78_RIGHT 2 - 157 | MN908947.3 23789 23812 nCoV-2019_79_LEFT 1 + 158 | MN908947.3 24145 24169 nCoV-2019_79_RIGHT 1 - 159 | MN908947.3 24078 24100 nCoV-2019_80_LEFT 2 + 160 | MN908947.3 24443 24467 nCoV-2019_80_RIGHT 2 - 161 | MN908947.3 24391 24416 nCoV-2019_81_LEFT 1 + 162 | MN908947.3 24765 24789 nCoV-2019_81_RIGHT 1 - 163 | MN908947.3 24696 24721 nCoV-2019_82_LEFT 2 + 164 | MN908947.3 25052 25076 nCoV-2019_82_RIGHT 2 - 165 | MN908947.3 24978 25003 nCoV-2019_83_LEFT 1 + 166 | MN908947.3 25347 25369 nCoV-2019_83_RIGHT 1 - 167 | MN908947.3 25279 25301 nCoV-2019_84_LEFT 2 + 168 | MN908947.3 25646 25673 nCoV-2019_84_RIGHT 2 - 169 | MN908947.3 25601 25623 nCoV-2019_85_LEFT 1 + 170 | MN908947.3 25969 25994 nCoV-2019_85_RIGHT 1 - 171 | MN908947.3 25902 25924 nCoV-2019_86_LEFT 2 + 172 | MN908947.3 26290 26315 nCoV-2019_86_RIGHT 2 - 173 | MN908947.3 26197 26219 nCoV-2019_87_LEFT 1 + 174 | MN908947.3 26566 26590 nCoV-2019_87_RIGHT 1 - 175 | MN908947.3 26520 26542 nCoV-2019_88_LEFT 2 + 176 | MN908947.3 26890 26913 nCoV-2019_88_RIGHT 2 - 177 | MN908947.3 26835 26857 nCoV-2019_89_LEFT 1 + 178 | MN908947.3 27202 27227 nCoV-2019_89_RIGHT 1 - 179 | MN908947.3 27141 27164 nCoV-2019_90_LEFT 2 + 180 | MN908947.3 27511 27533 nCoV-2019_90_RIGHT 2 - 181 | MN908947.3 27446 27471 nCoV-2019_91_LEFT 1 + 182 | MN908947.3 27825 27854 nCoV-2019_91_RIGHT 1 - 183 | MN908947.3 27784 27808 nCoV-2019_92_LEFT 2 + 184 | MN908947.3 28145 28172 nCoV-2019_92_RIGHT 2 - 185 | MN908947.3 28081 28104 nCoV-2019_93_LEFT 1 + 186 | MN908947.3 28442 28464 nCoV-2019_93_RIGHT 1 - 187 | MN908947.3 28394 28416 nCoV-2019_94_LEFT 2 + 188 | MN908947.3 28756 28779 nCoV-2019_94_RIGHT 2 - 189 | MN908947.3 28677 28699 nCoV-2019_95_LEFT 1 + 190 | MN908947.3 29041 29063 nCoV-2019_95_RIGHT 1 - 191 | MN908947.3 28985 29007 nCoV-2019_96_LEFT 2 + 192 | MN908947.3 29356 29378 nCoV-2019_96_RIGHT 2 - 193 | MN908947.3 29288 29316 nCoV-2019_97_LEFT 1 + 194 | MN908947.3 29665 29693 nCoV-2019_97_RIGHT 1 - 195 | MN908947.3 29486 29510 nCoV-2019_98_LEFT 2 + 196 | MN908947.3 29836 29866 nCoV-2019_98_RIGHT 2 - 197 | -------------------------------------------------------------------------------- /reference/primer_schemes/nCoV-2019/V2/nCoV-2019.bed: -------------------------------------------------------------------------------- 1 | MN908947.3 30 54 nCoV-2019_1_LEFT 60 + 2 | MN908947.3 385 410 nCoV-2019_1_RIGHT 60 - 3 | MN908947.3 320 342 nCoV-2019_2_LEFT 60 + 4 | MN908947.3 704 726 nCoV-2019_2_RIGHT 60 - 5 | MN908947.3 642 664 nCoV-2019_3_LEFT 60 + 6 | MN908947.3 1004 1028 nCoV-2019_3_RIGHT 60 - 7 | MN908947.3 943 965 nCoV-2019_4_LEFT 60 + 8 | MN908947.3 1312 1337 nCoV-2019_4_RIGHT 60 - 9 | MN908947.3 1242 1264 nCoV-2019_5_LEFT 60 + 10 | MN908947.3 1623 1651 nCoV-2019_5_RIGHT 60 - 11 | MN908947.3 1573 1595 nCoV-2019_6_LEFT 60 + 12 | MN908947.3 1942 1964 nCoV-2019_6_RIGHT 60 - 13 | MN908947.3 1875 1897 nCoV-2019_7_LEFT 60 + 14 | MN908947.3 2247 2269 nCoV-2019_7_RIGHT 60 - 15 | MN908947.3 2181 2205 nCoV-2019_8_LEFT 60 + 16 | MN908947.3 2568 2592 nCoV-2019_8_RIGHT 60 - 17 | MN908947.3 2505 2529 nCoV-2019_9_LEFT 60 + 18 | MN908947.3 2882 2904 nCoV-2019_9_RIGHT 60 - 19 | MN908947.3 2826 2850 nCoV-2019_10_LEFT 60 + 20 | MN908947.3 3183 3210 nCoV-2019_10_RIGHT 60 - 21 | MN908947.3 3144 3166 nCoV-2019_11_LEFT 60 + 22 | MN908947.3 3507 3531 nCoV-2019_11_RIGHT 60 - 23 | MN908947.3 3460 3482 nCoV-2019_12_LEFT 60 + 24 | MN908947.3 3826 3853 nCoV-2019_12_RIGHT 60 - 25 | MN908947.3 3771 3795 nCoV-2019_13_LEFT 60 + 26 | MN908947.3 4142 4164 nCoV-2019_13_RIGHT 60 - 27 | MN908947.3 4054 4077 nCoV-2019_14_LEFT 60 + 28 | MN908947.3 4428 4450 nCoV-2019_14_RIGHT 60 - 29 | MN908947.3 4294 4321 nCoV-2019_15_LEFT 60 + 30 | MN908947.3 4674 4696 nCoV-2019_15_RIGHT 60 - 31 | MN908947.3 4636 4658 nCoV-2019_16_LEFT 60 + 32 | MN908947.3 4995 5017 nCoV-2019_16_RIGHT 60 - 33 | MN908947.3 4939 4966 nCoV-2019_17_LEFT 60 + 34 | MN908947.3 5296 5321 nCoV-2019_17_RIGHT 60 - 35 | MN908947.3 5257 5287 nCoV-2019_18_LEFT_alt2 60 + 36 | MN908947.3 5620 5644 nCoV-2019_18_RIGHT 60 - 37 | MN908947.3 5563 5586 nCoV-2019_19_LEFT 60 + 38 | MN908947.3 5932 5957 nCoV-2019_19_RIGHT 60 - 39 | MN908947.3 5867 5894 nCoV-2019_20_LEFT 60 + 40 | MN908947.3 6247 6272 nCoV-2019_20_RIGHT 60 - 41 | MN908947.3 6167 6196 nCoV-2019_21_LEFT 60 + 42 | MN908947.3 6528 6550 nCoV-2019_21_RIGHT 60 - 43 | MN908947.3 6466 6495 nCoV-2019_22_LEFT 60 + 44 | MN908947.3 6846 6873 nCoV-2019_22_RIGHT 60 - 45 | MN908947.3 6718 6745 nCoV-2019_23_LEFT 60 + 46 | MN908947.3 7092 7117 nCoV-2019_23_RIGHT 60 - 47 | MN908947.3 7035 7058 nCoV-2019_24_LEFT 60 + 48 | MN908947.3 7389 7415 nCoV-2019_24_RIGHT 60 - 49 | MN908947.3 7305 7332 nCoV-2019_25_LEFT 60 + 50 | MN908947.3 7671 7694 nCoV-2019_25_RIGHT 60 - 51 | MN908947.3 7626 7651 nCoV-2019_26_LEFT 60 + 52 | MN908947.3 7997 8019 nCoV-2019_26_RIGHT 60 - 53 | MN908947.3 7943 7968 nCoV-2019_27_LEFT 60 + 54 | MN908947.3 8319 8341 nCoV-2019_27_RIGHT 60 - 55 | MN908947.3 8249 8275 nCoV-2019_28_LEFT 60 + 56 | MN908947.3 8635 8661 nCoV-2019_28_RIGHT 60 - 57 | MN908947.3 8595 8619 nCoV-2019_29_LEFT 60 + 58 | MN908947.3 8954 8983 nCoV-2019_29_RIGHT 60 - 59 | MN908947.3 8888 8913 nCoV-2019_30_LEFT 60 + 60 | MN908947.3 9245 9271 nCoV-2019_30_RIGHT 60 - 61 | MN908947.3 9204 9226 nCoV-2019_31_LEFT 60 + 62 | MN908947.3 9557 9585 nCoV-2019_31_RIGHT 60 - 63 | MN908947.3 9477 9502 nCoV-2019_32_LEFT 60 + 64 | MN908947.3 9834 9858 nCoV-2019_32_RIGHT 60 - 65 | MN908947.3 9784 9806 nCoV-2019_33_LEFT 60 + 66 | MN908947.3 10146 10171 nCoV-2019_33_RIGHT 60 - 67 | MN908947.3 10076 10099 nCoV-2019_34_LEFT 60 + 68 | MN908947.3 10437 10459 nCoV-2019_34_RIGHT 60 - 69 | MN908947.3 10362 10384 nCoV-2019_35_LEFT 60 + 70 | MN908947.3 10737 10763 nCoV-2019_35_RIGHT 60 - 71 | MN908947.3 10666 10688 nCoV-2019_36_LEFT 60 + 72 | MN908947.3 11048 11074 nCoV-2019_36_RIGHT 60 - 73 | MN908947.3 10999 11022 nCoV-2019_37_LEFT 60 + 74 | MN908947.3 11372 11394 nCoV-2019_37_RIGHT 60 - 75 | MN908947.3 11306 11331 nCoV-2019_38_LEFT 60 + 76 | MN908947.3 11668 11693 nCoV-2019_38_RIGHT 60 - 77 | MN908947.3 11555 11584 nCoV-2019_39_LEFT 60 + 78 | MN908947.3 11927 11949 nCoV-2019_39_RIGHT 60 - 79 | MN908947.3 11863 11889 nCoV-2019_40_LEFT 60 + 80 | MN908947.3 12234 12256 nCoV-2019_40_RIGHT 60 - 81 | MN908947.3 12110 12133 nCoV-2019_41_LEFT 60 + 82 | MN908947.3 12465 12490 nCoV-2019_41_RIGHT 60 - 83 | MN908947.3 12417 12439 nCoV-2019_42_LEFT 60 + 84 | MN908947.3 12779 12802 nCoV-2019_42_RIGHT 60 - 85 | MN908947.3 12710 12732 nCoV-2019_43_LEFT 60 + 86 | MN908947.3 13074 13096 nCoV-2019_43_RIGHT 60 - 87 | MN908947.3 13005 13027 nCoV-2019_44_LEFT 60 + 88 | MN908947.3 13378 13400 nCoV-2019_44_RIGHT 60 - 89 | MN908947.3 13319 13344 nCoV-2019_45_LEFT 60 + 90 | MN908947.3 13669 13699 nCoV-2019_45_RIGHT 60 - 91 | MN908947.3 13599 13621 nCoV-2019_46_LEFT 60 + 92 | MN908947.3 13962 13984 nCoV-2019_46_RIGHT 60 - 93 | MN908947.3 13918 13946 nCoV-2019_47_LEFT 60 + 94 | MN908947.3 14271 14299 nCoV-2019_47_RIGHT 60 - 95 | MN908947.3 14207 14232 nCoV-2019_48_LEFT 60 + 96 | MN908947.3 14579 14601 nCoV-2019_48_RIGHT 60 - 97 | MN908947.3 14545 14570 nCoV-2019_49_LEFT 60 + 98 | MN908947.3 14898 14926 nCoV-2019_49_RIGHT 60 - 99 | MN908947.3 14865 14895 nCoV-2019_50_LEFT 60 + 100 | MN908947.3 15224 15246 nCoV-2019_50_RIGHT 60 - 101 | MN908947.3 15171 15193 nCoV-2019_51_LEFT 60 + 102 | MN908947.3 15538 15560 nCoV-2019_51_RIGHT 60 - 103 | MN908947.3 15481 15503 nCoV-2019_52_LEFT 60 + 104 | MN908947.3 15861 15886 nCoV-2019_52_RIGHT 60 - 105 | MN908947.3 15827 15851 nCoV-2019_53_LEFT 60 + 106 | MN908947.3 16186 16209 nCoV-2019_53_RIGHT 60 - 107 | MN908947.3 16118 16144 nCoV-2019_54_LEFT 60 + 108 | MN908947.3 16485 16510 nCoV-2019_54_RIGHT 60 - 109 | MN908947.3 16416 16444 nCoV-2019_55_LEFT 60 + 110 | MN908947.3 16804 16833 nCoV-2019_55_RIGHT 60 - 111 | MN908947.3 16748 16770 nCoV-2019_56_LEFT 60 + 112 | MN908947.3 17130 17152 nCoV-2019_56_RIGHT 60 - 113 | MN908947.3 17065 17087 nCoV-2019_57_LEFT 60 + 114 | MN908947.3 17430 17452 nCoV-2019_57_RIGHT 60 - 115 | MN908947.3 17381 17406 nCoV-2019_58_LEFT 60 + 116 | MN908947.3 17738 17761 nCoV-2019_58_RIGHT 60 - 117 | MN908947.3 17674 17697 nCoV-2019_59_LEFT 60 + 118 | MN908947.3 18036 18062 nCoV-2019_59_RIGHT 60 - 119 | MN908947.3 17966 17993 nCoV-2019_60_LEFT 60 + 120 | MN908947.3 18324 18348 nCoV-2019_60_RIGHT 60 - 121 | MN908947.3 18253 18275 nCoV-2019_61_LEFT 60 + 122 | MN908947.3 18650 18672 nCoV-2019_61_RIGHT 60 - 123 | MN908947.3 18596 18618 nCoV-2019_62_LEFT 60 + 124 | MN908947.3 18957 18979 nCoV-2019_62_RIGHT 60 - 125 | MN908947.3 18896 18918 nCoV-2019_63_LEFT 60 + 126 | MN908947.3 19275 19297 nCoV-2019_63_RIGHT 60 - 127 | MN908947.3 19204 19232 nCoV-2019_64_LEFT 60 + 128 | MN908947.3 19591 19616 nCoV-2019_64_RIGHT 60 - 129 | MN908947.3 19548 19570 nCoV-2019_65_LEFT 60 + 130 | MN908947.3 19911 19939 nCoV-2019_65_RIGHT 60 - 131 | MN908947.3 19844 19866 nCoV-2019_66_LEFT 60 + 132 | MN908947.3 20231 20255 nCoV-2019_66_RIGHT 60 - 133 | MN908947.3 20172 20200 nCoV-2019_67_LEFT 60 + 134 | MN908947.3 20542 20572 nCoV-2019_67_RIGHT 60 - 135 | MN908947.3 20472 20496 nCoV-2019_68_LEFT 60 + 136 | MN908947.3 20867 20890 nCoV-2019_68_RIGHT 60 - 137 | MN908947.3 20786 20813 nCoV-2019_69_LEFT 60 + 138 | MN908947.3 21146 21169 nCoV-2019_69_RIGHT 60 - 139 | MN908947.3 21075 21104 nCoV-2019_70_LEFT 60 + 140 | MN908947.3 21427 21455 nCoV-2019_70_RIGHT 60 - 141 | MN908947.3 21357 21386 nCoV-2019_71_LEFT 60 + 142 | MN908947.3 21716 21743 nCoV-2019_71_RIGHT 60 - 143 | MN908947.3 21658 21682 nCoV-2019_72_LEFT 60 + 144 | MN908947.3 22013 22038 nCoV-2019_72_RIGHT 60 - 145 | MN908947.3 21961 21990 nCoV-2019_73_LEFT 60 + 146 | MN908947.3 22324 22346 nCoV-2019_73_RIGHT 60 - 147 | MN908947.3 22262 22290 nCoV-2019_74_LEFT 60 + 148 | MN908947.3 22626 22650 nCoV-2019_74_RIGHT 60 - 149 | MN908947.3 22516 22542 nCoV-2019_75_LEFT 60 + 150 | MN908947.3 22877 22903 nCoV-2019_75_RIGHT 60 - 151 | MN908947.3 22797 22819 nCoV-2019_76_LEFT 60 + 152 | MN908947.3 23192 23214 nCoV-2019_76_RIGHT 60 - 153 | MN908947.3 23122 23144 nCoV-2019_77_LEFT 60 + 154 | MN908947.3 23500 23522 nCoV-2019_77_RIGHT 60 - 155 | MN908947.3 23443 23466 nCoV-2019_78_LEFT 60 + 156 | MN908947.3 23822 23847 nCoV-2019_78_RIGHT 60 - 157 | MN908947.3 23789 23812 nCoV-2019_79_LEFT 60 + 158 | MN908947.3 24145 24169 nCoV-2019_79_RIGHT 60 - 159 | MN908947.3 24078 24100 nCoV-2019_80_LEFT 60 + 160 | MN908947.3 24443 24467 nCoV-2019_80_RIGHT 60 - 161 | MN908947.3 24391 24416 nCoV-2019_81_LEFT 60 + 162 | MN908947.3 24765 24789 nCoV-2019_81_RIGHT 60 - 163 | MN908947.3 24696 24721 nCoV-2019_82_LEFT 60 + 164 | MN908947.3 25052 25076 nCoV-2019_82_RIGHT 60 - 165 | MN908947.3 24978 25003 nCoV-2019_83_LEFT 60 + 166 | MN908947.3 25347 25369 nCoV-2019_83_RIGHT 60 - 167 | MN908947.3 25279 25301 nCoV-2019_84_LEFT 60 + 168 | MN908947.3 25646 25673 nCoV-2019_84_RIGHT 60 - 169 | MN908947.3 25601 25623 nCoV-2019_85_LEFT 60 + 170 | MN908947.3 25969 25994 nCoV-2019_85_RIGHT 60 - 171 | MN908947.3 25902 25924 nCoV-2019_86_LEFT 60 + 172 | MN908947.3 26290 26315 nCoV-2019_86_RIGHT 60 - 173 | MN908947.3 26197 26219 nCoV-2019_87_LEFT 60 + 174 | MN908947.3 26566 26590 nCoV-2019_87_RIGHT 60 - 175 | MN908947.3 26520 26542 nCoV-2019_88_LEFT 60 + 176 | MN908947.3 26890 26913 nCoV-2019_88_RIGHT 60 - 177 | MN908947.3 26835 26857 nCoV-2019_89_LEFT 60 + 178 | MN908947.3 27202 27227 nCoV-2019_89_RIGHT 60 - 179 | MN908947.3 27141 27164 nCoV-2019_90_LEFT 60 + 180 | MN908947.3 27511 27533 nCoV-2019_90_RIGHT 60 - 181 | MN908947.3 27446 27471 nCoV-2019_91_LEFT 60 + 182 | MN908947.3 27825 27854 nCoV-2019_91_RIGHT 60 - 183 | MN908947.3 27784 27808 nCoV-2019_92_LEFT 60 + 184 | MN908947.3 28145 28172 nCoV-2019_92_RIGHT 60 - 185 | MN908947.3 28081 28104 nCoV-2019_93_LEFT 60 + 186 | MN908947.3 28442 28464 nCoV-2019_93_RIGHT 60 - 187 | MN908947.3 28394 28416 nCoV-2019_94_LEFT 60 + 188 | MN908947.3 28756 28779 nCoV-2019_94_RIGHT 60 - 189 | MN908947.3 28677 28699 nCoV-2019_95_LEFT 60 + 190 | MN908947.3 29041 29063 nCoV-2019_95_RIGHT 60 - 191 | MN908947.3 28985 29007 nCoV-2019_96_LEFT 60 + 192 | MN908947.3 29356 29378 nCoV-2019_96_RIGHT 60 - 193 | MN908947.3 29288 29316 nCoV-2019_97_LEFT 60 + 194 | MN908947.3 29665 29693 nCoV-2019_97_RIGHT 60 - 195 | MN908947.3 29486 29510 nCoV-2019_98_LEFT 60 + 196 | MN908947.3 29836 29866 nCoV-2019_98_RIGHT 60 - 197 | -------------------------------------------------------------------------------- /reference/primer_schemes/nCoV-2019/V2/nCoV-2019.insert.bed: -------------------------------------------------------------------------------- 1 | MN908947.3 54 385 1 1 + 2 | MN908947.3 342 704 2 2 + 3 | MN908947.3 664 1004 3 1 + 4 | MN908947.3 965 1312 4 2 + 5 | MN908947.3 1264 1623 5 1 + 6 | MN908947.3 1595 1942 6 2 + 7 | MN908947.3 1897 2247 7 1 + 8 | MN908947.3 2205 2568 8 2 + 9 | MN908947.3 2529 2882 9 1 + 10 | MN908947.3 2850 3183 10 2 + 11 | MN908947.3 3166 3507 11 1 + 12 | MN908947.3 3482 3826 12 2 + 13 | MN908947.3 3795 4142 13 1 + 14 | MN908947.3 4077 4428 14 2 + 15 | MN908947.3 4321 4674 15 1 + 16 | MN908947.3 4658 4995 16 2 + 17 | MN908947.3 4966 5296 17 1 + 18 | MN908947.3 5287 5620 18 2 + 19 | MN908947.3 5586 5932 19 1 + 20 | MN908947.3 5894 6247 20 2 + 21 | MN908947.3 6196 6528 21 1 + 22 | MN908947.3 6495 6846 22 2 + 23 | MN908947.3 6745 7092 23 1 + 24 | MN908947.3 7058 7389 24 2 + 25 | MN908947.3 7332 7671 25 1 + 26 | MN908947.3 7651 7997 26 2 + 27 | MN908947.3 7968 8319 27 1 + 28 | MN908947.3 8275 8635 28 2 + 29 | MN908947.3 8619 8954 29 1 + 30 | MN908947.3 8913 9245 30 2 + 31 | MN908947.3 9226 9557 31 1 + 32 | MN908947.3 9502 9834 32 2 + 33 | MN908947.3 9806 10146 33 1 + 34 | MN908947.3 10099 10437 34 2 + 35 | MN908947.3 10384 10737 35 1 + 36 | MN908947.3 10688 11048 36 2 + 37 | MN908947.3 11022 11372 37 1 + 38 | MN908947.3 11331 11668 38 2 + 39 | MN908947.3 11584 11927 39 1 + 40 | MN908947.3 11889 12234 40 2 + 41 | MN908947.3 12133 12465 41 1 + 42 | MN908947.3 12439 12779 42 2 + 43 | MN908947.3 12732 13074 43 1 + 44 | MN908947.3 13027 13378 44 2 + 45 | MN908947.3 13344 13669 45 1 + 46 | MN908947.3 13621 13962 46 2 + 47 | MN908947.3 13946 14271 47 1 + 48 | MN908947.3 14232 14579 48 2 + 49 | MN908947.3 14570 14898 49 1 + 50 | MN908947.3 14895 15224 50 2 + 51 | MN908947.3 15193 15538 51 1 + 52 | MN908947.3 15503 15861 52 2 + 53 | MN908947.3 15851 16186 53 1 + 54 | MN908947.3 16144 16485 54 2 + 55 | MN908947.3 16444 16804 55 1 + 56 | MN908947.3 16770 17130 56 2 + 57 | MN908947.3 17087 17430 57 1 + 58 | MN908947.3 17406 17738 58 2 + 59 | MN908947.3 17697 18036 59 1 + 60 | MN908947.3 17993 18324 60 2 + 61 | MN908947.3 18275 18650 61 1 + 62 | MN908947.3 18618 18957 62 2 + 63 | MN908947.3 18918 19275 63 1 + 64 | MN908947.3 19232 19591 64 2 + 65 | MN908947.3 19570 19911 65 1 + 66 | MN908947.3 19866 20231 66 2 + 67 | MN908947.3 20200 20542 67 1 + 68 | MN908947.3 20496 20867 68 2 + 69 | MN908947.3 20813 21146 69 1 + 70 | MN908947.3 21104 21427 70 2 + 71 | MN908947.3 21386 21716 71 1 + 72 | MN908947.3 21682 22013 72 2 + 73 | MN908947.3 21990 22324 73 1 + 74 | MN908947.3 22290 22626 74 2 + 75 | MN908947.3 22542 22877 75 1 + 76 | MN908947.3 22819 23192 76 2 + 77 | MN908947.3 23144 23500 77 1 + 78 | MN908947.3 23466 23822 78 2 + 79 | MN908947.3 23812 24145 79 1 + 80 | MN908947.3 24100 24443 80 2 + 81 | MN908947.3 24416 24765 81 1 + 82 | MN908947.3 24721 25052 82 2 + 83 | MN908947.3 25003 25347 83 1 + 84 | MN908947.3 25301 25646 84 2 + 85 | MN908947.3 25623 25969 85 1 + 86 | MN908947.3 25924 26290 86 2 + 87 | MN908947.3 26219 26566 87 1 + 88 | MN908947.3 26542 26890 88 2 + 89 | MN908947.3 26857 27202 89 1 + 90 | MN908947.3 27164 27511 90 2 + 91 | MN908947.3 27471 27825 91 1 + 92 | MN908947.3 27808 28145 92 2 + 93 | MN908947.3 28104 28442 93 1 + 94 | MN908947.3 28416 28756 94 2 + 95 | MN908947.3 28699 29041 95 1 + 96 | MN908947.3 29007 29356 96 2 + 97 | MN908947.3 29316 29665 97 1 + 98 | MN908947.3 29510 29836 98 2 + 99 | -------------------------------------------------------------------------------- /reference/primer_schemes/nCoV-2019/V2/nCoV-2019.primer.bed: -------------------------------------------------------------------------------- 1 | MN908947.3 30 54 nCoV-2019_1_LEFT 1 + 2 | MN908947.3 385 410 nCoV-2019_1_RIGHT 1 - 3 | MN908947.3 320 342 nCoV-2019_2_LEFT 2 + 4 | MN908947.3 704 726 nCoV-2019_2_RIGHT 2 - 5 | MN908947.3 642 664 nCoV-2019_3_LEFT 1 + 6 | MN908947.3 1004 1028 nCoV-2019_3_RIGHT 1 - 7 | MN908947.3 943 965 nCoV-2019_4_LEFT 2 + 8 | MN908947.3 1312 1337 nCoV-2019_4_RIGHT 2 - 9 | MN908947.3 1242 1264 nCoV-2019_5_LEFT 1 + 10 | MN908947.3 1623 1651 nCoV-2019_5_RIGHT 1 - 11 | MN908947.3 1573 1595 nCoV-2019_6_LEFT 2 + 12 | MN908947.3 1942 1964 nCoV-2019_6_RIGHT 2 - 13 | MN908947.3 1875 1897 nCoV-2019_7_LEFT 1 + 14 | MN908947.3 2247 2269 nCoV-2019_7_RIGHT 1 - 15 | MN908947.3 2181 2205 nCoV-2019_8_LEFT 2 + 16 | MN908947.3 2568 2592 nCoV-2019_8_RIGHT 2 - 17 | MN908947.3 2505 2529 nCoV-2019_9_LEFT 1 + 18 | MN908947.3 2882 2904 nCoV-2019_9_RIGHT 1 - 19 | MN908947.3 2826 2850 nCoV-2019_10_LEFT 2 + 20 | MN908947.3 3183 3210 nCoV-2019_10_RIGHT 2 - 21 | MN908947.3 3144 3166 nCoV-2019_11_LEFT 1 + 22 | MN908947.3 3507 3531 nCoV-2019_11_RIGHT 1 - 23 | MN908947.3 3460 3482 nCoV-2019_12_LEFT 2 + 24 | MN908947.3 3826 3853 nCoV-2019_12_RIGHT 2 - 25 | MN908947.3 3771 3795 nCoV-2019_13_LEFT 1 + 26 | MN908947.3 4142 4164 nCoV-2019_13_RIGHT 1 - 27 | MN908947.3 4054 4077 nCoV-2019_14_LEFT 2 + 28 | MN908947.3 4428 4450 nCoV-2019_14_RIGHT 2 - 29 | MN908947.3 4294 4321 nCoV-2019_15_LEFT 1 + 30 | MN908947.3 4674 4696 nCoV-2019_15_RIGHT 1 - 31 | MN908947.3 4636 4658 nCoV-2019_16_LEFT 2 + 32 | MN908947.3 4995 5017 nCoV-2019_16_RIGHT 2 - 33 | MN908947.3 4939 4966 nCoV-2019_17_LEFT 1 + 34 | MN908947.3 5296 5321 nCoV-2019_17_RIGHT 1 - 35 | MN908947.3 5257 5287 nCoV-2019_18_LEFT_alt2 2 + 36 | MN908947.3 5620 5644 nCoV-2019_18_RIGHT 2 - 37 | MN908947.3 5563 5586 nCoV-2019_19_LEFT 1 + 38 | MN908947.3 5932 5957 nCoV-2019_19_RIGHT 1 - 39 | MN908947.3 5867 5894 nCoV-2019_20_LEFT 2 + 40 | MN908947.3 6247 6272 nCoV-2019_20_RIGHT 2 - 41 | MN908947.3 6167 6196 nCoV-2019_21_LEFT 1 + 42 | MN908947.3 6528 6550 nCoV-2019_21_RIGHT 1 - 43 | MN908947.3 6466 6495 nCoV-2019_22_LEFT 2 + 44 | MN908947.3 6846 6873 nCoV-2019_22_RIGHT 2 - 45 | MN908947.3 6718 6745 nCoV-2019_23_LEFT 1 + 46 | MN908947.3 7092 7117 nCoV-2019_23_RIGHT 1 - 47 | MN908947.3 7035 7058 nCoV-2019_24_LEFT 2 + 48 | MN908947.3 7389 7415 nCoV-2019_24_RIGHT 2 - 49 | MN908947.3 7305 7332 nCoV-2019_25_LEFT 1 + 50 | MN908947.3 7671 7694 nCoV-2019_25_RIGHT 1 - 51 | MN908947.3 7626 7651 nCoV-2019_26_LEFT 2 + 52 | MN908947.3 7997 8019 nCoV-2019_26_RIGHT 2 - 53 | MN908947.3 7943 7968 nCoV-2019_27_LEFT 1 + 54 | MN908947.3 8319 8341 nCoV-2019_27_RIGHT 1 - 55 | MN908947.3 8249 8275 nCoV-2019_28_LEFT 2 + 56 | MN908947.3 8635 8661 nCoV-2019_28_RIGHT 2 - 57 | MN908947.3 8595 8619 nCoV-2019_29_LEFT 1 + 58 | MN908947.3 8954 8983 nCoV-2019_29_RIGHT 1 - 59 | MN908947.3 8888 8913 nCoV-2019_30_LEFT 2 + 60 | MN908947.3 9245 9271 nCoV-2019_30_RIGHT 2 - 61 | MN908947.3 9204 9226 nCoV-2019_31_LEFT 1 + 62 | MN908947.3 9557 9585 nCoV-2019_31_RIGHT 1 - 63 | MN908947.3 9477 9502 nCoV-2019_32_LEFT 2 + 64 | MN908947.3 9834 9858 nCoV-2019_32_RIGHT 2 - 65 | MN908947.3 9784 9806 nCoV-2019_33_LEFT 1 + 66 | MN908947.3 10146 10171 nCoV-2019_33_RIGHT 1 - 67 | MN908947.3 10076 10099 nCoV-2019_34_LEFT 2 + 68 | MN908947.3 10437 10459 nCoV-2019_34_RIGHT 2 - 69 | MN908947.3 10362 10384 nCoV-2019_35_LEFT 1 + 70 | MN908947.3 10737 10763 nCoV-2019_35_RIGHT 1 - 71 | MN908947.3 10666 10688 nCoV-2019_36_LEFT 2 + 72 | MN908947.3 11048 11074 nCoV-2019_36_RIGHT 2 - 73 | MN908947.3 10999 11022 nCoV-2019_37_LEFT 1 + 74 | MN908947.3 11372 11394 nCoV-2019_37_RIGHT 1 - 75 | MN908947.3 11306 11331 nCoV-2019_38_LEFT 2 + 76 | MN908947.3 11668 11693 nCoV-2019_38_RIGHT 2 - 77 | MN908947.3 11555 11584 nCoV-2019_39_LEFT 1 + 78 | MN908947.3 11927 11949 nCoV-2019_39_RIGHT 1 - 79 | MN908947.3 11863 11889 nCoV-2019_40_LEFT 2 + 80 | MN908947.3 12234 12256 nCoV-2019_40_RIGHT 2 - 81 | MN908947.3 12110 12133 nCoV-2019_41_LEFT 1 + 82 | MN908947.3 12465 12490 nCoV-2019_41_RIGHT 1 - 83 | MN908947.3 12417 12439 nCoV-2019_42_LEFT 2 + 84 | MN908947.3 12779 12802 nCoV-2019_42_RIGHT 2 - 85 | MN908947.3 12710 12732 nCoV-2019_43_LEFT 1 + 86 | MN908947.3 13074 13096 nCoV-2019_43_RIGHT 1 - 87 | MN908947.3 13005 13027 nCoV-2019_44_LEFT 2 + 88 | MN908947.3 13378 13400 nCoV-2019_44_RIGHT 2 - 89 | MN908947.3 13319 13344 nCoV-2019_45_LEFT 1 + 90 | MN908947.3 13669 13699 nCoV-2019_45_RIGHT 1 - 91 | MN908947.3 13599 13621 nCoV-2019_46_LEFT 2 + 92 | MN908947.3 13962 13984 nCoV-2019_46_RIGHT 2 - 93 | MN908947.3 13918 13946 nCoV-2019_47_LEFT 1 + 94 | MN908947.3 14271 14299 nCoV-2019_47_RIGHT 1 - 95 | MN908947.3 14207 14232 nCoV-2019_48_LEFT 2 + 96 | MN908947.3 14579 14601 nCoV-2019_48_RIGHT 2 - 97 | MN908947.3 14545 14570 nCoV-2019_49_LEFT 1 + 98 | MN908947.3 14898 14926 nCoV-2019_49_RIGHT 1 - 99 | MN908947.3 14865 14895 nCoV-2019_50_LEFT 2 + 100 | MN908947.3 15224 15246 nCoV-2019_50_RIGHT 2 - 101 | MN908947.3 15171 15193 nCoV-2019_51_LEFT 1 + 102 | MN908947.3 15538 15560 nCoV-2019_51_RIGHT 1 - 103 | MN908947.3 15481 15503 nCoV-2019_52_LEFT 2 + 104 | MN908947.3 15861 15886 nCoV-2019_52_RIGHT 2 - 105 | MN908947.3 15827 15851 nCoV-2019_53_LEFT 1 + 106 | MN908947.3 16186 16209 nCoV-2019_53_RIGHT 1 - 107 | MN908947.3 16118 16144 nCoV-2019_54_LEFT 2 + 108 | MN908947.3 16485 16510 nCoV-2019_54_RIGHT 2 - 109 | MN908947.3 16416 16444 nCoV-2019_55_LEFT 1 + 110 | MN908947.3 16804 16833 nCoV-2019_55_RIGHT 1 - 111 | MN908947.3 16748 16770 nCoV-2019_56_LEFT 2 + 112 | MN908947.3 17130 17152 nCoV-2019_56_RIGHT 2 - 113 | MN908947.3 17065 17087 nCoV-2019_57_LEFT 1 + 114 | MN908947.3 17430 17452 nCoV-2019_57_RIGHT 1 - 115 | MN908947.3 17381 17406 nCoV-2019_58_LEFT 2 + 116 | MN908947.3 17738 17761 nCoV-2019_58_RIGHT 2 - 117 | MN908947.3 17674 17697 nCoV-2019_59_LEFT 1 + 118 | MN908947.3 18036 18062 nCoV-2019_59_RIGHT 1 - 119 | MN908947.3 17966 17993 nCoV-2019_60_LEFT 2 + 120 | MN908947.3 18324 18348 nCoV-2019_60_RIGHT 2 - 121 | MN908947.3 18253 18275 nCoV-2019_61_LEFT 1 + 122 | MN908947.3 18650 18672 nCoV-2019_61_RIGHT 1 - 123 | MN908947.3 18596 18618 nCoV-2019_62_LEFT 2 + 124 | MN908947.3 18957 18979 nCoV-2019_62_RIGHT 2 - 125 | MN908947.3 18896 18918 nCoV-2019_63_LEFT 1 + 126 | MN908947.3 19275 19297 nCoV-2019_63_RIGHT 1 - 127 | MN908947.3 19204 19232 nCoV-2019_64_LEFT 2 + 128 | MN908947.3 19591 19616 nCoV-2019_64_RIGHT 2 - 129 | MN908947.3 19548 19570 nCoV-2019_65_LEFT 1 + 130 | MN908947.3 19911 19939 nCoV-2019_65_RIGHT 1 - 131 | MN908947.3 19844 19866 nCoV-2019_66_LEFT 2 + 132 | MN908947.3 20231 20255 nCoV-2019_66_RIGHT 2 - 133 | MN908947.3 20172 20200 nCoV-2019_67_LEFT 1 + 134 | MN908947.3 20542 20572 nCoV-2019_67_RIGHT 1 - 135 | MN908947.3 20472 20496 nCoV-2019_68_LEFT 2 + 136 | MN908947.3 20867 20890 nCoV-2019_68_RIGHT 2 - 137 | MN908947.3 20786 20813 nCoV-2019_69_LEFT 1 + 138 | MN908947.3 21146 21169 nCoV-2019_69_RIGHT 1 - 139 | MN908947.3 21075 21104 nCoV-2019_70_LEFT 2 + 140 | MN908947.3 21427 21455 nCoV-2019_70_RIGHT 2 - 141 | MN908947.3 21357 21386 nCoV-2019_71_LEFT 1 + 142 | MN908947.3 21716 21743 nCoV-2019_71_RIGHT 1 - 143 | MN908947.3 21658 21682 nCoV-2019_72_LEFT 2 + 144 | MN908947.3 22013 22038 nCoV-2019_72_RIGHT 2 - 145 | MN908947.3 21961 21990 nCoV-2019_73_LEFT 1 + 146 | MN908947.3 22324 22346 nCoV-2019_73_RIGHT 1 - 147 | MN908947.3 22262 22290 nCoV-2019_74_LEFT 2 + 148 | MN908947.3 22626 22650 nCoV-2019_74_RIGHT 2 - 149 | MN908947.3 22516 22542 nCoV-2019_75_LEFT 1 + 150 | MN908947.3 22877 22903 nCoV-2019_75_RIGHT 1 - 151 | MN908947.3 22797 22819 nCoV-2019_76_LEFT 2 + 152 | MN908947.3 23192 23214 nCoV-2019_76_RIGHT 2 - 153 | MN908947.3 23122 23144 nCoV-2019_77_LEFT 1 + 154 | MN908947.3 23500 23522 nCoV-2019_77_RIGHT 1 - 155 | MN908947.3 23443 23466 nCoV-2019_78_LEFT 2 + 156 | MN908947.3 23822 23847 nCoV-2019_78_RIGHT 2 - 157 | MN908947.3 23789 23812 nCoV-2019_79_LEFT 1 + 158 | MN908947.3 24145 24169 nCoV-2019_79_RIGHT 1 - 159 | MN908947.3 24078 24100 nCoV-2019_80_LEFT 2 + 160 | MN908947.3 24443 24467 nCoV-2019_80_RIGHT 2 - 161 | MN908947.3 24391 24416 nCoV-2019_81_LEFT 1 + 162 | MN908947.3 24765 24789 nCoV-2019_81_RIGHT 1 - 163 | MN908947.3 24696 24721 nCoV-2019_82_LEFT 2 + 164 | MN908947.3 25052 25076 nCoV-2019_82_RIGHT 2 - 165 | MN908947.3 24978 25003 nCoV-2019_83_LEFT 1 + 166 | MN908947.3 25347 25369 nCoV-2019_83_RIGHT 1 - 167 | MN908947.3 25279 25301 nCoV-2019_84_LEFT 2 + 168 | MN908947.3 25646 25673 nCoV-2019_84_RIGHT 2 - 169 | MN908947.3 25601 25623 nCoV-2019_85_LEFT 1 + 170 | MN908947.3 25969 25994 nCoV-2019_85_RIGHT 1 - 171 | MN908947.3 25902 25924 nCoV-2019_86_LEFT 2 + 172 | MN908947.3 26290 26315 nCoV-2019_86_RIGHT 2 - 173 | MN908947.3 26197 26219 nCoV-2019_87_LEFT 1 + 174 | MN908947.3 26566 26590 nCoV-2019_87_RIGHT 1 - 175 | MN908947.3 26520 26542 nCoV-2019_88_LEFT 2 + 176 | MN908947.3 26890 26913 nCoV-2019_88_RIGHT 2 - 177 | MN908947.3 26835 26857 nCoV-2019_89_LEFT 1 + 178 | MN908947.3 27202 27227 nCoV-2019_89_RIGHT 1 - 179 | MN908947.3 27141 27164 nCoV-2019_90_LEFT 2 + 180 | MN908947.3 27511 27533 nCoV-2019_90_RIGHT 2 - 181 | MN908947.3 27446 27471 nCoV-2019_91_LEFT 1 + 182 | MN908947.3 27825 27854 nCoV-2019_91_RIGHT 1 - 183 | MN908947.3 27784 27808 nCoV-2019_92_LEFT 2 + 184 | MN908947.3 28145 28172 nCoV-2019_92_RIGHT 2 - 185 | MN908947.3 28081 28104 nCoV-2019_93_LEFT 1 + 186 | MN908947.3 28442 28464 nCoV-2019_93_RIGHT 1 - 187 | MN908947.3 28394 28416 nCoV-2019_94_LEFT 2 + 188 | MN908947.3 28756 28779 nCoV-2019_94_RIGHT 2 - 189 | MN908947.3 28677 28699 nCoV-2019_95_LEFT 1 + 190 | MN908947.3 29041 29063 nCoV-2019_95_RIGHT 1 - 191 | MN908947.3 28985 29007 nCoV-2019_96_LEFT 2 + 192 | MN908947.3 29356 29378 nCoV-2019_96_RIGHT 2 - 193 | MN908947.3 29288 29316 nCoV-2019_97_LEFT 1 + 194 | MN908947.3 29665 29693 nCoV-2019_97_RIGHT 1 - 195 | MN908947.3 29486 29510 nCoV-2019_98_LEFT 2 + 196 | MN908947.3 29836 29866 nCoV-2019_98_RIGHT 2 - 197 | -------------------------------------------------------------------------------- /reference/primer_schemes/nCoV-2019/V3/nCoV-2019.insert.bed: -------------------------------------------------------------------------------- 1 | MN908947.3 54 385 1 1 + 2 | MN908947.3 342 704 2 2 + 3 | MN908947.3 664 1004 3 1 + 4 | MN908947.3 965 1312 4 2 + 5 | MN908947.3 1264 1623 5 1 + 6 | MN908947.3 1595 1942 6 2 + 7 | MN908947.3 1897 2242 7 1 + 8 | MN908947.3 2205 2568 8 2 + 9 | MN908947.3 2529 2880 9 1 + 10 | MN908947.3 2850 3183 10 2 + 11 | MN908947.3 3166 3507 11 1 + 12 | MN908947.3 3482 3826 12 2 + 13 | MN908947.3 3795 4142 13 1 + 14 | MN908947.3 4077 4402 14 2 + 15 | MN908947.3 4322 4666 15 1 + 16 | MN908947.3 4658 4995 16 2 + 17 | MN908947.3 4966 5296 17 1 + 18 | MN908947.3 5287 5620 18 2 + 19 | MN908947.3 5586 5932 19 1 + 20 | MN908947.3 5894 6247 20 2 + 21 | MN908947.3 6197 6526 21 1 + 22 | MN908947.3 6495 6846 22 2 + 23 | MN908947.3 6745 7092 23 1 + 24 | MN908947.3 7058 7389 24 2 + 25 | MN908947.3 7332 7671 25 1 + 26 | MN908947.3 7651 7997 26 2 + 27 | MN908947.3 7968 8319 27 1 + 28 | MN908947.3 8275 8635 28 2 + 29 | MN908947.3 8619 8954 29 1 + 30 | MN908947.3 8913 9245 30 2 + 31 | MN908947.3 9226 9557 31 1 + 32 | MN908947.3 9502 9834 32 2 + 33 | MN908947.3 9806 10146 33 1 + 34 | MN908947.3 10099 10437 34 2 + 35 | MN908947.3 10384 10737 35 1 + 36 | MN908947.3 10688 11048 36 2 + 37 | MN908947.3 11022 11372 37 1 + 38 | MN908947.3 11331 11668 38 2 + 39 | MN908947.3 11584 11927 39 1 + 40 | MN908947.3 11889 12234 40 2 + 41 | MN908947.3 12133 12465 41 1 + 42 | MN908947.3 12439 12779 42 2 + 43 | MN908947.3 12732 13074 43 1 + 44 | MN908947.3 13029 13363 44 2 + 45 | MN908947.3 13344 13660 45 1 + 46 | MN908947.3 13625 13961 46 2 + 47 | MN908947.3 13946 14271 47 1 + 48 | MN908947.3 14232 14579 48 2 + 49 | MN908947.3 14570 14898 49 1 + 50 | MN908947.3 14895 15224 50 2 + 51 | MN908947.3 15193 15538 51 1 + 52 | MN908947.3 15503 15861 52 2 + 53 | MN908947.3 15851 16186 53 1 + 54 | MN908947.3 16144 16485 54 2 + 55 | MN908947.3 16444 16804 55 1 + 56 | MN908947.3 16770 17130 56 2 + 57 | MN908947.3 17087 17430 57 1 + 58 | MN908947.3 17406 17738 58 2 + 59 | MN908947.3 17697 18036 59 1 + 60 | MN908947.3 17993 18324 60 2 + 61 | MN908947.3 18275 18650 61 1 + 62 | MN908947.3 18618 18957 62 2 + 63 | MN908947.3 18918 19275 63 1 + 64 | MN908947.3 19232 19591 64 2 + 65 | MN908947.3 19570 19911 65 1 + 66 | MN908947.3 19866 20231 66 2 + 67 | MN908947.3 20200 20542 67 1 + 68 | MN908947.3 20496 20867 68 2 + 69 | MN908947.3 20813 21146 69 1 + 70 | MN908947.3 21104 21427 70 2 + 71 | MN908947.3 21386 21716 71 1 + 72 | MN908947.3 21682 22013 72 2 + 73 | MN908947.3 21990 22324 73 1 + 74 | MN908947.3 22290 22626 74 2 + 75 | MN908947.3 22542 22877 75 1 + 76 | MN908947.3 22821 23189 76 2 + 77 | MN908947.3 23144 23500 77 1 + 78 | MN908947.3 23466 23822 78 2 + 79 | MN908947.3 23812 24145 79 1 + 80 | MN908947.3 24100 24443 80 2 + 81 | MN908947.3 24416 24765 81 1 + 82 | MN908947.3 24721 25052 82 2 + 83 | MN908947.3 25003 25347 83 1 + 84 | MN908947.3 25301 25646 84 2 + 85 | MN908947.3 25623 25969 85 1 + 86 | MN908947.3 25924 26290 86 2 + 87 | MN908947.3 26219 26566 87 1 + 88 | MN908947.3 26542 26890 88 2 + 89 | MN908947.3 26860 27190 89 1 + 90 | MN908947.3 27164 27511 90 2 + 91 | MN908947.3 27471 27825 91 1 + 92 | MN908947.3 27808 28145 92 2 + 93 | MN908947.3 28104 28442 93 1 + 94 | MN908947.3 28416 28756 94 2 + 95 | MN908947.3 28699 29041 95 1 + 96 | MN908947.3 29007 29356 96 2 + 97 | MN908947.3 29316 29665 97 1 + 98 | MN908947.3 29510 29836 98 2 + 99 | -------------------------------------------------------------------------------- /reference/primer_schemes/nCoV-2019/V3/nCoV-2019.primer.bed: -------------------------------------------------------------------------------- 1 | MN908947.3 30 54 nCoV-2019_1_LEFT 1 + 2 | MN908947.3 385 410 nCoV-2019_1_RIGHT 1 - 3 | MN908947.3 320 342 nCoV-2019_2_LEFT 2 + 4 | MN908947.3 704 726 nCoV-2019_2_RIGHT 2 - 5 | MN908947.3 642 664 nCoV-2019_3_LEFT 1 + 6 | MN908947.3 1004 1028 nCoV-2019_3_RIGHT 1 - 7 | MN908947.3 943 965 nCoV-2019_4_LEFT 2 + 8 | MN908947.3 1312 1337 nCoV-2019_4_RIGHT 2 - 9 | MN908947.3 1242 1264 nCoV-2019_5_LEFT 1 + 10 | MN908947.3 1623 1651 nCoV-2019_5_RIGHT 1 - 11 | MN908947.3 1573 1595 nCoV-2019_6_LEFT 2 + 12 | MN908947.3 1942 1964 nCoV-2019_6_RIGHT 2 - 13 | MN908947.3 1875 1897 nCoV-2019_7_LEFT 1 + 14 | MN908947.3 1868 1890 nCoV-2019_7_LEFT_alt0 1 + 15 | MN908947.3 2247 2269 nCoV-2019_7_RIGHT 1 - 16 | MN908947.3 2242 2264 nCoV-2019_7_RIGHT_alt5 1 - 17 | MN908947.3 2181 2205 nCoV-2019_8_LEFT 2 + 18 | MN908947.3 2568 2592 nCoV-2019_8_RIGHT 2 - 19 | MN908947.3 2505 2529 nCoV-2019_9_LEFT 1 + 20 | MN908947.3 2504 2528 nCoV-2019_9_LEFT_alt4 1 + 21 | MN908947.3 2882 2904 nCoV-2019_9_RIGHT 1 - 22 | MN908947.3 2880 2902 nCoV-2019_9_RIGHT_alt2 1 - 23 | MN908947.3 2826 2850 nCoV-2019_10_LEFT 2 + 24 | MN908947.3 3183 3210 nCoV-2019_10_RIGHT 2 - 25 | MN908947.3 3144 3166 nCoV-2019_11_LEFT 1 + 26 | MN908947.3 3507 3531 nCoV-2019_11_RIGHT 1 - 27 | MN908947.3 3460 3482 nCoV-2019_12_LEFT 2 + 28 | MN908947.3 3826 3853 nCoV-2019_12_RIGHT 2 - 29 | MN908947.3 3771 3795 nCoV-2019_13_LEFT 1 + 30 | MN908947.3 4142 4164 nCoV-2019_13_RIGHT 1 - 31 | MN908947.3 4054 4077 nCoV-2019_14_LEFT 2 + 32 | MN908947.3 4044 4068 nCoV-2019_14_LEFT_alt4 2 + 33 | MN908947.3 4428 4450 nCoV-2019_14_RIGHT 2 - 34 | MN908947.3 4402 4424 nCoV-2019_14_RIGHT_alt2 2 - 35 | MN908947.3 4294 4321 nCoV-2019_15_LEFT 1 + 36 | MN908947.3 4296 4322 nCoV-2019_15_LEFT_alt1 1 + 37 | MN908947.3 4674 4696 nCoV-2019_15_RIGHT 1 - 38 | MN908947.3 4666 4689 nCoV-2019_15_RIGHT_alt3 1 - 39 | MN908947.3 4636 4658 nCoV-2019_16_LEFT 2 + 40 | MN908947.3 4995 5017 nCoV-2019_16_RIGHT 2 - 41 | MN908947.3 4939 4966 nCoV-2019_17_LEFT 1 + 42 | MN908947.3 5296 5321 nCoV-2019_17_RIGHT 1 - 43 | MN908947.3 5230 5259 nCoV-2019_18_LEFT 2 + 44 | MN908947.3 5257 5287 nCoV-2019_18_LEFT_alt2 2 + 45 | MN908947.3 5620 5644 nCoV-2019_18_RIGHT 2 - 46 | MN908947.3 5620 5643 nCoV-2019_18_RIGHT_alt1 2 - 47 | MN908947.3 5563 5586 nCoV-2019_19_LEFT 1 + 48 | MN908947.3 5932 5957 nCoV-2019_19_RIGHT 1 - 49 | MN908947.3 5867 5894 nCoV-2019_20_LEFT 2 + 50 | MN908947.3 6247 6272 nCoV-2019_20_RIGHT 2 - 51 | MN908947.3 6167 6196 nCoV-2019_21_LEFT 1 + 52 | MN908947.3 6168 6197 nCoV-2019_21_LEFT_alt2 1 + 53 | MN908947.3 6528 6550 nCoV-2019_21_RIGHT 1 - 54 | MN908947.3 6526 6548 nCoV-2019_21_RIGHT_alt0 1 - 55 | MN908947.3 6466 6495 nCoV-2019_22_LEFT 2 + 56 | MN908947.3 6846 6873 nCoV-2019_22_RIGHT 2 - 57 | MN908947.3 6718 6745 nCoV-2019_23_LEFT 1 + 58 | MN908947.3 7092 7117 nCoV-2019_23_RIGHT 1 - 59 | MN908947.3 7035 7058 nCoV-2019_24_LEFT 2 + 60 | MN908947.3 7389 7415 nCoV-2019_24_RIGHT 2 - 61 | MN908947.3 7305 7332 nCoV-2019_25_LEFT 1 + 62 | MN908947.3 7671 7694 nCoV-2019_25_RIGHT 1 - 63 | MN908947.3 7626 7651 nCoV-2019_26_LEFT 2 + 64 | MN908947.3 7997 8019 nCoV-2019_26_RIGHT 2 - 65 | MN908947.3 7943 7968 nCoV-2019_27_LEFT 1 + 66 | MN908947.3 8319 8341 nCoV-2019_27_RIGHT 1 - 67 | MN908947.3 8249 8275 nCoV-2019_28_LEFT 2 + 68 | MN908947.3 8635 8661 nCoV-2019_28_RIGHT 2 - 69 | MN908947.3 8595 8619 nCoV-2019_29_LEFT 1 + 70 | MN908947.3 8954 8983 nCoV-2019_29_RIGHT 1 - 71 | MN908947.3 8888 8913 nCoV-2019_30_LEFT 2 + 72 | MN908947.3 9245 9271 nCoV-2019_30_RIGHT 2 - 73 | MN908947.3 9204 9226 nCoV-2019_31_LEFT 1 + 74 | MN908947.3 9557 9585 nCoV-2019_31_RIGHT 1 - 75 | MN908947.3 9477 9502 nCoV-2019_32_LEFT 2 + 76 | MN908947.3 9834 9858 nCoV-2019_32_RIGHT 2 - 77 | MN908947.3 9784 9806 nCoV-2019_33_LEFT 1 + 78 | MN908947.3 10146 10171 nCoV-2019_33_RIGHT 1 - 79 | MN908947.3 10076 10099 nCoV-2019_34_LEFT 2 + 80 | MN908947.3 10437 10459 nCoV-2019_34_RIGHT 2 - 81 | MN908947.3 10362 10384 nCoV-2019_35_LEFT 1 + 82 | MN908947.3 10737 10763 nCoV-2019_35_RIGHT 1 - 83 | MN908947.3 10666 10688 nCoV-2019_36_LEFT 2 + 84 | MN908947.3 11048 11074 nCoV-2019_36_RIGHT 2 - 85 | MN908947.3 10999 11022 nCoV-2019_37_LEFT 1 + 86 | MN908947.3 11372 11394 nCoV-2019_37_RIGHT 1 - 87 | MN908947.3 11306 11331 nCoV-2019_38_LEFT 2 + 88 | MN908947.3 11668 11693 nCoV-2019_38_RIGHT 2 - 89 | MN908947.3 11555 11584 nCoV-2019_39_LEFT 1 + 90 | MN908947.3 11927 11949 nCoV-2019_39_RIGHT 1 - 91 | MN908947.3 11863 11889 nCoV-2019_40_LEFT 2 + 92 | MN908947.3 12234 12256 nCoV-2019_40_RIGHT 2 - 93 | MN908947.3 12110 12133 nCoV-2019_41_LEFT 1 + 94 | MN908947.3 12465 12490 nCoV-2019_41_RIGHT 1 - 95 | MN908947.3 12417 12439 nCoV-2019_42_LEFT 2 + 96 | MN908947.3 12779 12802 nCoV-2019_42_RIGHT 2 - 97 | MN908947.3 12710 12732 nCoV-2019_43_LEFT 1 + 98 | MN908947.3 13074 13096 nCoV-2019_43_RIGHT 1 - 99 | MN908947.3 13005 13027 nCoV-2019_44_LEFT 2 + 100 | MN908947.3 13007 13029 nCoV-2019_44_LEFT_alt3 2 + 101 | MN908947.3 13378 13400 nCoV-2019_44_RIGHT 2 - 102 | MN908947.3 13363 13385 nCoV-2019_44_RIGHT_alt0 2 - 103 | MN908947.3 13319 13344 nCoV-2019_45_LEFT 1 + 104 | MN908947.3 13307 13336 nCoV-2019_45_LEFT_alt2 1 + 105 | MN908947.3 13669 13699 nCoV-2019_45_RIGHT 1 - 106 | MN908947.3 13660 13689 nCoV-2019_45_RIGHT_alt7 1 - 107 | MN908947.3 13599 13621 nCoV-2019_46_LEFT 2 + 108 | MN908947.3 13602 13625 nCoV-2019_46_LEFT_alt1 2 + 109 | MN908947.3 13962 13984 nCoV-2019_46_RIGHT 2 - 110 | MN908947.3 13961 13984 nCoV-2019_46_RIGHT_alt2 2 - 111 | MN908947.3 13918 13946 nCoV-2019_47_LEFT 1 + 112 | MN908947.3 14271 14299 nCoV-2019_47_RIGHT 1 - 113 | MN908947.3 14207 14232 nCoV-2019_48_LEFT 2 + 114 | MN908947.3 14579 14601 nCoV-2019_48_RIGHT 2 - 115 | MN908947.3 14545 14570 nCoV-2019_49_LEFT 1 + 116 | MN908947.3 14898 14926 nCoV-2019_49_RIGHT 1 - 117 | MN908947.3 14865 14895 nCoV-2019_50_LEFT 2 + 118 | MN908947.3 15224 15246 nCoV-2019_50_RIGHT 2 - 119 | MN908947.3 15171 15193 nCoV-2019_51_LEFT 1 + 120 | MN908947.3 15538 15560 nCoV-2019_51_RIGHT 1 - 121 | MN908947.3 15481 15503 nCoV-2019_52_LEFT 2 + 122 | MN908947.3 15861 15886 nCoV-2019_52_RIGHT 2 - 123 | MN908947.3 15827 15851 nCoV-2019_53_LEFT 1 + 124 | MN908947.3 16186 16209 nCoV-2019_53_RIGHT 1 - 125 | MN908947.3 16118 16144 nCoV-2019_54_LEFT 2 + 126 | MN908947.3 16485 16510 nCoV-2019_54_RIGHT 2 - 127 | MN908947.3 16416 16444 nCoV-2019_55_LEFT 1 + 128 | MN908947.3 16804 16833 nCoV-2019_55_RIGHT 1 - 129 | MN908947.3 16748 16770 nCoV-2019_56_LEFT 2 + 130 | MN908947.3 17130 17152 nCoV-2019_56_RIGHT 2 - 131 | MN908947.3 17065 17087 nCoV-2019_57_LEFT 1 + 132 | MN908947.3 17430 17452 nCoV-2019_57_RIGHT 1 - 133 | MN908947.3 17381 17406 nCoV-2019_58_LEFT 2 + 134 | MN908947.3 17738 17761 nCoV-2019_58_RIGHT 2 - 135 | MN908947.3 17674 17697 nCoV-2019_59_LEFT 1 + 136 | MN908947.3 18036 18062 nCoV-2019_59_RIGHT 1 - 137 | MN908947.3 17966 17993 nCoV-2019_60_LEFT 2 + 138 | MN908947.3 18324 18348 nCoV-2019_60_RIGHT 2 - 139 | MN908947.3 18253 18275 nCoV-2019_61_LEFT 1 + 140 | MN908947.3 18650 18672 nCoV-2019_61_RIGHT 1 - 141 | MN908947.3 18596 18618 nCoV-2019_62_LEFT 2 + 142 | MN908947.3 18957 18979 nCoV-2019_62_RIGHT 2 - 143 | MN908947.3 18896 18918 nCoV-2019_63_LEFT 1 + 144 | MN908947.3 19275 19297 nCoV-2019_63_RIGHT 1 - 145 | MN908947.3 19204 19232 nCoV-2019_64_LEFT 2 + 146 | MN908947.3 19591 19616 nCoV-2019_64_RIGHT 2 - 147 | MN908947.3 19548 19570 nCoV-2019_65_LEFT 1 + 148 | MN908947.3 19911 19939 nCoV-2019_65_RIGHT 1 - 149 | MN908947.3 19844 19866 nCoV-2019_66_LEFT 2 + 150 | MN908947.3 20231 20255 nCoV-2019_66_RIGHT 2 - 151 | MN908947.3 20172 20200 nCoV-2019_67_LEFT 1 + 152 | MN908947.3 20542 20572 nCoV-2019_67_RIGHT 1 - 153 | MN908947.3 20472 20496 nCoV-2019_68_LEFT 2 + 154 | MN908947.3 20867 20890 nCoV-2019_68_RIGHT 2 - 155 | MN908947.3 20786 20813 nCoV-2019_69_LEFT 1 + 156 | MN908947.3 21146 21169 nCoV-2019_69_RIGHT 1 - 157 | MN908947.3 21075 21104 nCoV-2019_70_LEFT 2 + 158 | MN908947.3 21427 21455 nCoV-2019_70_RIGHT 2 - 159 | MN908947.3 21357 21386 nCoV-2019_71_LEFT 1 + 160 | MN908947.3 21716 21743 nCoV-2019_71_RIGHT 1 - 161 | MN908947.3 21658 21682 nCoV-2019_72_LEFT 2 + 162 | MN908947.3 22013 22038 nCoV-2019_72_RIGHT 2 - 163 | MN908947.3 21961 21990 nCoV-2019_73_LEFT 1 + 164 | MN908947.3 22324 22346 nCoV-2019_73_RIGHT 1 - 165 | MN908947.3 22262 22290 nCoV-2019_74_LEFT 2 + 166 | MN908947.3 22626 22650 nCoV-2019_74_RIGHT 2 - 167 | MN908947.3 22516 22542 nCoV-2019_75_LEFT 1 + 168 | MN908947.3 22877 22903 nCoV-2019_75_RIGHT 1 - 169 | MN908947.3 22797 22819 nCoV-2019_76_LEFT 2 + 170 | MN908947.3 22798 22821 nCoV-2019_76_LEFT_alt3 2 + 171 | MN908947.3 23192 23214 nCoV-2019_76_RIGHT 2 - 172 | MN908947.3 23189 23212 nCoV-2019_76_RIGHT_alt0 2 - 173 | MN908947.3 23122 23144 nCoV-2019_77_LEFT 1 + 174 | MN908947.3 23500 23522 nCoV-2019_77_RIGHT 1 - 175 | MN908947.3 23443 23466 nCoV-2019_78_LEFT 2 + 176 | MN908947.3 23822 23847 nCoV-2019_78_RIGHT 2 - 177 | MN908947.3 23789 23812 nCoV-2019_79_LEFT 1 + 178 | MN908947.3 24145 24169 nCoV-2019_79_RIGHT 1 - 179 | MN908947.3 24078 24100 nCoV-2019_80_LEFT 2 + 180 | MN908947.3 24443 24467 nCoV-2019_80_RIGHT 2 - 181 | MN908947.3 24391 24416 nCoV-2019_81_LEFT 1 + 182 | MN908947.3 24765 24789 nCoV-2019_81_RIGHT 1 - 183 | MN908947.3 24696 24721 nCoV-2019_82_LEFT 2 + 184 | MN908947.3 25052 25076 nCoV-2019_82_RIGHT 2 - 185 | MN908947.3 24978 25003 nCoV-2019_83_LEFT 1 + 186 | MN908947.3 25347 25369 nCoV-2019_83_RIGHT 1 - 187 | MN908947.3 25279 25301 nCoV-2019_84_LEFT 2 + 188 | MN908947.3 25646 25673 nCoV-2019_84_RIGHT 2 - 189 | MN908947.3 25601 25623 nCoV-2019_85_LEFT 1 + 190 | MN908947.3 25969 25994 nCoV-2019_85_RIGHT 1 - 191 | MN908947.3 25902 25924 nCoV-2019_86_LEFT 2 + 192 | MN908947.3 26290 26315 nCoV-2019_86_RIGHT 2 - 193 | MN908947.3 26197 26219 nCoV-2019_87_LEFT 1 + 194 | MN908947.3 26566 26590 nCoV-2019_87_RIGHT 1 - 195 | MN908947.3 26520 26542 nCoV-2019_88_LEFT 2 + 196 | MN908947.3 26890 26913 nCoV-2019_88_RIGHT 2 - 197 | MN908947.3 26835 26857 nCoV-2019_89_LEFT 1 + 198 | MN908947.3 26838 26860 nCoV-2019_89_LEFT_alt2 1 + 199 | MN908947.3 27202 27227 nCoV-2019_89_RIGHT 1 - 200 | MN908947.3 27190 27215 nCoV-2019_89_RIGHT_alt4 1 - 201 | MN908947.3 27141 27164 nCoV-2019_90_LEFT 2 + 202 | MN908947.3 27511 27533 nCoV-2019_90_RIGHT 2 - 203 | MN908947.3 27446 27471 nCoV-2019_91_LEFT 1 + 204 | MN908947.3 27825 27854 nCoV-2019_91_RIGHT 1 - 205 | MN908947.3 27784 27808 nCoV-2019_92_LEFT 2 + 206 | MN908947.3 28145 28172 nCoV-2019_92_RIGHT 2 - 207 | MN908947.3 28081 28104 nCoV-2019_93_LEFT 1 + 208 | MN908947.3 28442 28464 nCoV-2019_93_RIGHT 1 - 209 | MN908947.3 28394 28416 nCoV-2019_94_LEFT 2 + 210 | MN908947.3 28756 28779 nCoV-2019_94_RIGHT 2 - 211 | MN908947.3 28677 28699 nCoV-2019_95_LEFT 1 + 212 | MN908947.3 29041 29063 nCoV-2019_95_RIGHT 1 - 213 | MN908947.3 28985 29007 nCoV-2019_96_LEFT 2 + 214 | MN908947.3 29356 29378 nCoV-2019_96_RIGHT 2 - 215 | MN908947.3 29288 29316 nCoV-2019_97_LEFT 1 + 216 | MN908947.3 29665 29693 nCoV-2019_97_RIGHT 1 - 217 | MN908947.3 29486 29510 nCoV-2019_98_LEFT 2 + 218 | MN908947.3 29836 29866 nCoV-2019_98_RIGHT 2 - 219 | -------------------------------------------------------------------------------- /reference/primer_schemes/nCoV-2019/V4.1/nCoV-2019.insert.bed: -------------------------------------------------------------------------------- 1 | MN908947.3 50 408 SARS-CoV-2_INSERT_1 1 + 2 | MN908947.3 344 705 SARS-CoV-2_INSERT_2 2 + 3 | MN908947.3 666 1017 SARS-CoV-2_INSERT_3 1 + 4 | MN908947.3 966 1337 SARS-CoV-2_INSERT_4 2 + 5 | MN908947.3 1266 1623 SARS-CoV-2_INSERT_5 1 + 6 | MN908947.3 1562 1925 SARS-CoV-2_INSERT_6 2 + 7 | MN908947.3 1875 2228 SARS-CoV-2_INSERT_7 1 + 8 | MN908947.3 2180 2544 SARS-CoV-2_INSERT_8 2 + 9 | MN908947.3 2508 2861 SARS-CoV-2_INSERT_9 1 + 10 | MN908947.3 2850 3156 SARS-CoV-2_INSERT_10 2 + 11 | MN908947.3 3102 3470 SARS-CoV-2_INSERT_11 1 + 12 | MN908947.3 3412 3769 SARS-CoV-2_INSERT_12 2 + 13 | MN908947.3 3705 4067 SARS-CoV-2_INSERT_13 1 + 14 | MN908947.3 4018 4387 SARS-CoV-2_INSERT_14 2 + 15 | MN908947.3 4339 4685 SARS-CoV-2_INSERT_15 1 + 16 | MN908947.3 4648 4995 SARS-CoV-2_INSERT_16 2 + 17 | MN908947.3 4953 5302 SARS-CoV-2_INSERT_17 1 + 18 | MN908947.3 5259 5620 SARS-CoV-2_INSERT_18 2 + 19 | MN908947.3 5584 5932 SARS-CoV-2_INSERT_19 1 + 20 | MN908947.3 5894 6247 SARS-CoV-2_INSERT_20 2 + 21 | MN908947.3 6210 6553 SARS-CoV-2_INSERT_21 1 + 22 | MN908947.3 6507 6859 SARS-CoV-2_INSERT_22 2 + 23 | MN908947.3 6776 7122 SARS-CoV-2_INSERT_23 1 + 24 | MN908947.3 7084 7440 SARS-CoV-2_INSERT_24 2 + 25 | MN908947.3 7403 7747 SARS-CoV-2_INSERT_25 1 + 26 | MN908947.3 7695 8063 SARS-CoV-2_INSERT_26 2 + 27 | MN908947.3 8019 8367 SARS-CoV-2_INSERT_27 1 + 28 | MN908947.3 8326 8691 SARS-CoV-2_INSERT_28 2 + 29 | MN908947.3 8619 8990 SARS-CoV-2_INSERT_29 1 + 30 | MN908947.3 8944 9306 SARS-CoV-2_INSERT_30 2 + 31 | MN908947.3 9192 9535 SARS-CoV-2_INSERT_31 1 + 32 | MN908947.3 9497 9842 SARS-CoV-2_INSERT_32 2 + 33 | MN908947.3 9805 10150 SARS-CoV-2_INSERT_33 1 + 34 | MN908947.3 10099 10465 SARS-CoV-2_INSERT_34 2 + 35 | MN908947.3 10419 10785 SARS-CoV-2_INSERT_35 1 + 36 | MN908947.3 10742 11092 SARS-CoV-2_INSERT_36 2 + 37 | MN908947.3 11023 11388 SARS-CoV-2_INSERT_37 1 + 38 | MN908947.3 11330 11689 SARS-CoV-2_INSERT_38 2 + 39 | MN908947.3 11651 12011 SARS-CoV-2_INSERT_39 1 + 40 | MN908947.3 11963 12317 SARS-CoV-2_INSERT_40 2 + 41 | MN908947.3 12255 12618 SARS-CoV-2_INSERT_41 1 + 42 | MN908947.3 12546 12895 SARS-CoV-2_INSERT_42 2 + 43 | MN908947.3 12856 13218 SARS-CoV-2_INSERT_43 1 + 44 | MN908947.3 13148 13506 SARS-CoV-2_INSERT_44 2 + 45 | MN908947.3 13485 13833 SARS-CoV-2_INSERT_45 1 + 46 | MN908947.3 13775 14120 SARS-CoV-2_INSERT_46 2 + 47 | MN908947.3 14075 14428 SARS-CoV-2_INSERT_47 1 + 48 | MN908947.3 14362 14717 SARS-CoV-2_INSERT_48 2 + 49 | MN908947.3 14674 15023 SARS-CoV-2_INSERT_49 1 + 50 | MN908947.3 14983 15336 SARS-CoV-2_INSERT_50 2 + 51 | MN908947.3 15237 15596 SARS-CoV-2_INSERT_51 1 + 52 | MN908947.3 15557 15917 SARS-CoV-2_INSERT_52 2 + 53 | MN908947.3 15881 16239 SARS-CoV-2_INSERT_53 1 + 54 | MN908947.3 16137 16483 SARS-CoV-2_INSERT_54 2 + 55 | MN908947.3 16408 16767 SARS-CoV-2_INSERT_55 1 + 56 | MN908947.3 16714 17082 SARS-CoV-2_INSERT_56 2 + 57 | MN908947.3 17013 17381 SARS-CoV-2_INSERT_57 1 + 58 | MN908947.3 17345 17688 SARS-CoV-2_INSERT_58 2 + 59 | MN908947.3 17642 17997 SARS-CoV-2_INSERT_59 1 + 60 | MN908947.3 17939 18307 SARS-CoV-2_INSERT_60 2 + 61 | MN908947.3 18267 18624 SARS-CoV-2_INSERT_61 1 + 62 | MN908947.3 18578 18936 SARS-CoV-2_INSERT_62 2 + 63 | MN908947.3 18891 19252 SARS-CoV-2_INSERT_63 1 + 64 | MN908947.3 19208 19558 SARS-CoV-2_INSERT_64 2 + 65 | MN908947.3 19513 19877 SARS-CoV-2_INSERT_65 1 + 66 | MN908947.3 19836 20186 SARS-CoV-2_INSERT_66 2 + 67 | MN908947.3 20117 20472 SARS-CoV-2_INSERT_67 1 + 68 | MN908947.3 20405 20766 SARS-CoV-2_INSERT_68 2 + 69 | MN908947.3 20699 21050 SARS-CoV-2_INSERT_69 1 + 70 | MN908947.3 21013 21358 SARS-CoV-2_INSERT_70 2 + 71 | MN908947.3 21316 21675 SARS-CoV-2_INSERT_71 1 + 72 | MN908947.3 21561 21904 SARS-CoV-2_INSERT_72 2 + 73 | MN908947.3 21889 22247 SARS-CoV-2_INSERT_73 1 + 74 | MN908947.3 22113 22474 SARS-CoV-2_INSERT_74 2 + 75 | MN908947.3 22428 22785 SARS-CoV-2_INSERT_75 1 + 76 | MN908947.3 22774 23028 SARS-CoV-2_INSERT_76 2 + 77 | MN908947.3 22974 23327 SARS-CoV-2_INSERT_77 1 + 78 | MN908947.3 23246 23611 SARS-CoV-2_INSERT_78 2 + 79 | MN908947.3 23575 23914 SARS-CoV-2_INSERT_79 1 + 80 | MN908947.3 23876 24233 SARS-CoV-2_INSERT_80 2 + 81 | MN908947.3 24194 24545 SARS-CoV-2_INSERT_81 1 + 82 | MN908947.3 24448 24814 SARS-CoV-2_INSERT_82 2 + 83 | MN908947.3 24772 25122 SARS-CoV-2_INSERT_83 1 + 84 | MN908947.3 25076 25438 SARS-CoV-2_INSERT_84 2 + 85 | MN908947.3 25353 25711 SARS-CoV-2_INSERT_85 1 + 86 | MN908947.3 25672 26026 SARS-CoV-2_INSERT_86 2 + 87 | MN908947.3 25979 26338 SARS-CoV-2_INSERT_87 1 + 88 | MN908947.3 26277 26635 SARS-CoV-2_INSERT_88 2 + 89 | MN908947.3 26621 26956 SARS-CoV-2_INSERT_89 1 + 90 | MN908947.3 26895 27218 SARS-CoV-2_INSERT_90 2 + 91 | MN908947.3 27177 27534 SARS-CoV-2_INSERT_91 1 + 92 | MN908947.3 27473 27826 SARS-CoV-2_INSERT_92 2 + 93 | MN908947.3 27726 28082 SARS-CoV-2_INSERT_93 1 + 94 | MN908947.3 28021 28394 SARS-CoV-2_INSERT_94 2 + 95 | MN908947.3 28214 28572 SARS-CoV-2_INSERT_95 1 + 96 | MN908947.3 28536 28893 SARS-CoV-2_INSERT_96 2 + 97 | MN908947.3 28849 29206 SARS-CoV-2_INSERT_97 1 + 98 | MN908947.3 29161 29512 SARS-CoV-2_INSERT_98 2 + 99 | MN908947.3 29475 29827 SARS-CoV-2_INSERT_99 1 + 100 | -------------------------------------------------------------------------------- /reference/primer_schemes/nCoV-2019/V4.1/nCoV-2019.scheme.bed: -------------------------------------------------------------------------------- 1 | MN908947.3 25 50 SARS-CoV-2_1_LEFT 1 + 2 | MN908947.3 408 431 SARS-CoV-2_1_RIGHT 1 - 3 | MN908947.3 324 344 SARS-CoV-2_2_LEFT 2 + 4 | MN908947.3 705 727 SARS-CoV-2_2_RIGHT 2 - 5 | MN908947.3 644 666 SARS-CoV-2_3_LEFT 1 + 6 | MN908947.3 1017 1044 SARS-CoV-2_3_RIGHT 1 - 7 | MN908947.3 944 966 SARS-CoV-2_4_LEFT 2 + 8 | MN908947.3 1337 1362 SARS-CoV-2_4_RIGHT 2 - 9 | MN908947.3 1245 1266 SARS-CoV-2_5_LEFT 1 + 10 | MN908947.3 1623 1650 SARS-CoV-2_5_RIGHT 1 - 11 | MN908947.3 1540 1562 SARS-CoV-2_6_LEFT 2 + 12 | MN908947.3 1925 1948 SARS-CoV-2_6_RIGHT 2 - 13 | MN908947.3 1851 1875 SARS-CoV-2_7_LEFT 1 + 14 | MN908947.3 2228 2250 SARS-CoV-2_7_RIGHT 1 - 15 | MN908947.3 2154 2180 SARS-CoV-2_8_LEFT 2 + 16 | MN908947.3 2544 2571 SARS-CoV-2_8_RIGHT 2 - 17 | MN908947.3 2483 2508 SARS-CoV-2_9_LEFT 1 + 18 | MN908947.3 2861 2885 SARS-CoV-2_9_RIGHT 1 - 19 | MN908947.3 2826 2850 SARS-CoV-2_10_LEFT 2 + 20 | MN908947.3 3183 3210 SARS-CoV-2_10_RIGHT 2 - 21 | MN908947.3 3078 3102 SARS-CoV-2_11_LEFT 1 + 22 | MN908947.3 3470 3492 SARS-CoV-2_11_RIGHT 1 - 23 | MN908947.3 3390 3412 SARS-CoV-2_12_LEFT 2 + 24 | MN908947.3 3769 3794 SARS-CoV-2_12_RIGHT 2 - 25 | MN908947.3 3683 3705 SARS-CoV-2_13_LEFT 1 + 26 | MN908947.3 4067 4093 SARS-CoV-2_13_RIGHT 1 - 27 | MN908947.3 3992 4018 SARS-CoV-2_14_LEFT 2 + 28 | MN908947.3 4387 4409 SARS-CoV-2_14_RIGHT 2 - 29 | MN908947.3 4312 4339 SARS-CoV-2_15_LEFT 1 + 30 | MN908947.3 4685 4710 SARS-CoV-2_15_RIGHT 1 - 31 | MN908947.3 4620 4648 SARS-CoV-2_16_LEFT 2 + 32 | MN908947.3 4995 5017 SARS-CoV-2_16_RIGHT 2 - 33 | MN908947.3 4923 4953 SARS-CoV-2_17_LEFT 1 + 34 | MN908947.3 5302 5331 SARS-CoV-2_17_RIGHT 1 - 35 | MN908947.3 5230 5259 SARS-CoV-2_18_LEFT 2 + 36 | MN908947.3 5620 5643 SARS-CoV-2_18_RIGHT 2 - 37 | MN908947.3 5561 5584 SARS-CoV-2_19_LEFT 1 + 38 | MN908947.3 5932 5957 SARS-CoV-2_19_RIGHT 1 - 39 | MN908947.3 5867 5894 SARS-CoV-2_20_LEFT 2 + 40 | MN908947.3 6247 6272 SARS-CoV-2_20_RIGHT 2 - 41 | MN908947.3 6184 6210 SARS-CoV-2_21_LEFT 1 + 42 | MN908947.3 6553 6582 SARS-CoV-2_21_RIGHT 1 - 43 | MN908947.3 6478 6507 SARS-CoV-2_22_LEFT 2 + 44 | MN908947.3 6859 6885 SARS-CoV-2_22_RIGHT 2 - 45 | MN908947.3 6747 6776 SARS-CoV-2_23_LEFT 1 + 46 | MN908947.3 7122 7148 SARS-CoV-2_23_RIGHT 1 - 47 | MN908947.3 7057 7084 SARS-CoV-2_24_LEFT 2 + 48 | MN908947.3 7440 7467 SARS-CoV-2_24_RIGHT 2 - 49 | MN908947.3 7381 7403 SARS-CoV-2_25_LEFT 1 + 50 | MN908947.3 7747 7770 SARS-CoV-2_25_RIGHT 1 - 51 | MN908947.3 7672 7695 SARS-CoV-2_26_LEFT 2 + 52 | MN908947.3 8063 8092 SARS-CoV-2_26_RIGHT 2 - 53 | MN908947.3 7997 8019 SARS-CoV-2_27_LEFT 1 + 54 | MN908947.3 8370 8395 SARS-CoV-2_27_RIGHT 1 - 55 | MN908947.3 8304 8326 SARS-CoV-2_28_LEFT 2 + 56 | MN908947.3 8691 8714 SARS-CoV-2_28_RIGHT 2 - 57 | MN908947.3 8596 8619 SARS-CoV-2_29_LEFT 1 + 58 | MN908947.3 8990 9013 SARS-CoV-2_29_RIGHT 1 - 59 | MN908947.3 8919 8944 SARS-CoV-2_30_LEFT 2 + 60 | MN908947.3 9306 9329 SARS-CoV-2_30_RIGHT 2 - 61 | MN908947.3 9168 9192 SARS-CoV-2_31_LEFT 1 + 62 | MN908947.3 9535 9564 SARS-CoV-2_31_RIGHT 1 - 63 | MN908947.3 9470 9497 SARS-CoV-2_32_LEFT 2 + 64 | MN908947.3 9842 9866 SARS-CoV-2_32_RIGHT 2 - 65 | MN908947.3 9782 9805 SARS-CoV-2_33_LEFT 1 + 66 | MN908947.3 10150 10176 SARS-CoV-2_33_RIGHT 1 - 67 | MN908947.3 10076 10099 SARS-CoV-2_34_LEFT 2 + 68 | MN908947.3 10465 10491 SARS-CoV-2_34_RIGHT 2 - 69 | MN908947.3 10393 10419 SARS-CoV-2_35_LEFT 1 + 70 | MN908947.3 10785 10810 SARS-CoV-2_35_RIGHT 1 - 71 | MN908947.3 10713 10742 SARS-CoV-2_36_LEFT 2 + 72 | MN908947.3 11092 11116 SARS-CoV-2_36_RIGHT 2 - 73 | MN908947.3 11000 11023 SARS-CoV-2_37_LEFT 1 + 74 | MN908947.3 11388 11414 SARS-CoV-2_37_RIGHT 1 - 75 | MN908947.3 11305 11330 SARS-CoV-2_38_LEFT 2 + 76 | MN908947.3 11689 11720 SARS-CoV-2_38_RIGHT 2 - 77 | MN908947.3 11624 11651 SARS-CoV-2_39_LEFT 1 + 78 | MN908947.3 12011 12033 SARS-CoV-2_39_RIGHT 1 - 79 | MN908947.3 11937 11963 SARS-CoV-2_40_LEFT 2 + 80 | MN908947.3 12317 12339 SARS-CoV-2_40_RIGHT 2 - 81 | MN908947.3 12234 12255 SARS-CoV-2_41_LEFT 1 + 82 | MN908947.3 12618 12643 SARS-CoV-2_41_RIGHT 1 - 83 | MN908947.3 12519 12546 SARS-CoV-2_42_LEFT 2 + 84 | MN908947.3 12895 12920 SARS-CoV-2_42_RIGHT 2 - 85 | MN908947.3 12831 12856 SARS-CoV-2_43_LEFT 1 + 86 | MN908947.3 13218 13240 SARS-CoV-2_43_RIGHT 1 - 87 | MN908947.3 13124 13148 SARS-CoV-2_44_LEFT 2 + 88 | MN908947.3 13506 13528 SARS-CoV-2_44_RIGHT 2 - 89 | MN908947.3 13463 13485 SARS-CoV-2_45_LEFT 1 + 90 | MN908947.3 13833 13859 SARS-CoV-2_45_RIGHT 1 - 91 | MN908947.3 13752 13775 SARS-CoV-2_46_LEFT 2 + 92 | MN908947.3 14120 14144 SARS-CoV-2_46_RIGHT 2 - 93 | MN908947.3 14045 14075 SARS-CoV-2_47_LEFT 1 + 94 | MN908947.3 14428 14457 SARS-CoV-2_47_RIGHT 1 - 95 | MN908947.3 14338 14362 SARS-CoV-2_48_LEFT 2 + 96 | MN908947.3 14717 14743 SARS-CoV-2_48_RIGHT 2 - 97 | MN908947.3 14647 14674 SARS-CoV-2_49_LEFT 1 + 98 | MN908947.3 15023 15050 SARS-CoV-2_49_RIGHT 1 - 99 | MN908947.3 14953 14983 SARS-CoV-2_50_LEFT 2 + 100 | MN908947.3 15336 15358 SARS-CoV-2_50_RIGHT 2 - 101 | MN908947.3 15214 15237 SARS-CoV-2_51_LEFT 1 + 102 | MN908947.3 15596 15619 SARS-CoV-2_51_RIGHT 1 - 103 | MN908947.3 15535 15557 SARS-CoV-2_52_LEFT 2 + 104 | MN908947.3 15917 15941 SARS-CoV-2_52_RIGHT 2 - 105 | MN908947.3 15855 15881 SARS-CoV-2_53_LEFT 1 + 106 | MN908947.3 16239 16260 SARS-CoV-2_53_RIGHT 1 - 107 | MN908947.3 16112 16137 SARS-CoV-2_54_LEFT 2 + 108 | MN908947.3 16483 16508 SARS-CoV-2_54_RIGHT 2 - 109 | MN908947.3 16386 16408 SARS-CoV-2_55_LEFT 1 + 110 | MN908947.3 16767 16796 SARS-CoV-2_55_RIGHT 1 - 111 | MN908947.3 16692 16714 SARS-CoV-2_56_LEFT 2 + 112 | MN908947.3 17082 17105 SARS-CoV-2_56_RIGHT 2 - 113 | MN908947.3 16986 17013 SARS-CoV-2_57_LEFT 1 + 114 | MN908947.3 17381 17405 SARS-CoV-2_57_RIGHT 1 - 115 | MN908947.3 17323 17345 SARS-CoV-2_58_LEFT 2 + 116 | MN908947.3 17688 17711 SARS-CoV-2_58_RIGHT 2 - 117 | MN908947.3 17615 17642 SARS-CoV-2_59_LEFT 1 + 118 | MN908947.3 17997 18022 SARS-CoV-2_59_RIGHT 1 - 119 | MN908947.3 17911 17939 SARS-CoV-2_60_LEFT 2 + 120 | MN908947.3 18307 18328 SARS-CoV-2_60_RIGHT 2 - 121 | MN908947.3 18244 18267 SARS-CoV-2_61_LEFT 1 + 122 | MN908947.3 18624 18652 SARS-CoV-2_61_RIGHT 1 - 123 | MN908947.3 18550 18578 SARS-CoV-2_62_LEFT 2 + 124 | MN908947.3 18936 18961 SARS-CoV-2_62_RIGHT 2 - 125 | MN908947.3 18869 18891 SARS-CoV-2_63_LEFT 1 + 126 | MN908947.3 19252 19277 SARS-CoV-2_63_RIGHT 1 - 127 | MN908947.3 19183 19208 SARS-CoV-2_64_LEFT 2 + 128 | MN908947.3 19558 19586 SARS-CoV-2_64_RIGHT 2 - 129 | MN908947.3 19485 19513 SARS-CoV-2_65_LEFT 1 + 130 | MN908947.3 19877 19901 SARS-CoV-2_65_RIGHT 1 - 131 | MN908947.3 19810 19836 SARS-CoV-2_66_LEFT 2 + 132 | MN908947.3 20186 20216 SARS-CoV-2_66_RIGHT 2 - 133 | MN908947.3 20090 20117 SARS-CoV-2_67_LEFT 1 + 134 | MN908947.3 20472 20497 SARS-CoV-2_67_RIGHT 1 - 135 | MN908947.3 20377 20405 SARS-CoV-2_68_LEFT 2 + 136 | MN908947.3 20766 20792 SARS-CoV-2_68_RIGHT 2 - 137 | MN908947.3 20677 20699 SARS-CoV-2_69_LEFT 1 + 138 | MN908947.3 21050 21080 SARS-CoV-2_69_RIGHT 1 - 139 | MN908947.3 20988 21013 SARS-CoV-2_70_LEFT 2 + 140 | MN908947.3 21358 21387 SARS-CoV-2_70_RIGHT 2 - 141 | MN908947.3 21294 21316 SARS-CoV-2_71_LEFT 1 + 142 | MN908947.3 21675 21700 SARS-CoV-2_71_RIGHT 1 - 143 | MN908947.3 21532 21561 SARS-CoV-2_72_LEFT 2 + 144 | MN908947.3 21904 21933 SARS-CoV-2_72_RIGHT 2 - 145 | MN908947.3 21865 21889 SARS-CoV-2_73_LEFT 1 + 146 | MN908947.3 22247 22274 SARS-CoV-2_73_RIGHT 1 - 147 | MN908947.3 22091 22113 SARS-CoV-2_74_LEFT 2 + 148 | MN908947.3 22474 22503 SARS-CoV-2_74_RIGHT 2 - 149 | MN908947.3 22402 22428 SARS-CoV-2_75_LEFT 1 + 150 | MN908947.3 22785 22805 SARS-CoV-2_75_RIGHT 1 - 151 | MN908947.3 22648 22677 SARS-CoV-2_76_LEFT 2 + 152 | MN908947.3 23028 23057 SARS-CoV-2_76_RIGHT 2 - 153 | MN908947.3 22944 22974 SARS-CoV-2_77_LEFT 1 + 154 | MN908947.3 23327 23351 SARS-CoV-2_77_RIGHT 1 - 155 | MN908947.3 23219 23246 SARS-CoV-2_78_LEFT 2 + 156 | MN908947.3 23611 23635 SARS-CoV-2_78_RIGHT 2 - 157 | MN908947.3 23553 23575 SARS-CoV-2_79_LEFT 1 + 158 | MN908947.3 23927 23955 SARS-CoV-2_79_RIGHT 1 - 159 | MN908947.3 23853 23876 SARS-CoV-2_80_LEFT 2 + 160 | MN908947.3 24233 24258 SARS-CoV-2_80_RIGHT 2 - 161 | MN908947.3 24171 24194 SARS-CoV-2_81_LEFT 1 + 162 | MN908947.3 24545 24567 SARS-CoV-2_81_RIGHT 1 - 163 | MN908947.3 24426 24448 SARS-CoV-2_82_LEFT 2 + 164 | MN908947.3 24814 24836 SARS-CoV-2_82_RIGHT 2 - 165 | MN908947.3 24750 24772 SARS-CoV-2_83_LEFT 1 + 166 | MN908947.3 25122 25150 SARS-CoV-2_83_RIGHT 1 - 167 | MN908947.3 25051 25076 SARS-CoV-2_84_LEFT 2 + 168 | MN908947.3 25438 25461 SARS-CoV-2_84_RIGHT 2 - 169 | MN908947.3 25331 25353 SARS-CoV-2_85_LEFT 1 + 170 | MN908947.3 25711 25740 SARS-CoV-2_85_RIGHT 1 - 171 | MN908947.3 25645 25672 SARS-CoV-2_86_LEFT 2 + 172 | MN908947.3 26026 26050 SARS-CoV-2_86_RIGHT 2 - 173 | MN908947.3 25951 25979 SARS-CoV-2_87_LEFT 1 + 174 | MN908947.3 26338 26360 SARS-CoV-2_87_RIGHT 1 - 175 | MN908947.3 26255 26277 SARS-CoV-2_88_LEFT 2 + 176 | MN908947.3 26635 26661 SARS-CoV-2_88_RIGHT 2 - 177 | MN908947.3 26564 26587 SARS-CoV-2_89_LEFT 1 + 178 | MN908947.3 26956 26979 SARS-CoV-2_89_RIGHT 1 - 179 | MN908947.3 26873 26895 SARS-CoV-2_90_LEFT 2 + 180 | MN908947.3 27256 27283 SARS-CoV-2_90_RIGHT 2 - 181 | MN908947.3 27152 27177 SARS-CoV-2_91_LEFT 1 + 182 | MN908947.3 27534 27560 SARS-CoV-2_91_RIGHT 1 - 183 | MN908947.3 27447 27473 SARS-CoV-2_92_LEFT 2 + 184 | MN908947.3 27826 27855 SARS-CoV-2_92_RIGHT 2 - 185 | MN908947.3 27700 27726 SARS-CoV-2_93_LEFT 1 + 186 | MN908947.3 28082 28104 SARS-CoV-2_93_RIGHT 1 - 187 | MN908947.3 27996 28021 SARS-CoV-2_94_LEFT 2 + 188 | MN908947.3 28394 28416 SARS-CoV-2_94_RIGHT 2 - 189 | MN908947.3 28190 28214 SARS-CoV-2_95_LEFT 1 + 190 | MN908947.3 28572 28598 SARS-CoV-2_95_RIGHT 1 - 191 | MN908947.3 28512 28536 SARS-CoV-2_96_LEFT 2 + 192 | MN908947.3 28893 28914 SARS-CoV-2_96_RIGHT 2 - 193 | MN908947.3 28827 28849 SARS-CoV-2_97_LEFT 1 + 194 | MN908947.3 29206 29227 SARS-CoV-2_97_RIGHT 1 - 195 | MN908947.3 29136 29161 SARS-CoV-2_98_LEFT 2 + 196 | MN908947.3 29512 29534 SARS-CoV-2_98_RIGHT 2 - 197 | MN908947.3 29452 29475 SARS-CoV-2_99_LEFT 1 + 198 | MN908947.3 29827 29854 SARS-CoV-2_99_RIGHT 1 - 199 | MN908947.3 2780 2813 SARS-CoV-2_10_LEFT_alt1 2 + 200 | MN908947.3 3156 3177 SARS-CoV-2_10_RIGHT_alt1 2 - 201 | MN908947.3 7127 7156 SARS-CoV-2_23_RIGHT_alt1 1 - 202 | MN908947.3 8367 8392 SARS-CoV-2_27_RIGHT_alt1 1 - 203 | MN908947.3 22742 22774 SARS-CoV-2_76_LEFT_alt1 2 + 204 | MN908947.3 23120 23141 SARS-CoV-2_76_RIGHT_alt1 2 - 205 | MN908947.3 23914 23944 SARS-CoV-2_79_RIGHT_alt1 1 - 206 | MN908947.3 26242 26268 SARS-CoV-2_88_LEFT_alt1 2 + 207 | MN908947.3 26592 26621 SARS-CoV-2_89_LEFT_alt1 1 + 208 | MN908947.3 26966 26991 SARS-CoV-2_89_RIGHT_alt1 1 - 209 | MN908947.3 27218 27251 SARS-CoV-2_90_RIGHT_alt1 2 - 210 | -------------------------------------------------------------------------------- /reference/primer_schemes/nCoV-2019/V4/README: -------------------------------------------------------------------------------- 1 | This primer scheme is not based on V3 but a new scheme designed to avoid high frequency variants in Alpha, Beta, Gamma, Delta as well as B.1.429, B.1.525 and B.1.617.1. We have valididated that we do not see S-gene drop outs for Beta and Delta. It was made by generating pseudo genomes using FASTQ files from representative samples and processing using (https://github.com/jts/ncov2019-artic-nf) with tip variants removed. These consensus genomes were concatendated to use as the input file for primalscheme v1.3.1 which includes checks for 3' stable heterodimers (Itokawa et al. 2020). 2 | 3 | A guide to pooling volumes to get even coverage is; 4 | 17, 27, 30, 61, 74 (5x volume) 5 | 13, 45, 79 (2x volume) 6 | Everything else (1x volume) 7 | -------------------------------------------------------------------------------- /reference/primer_schemes/nCoV-2019/V4/nCoV-2019.insert.bed: -------------------------------------------------------------------------------- 1 | MN908947.3 50 408 SARS-CoV-2_INSERT_1 1 + 2 | MN908947.3 344 705 SARS-CoV-2_INSERT_2 2 + 3 | MN908947.3 666 1017 SARS-CoV-2_INSERT_3 1 + 4 | MN908947.3 966 1337 SARS-CoV-2_INSERT_4 2 + 5 | MN908947.3 1266 1623 SARS-CoV-2_INSERT_5 1 + 6 | MN908947.3 1562 1925 SARS-CoV-2_INSERT_6 2 + 7 | MN908947.3 1875 2228 SARS-CoV-2_INSERT_7 1 + 8 | MN908947.3 2180 2544 SARS-CoV-2_INSERT_8 2 + 9 | MN908947.3 2508 2861 SARS-CoV-2_INSERT_9 1 + 10 | MN908947.3 2850 3183 SARS-CoV-2_INSERT_10 2 + 11 | MN908947.3 3102 3470 SARS-CoV-2_INSERT_11 1 + 12 | MN908947.3 3412 3769 SARS-CoV-2_INSERT_12 2 + 13 | MN908947.3 3705 4067 SARS-CoV-2_INSERT_13 1 + 14 | MN908947.3 4018 4387 SARS-CoV-2_INSERT_14 2 + 15 | MN908947.3 4339 4685 SARS-CoV-2_INSERT_15 1 + 16 | MN908947.3 4648 4995 SARS-CoV-2_INSERT_16 2 + 17 | MN908947.3 4953 5302 SARS-CoV-2_INSERT_17 1 + 18 | MN908947.3 5259 5620 SARS-CoV-2_INSERT_18 2 + 19 | MN908947.3 5584 5932 SARS-CoV-2_INSERT_19 1 + 20 | MN908947.3 5894 6247 SARS-CoV-2_INSERT_20 2 + 21 | MN908947.3 6210 6553 SARS-CoV-2_INSERT_21 1 + 22 | MN908947.3 6507 6859 SARS-CoV-2_INSERT_22 2 + 23 | MN908947.3 6776 7122 SARS-CoV-2_INSERT_23 1 + 24 | MN908947.3 7084 7440 SARS-CoV-2_INSERT_24 2 + 25 | MN908947.3 7403 7747 SARS-CoV-2_INSERT_25 1 + 26 | MN908947.3 7695 8063 SARS-CoV-2_INSERT_26 2 + 27 | MN908947.3 8019 8370 SARS-CoV-2_INSERT_27 1 + 28 | MN908947.3 8326 8691 SARS-CoV-2_INSERT_28 2 + 29 | MN908947.3 8619 8990 SARS-CoV-2_INSERT_29 1 + 30 | MN908947.3 8944 9306 SARS-CoV-2_INSERT_30 2 + 31 | MN908947.3 9192 9535 SARS-CoV-2_INSERT_31 1 + 32 | MN908947.3 9497 9842 SARS-CoV-2_INSERT_32 2 + 33 | MN908947.3 9805 10150 SARS-CoV-2_INSERT_33 1 + 34 | MN908947.3 10099 10465 SARS-CoV-2_INSERT_34 2 + 35 | MN908947.3 10419 10785 SARS-CoV-2_INSERT_35 1 + 36 | MN908947.3 10742 11092 SARS-CoV-2_INSERT_36 2 + 37 | MN908947.3 11023 11388 SARS-CoV-2_INSERT_37 1 + 38 | MN908947.3 11330 11689 SARS-CoV-2_INSERT_38 2 + 39 | MN908947.3 11651 12011 SARS-CoV-2_INSERT_39 1 + 40 | MN908947.3 11963 12317 SARS-CoV-2_INSERT_40 2 + 41 | MN908947.3 12255 12618 SARS-CoV-2_INSERT_41 1 + 42 | MN908947.3 12546 12895 SARS-CoV-2_INSERT_42 2 + 43 | MN908947.3 12856 13218 SARS-CoV-2_INSERT_43 1 + 44 | MN908947.3 13148 13506 SARS-CoV-2_INSERT_44 2 + 45 | MN908947.3 13485 13833 SARS-CoV-2_INSERT_45 1 + 46 | MN908947.3 13775 14120 SARS-CoV-2_INSERT_46 2 + 47 | MN908947.3 14075 14428 SARS-CoV-2_INSERT_47 1 + 48 | MN908947.3 14362 14717 SARS-CoV-2_INSERT_48 2 + 49 | MN908947.3 14674 15023 SARS-CoV-2_INSERT_49 1 + 50 | MN908947.3 14983 15336 SARS-CoV-2_INSERT_50 2 + 51 | MN908947.3 15237 15596 SARS-CoV-2_INSERT_51 1 + 52 | MN908947.3 15557 15917 SARS-CoV-2_INSERT_52 2 + 53 | MN908947.3 15881 16239 SARS-CoV-2_INSERT_53 1 + 54 | MN908947.3 16137 16483 SARS-CoV-2_INSERT_54 2 + 55 | MN908947.3 16408 16767 SARS-CoV-2_INSERT_55 1 + 56 | MN908947.3 16714 17082 SARS-CoV-2_INSERT_56 2 + 57 | MN908947.3 17013 17381 SARS-CoV-2_INSERT_57 1 + 58 | MN908947.3 17345 17688 SARS-CoV-2_INSERT_58 2 + 59 | MN908947.3 17642 17997 SARS-CoV-2_INSERT_59 1 + 60 | MN908947.3 17939 18307 SARS-CoV-2_INSERT_60 2 + 61 | MN908947.3 18267 18624 SARS-CoV-2_INSERT_61 1 + 62 | MN908947.3 18578 18936 SARS-CoV-2_INSERT_62 2 + 63 | MN908947.3 18891 19252 SARS-CoV-2_INSERT_63 1 + 64 | MN908947.3 19208 19558 SARS-CoV-2_INSERT_64 2 + 65 | MN908947.3 19513 19877 SARS-CoV-2_INSERT_65 1 + 66 | MN908947.3 19836 20186 SARS-CoV-2_INSERT_66 2 + 67 | MN908947.3 20117 20472 SARS-CoV-2_INSERT_67 1 + 68 | MN908947.3 20405 20766 SARS-CoV-2_INSERT_68 2 + 69 | MN908947.3 20699 21050 SARS-CoV-2_INSERT_69 1 + 70 | MN908947.3 21013 21358 SARS-CoV-2_INSERT_70 2 + 71 | MN908947.3 21316 21675 SARS-CoV-2_INSERT_71 1 + 72 | MN908947.3 21561 21904 SARS-CoV-2_INSERT_72 2 + 73 | MN908947.3 21889 22247 SARS-CoV-2_INSERT_73 1 + 74 | MN908947.3 22113 22474 SARS-CoV-2_INSERT_74 2 + 75 | MN908947.3 22428 22785 SARS-CoV-2_INSERT_75 1 + 76 | MN908947.3 22677 23028 SARS-CoV-2_INSERT_76 2 + 77 | MN908947.3 22974 23327 SARS-CoV-2_INSERT_77 1 + 78 | MN908947.3 23246 23611 SARS-CoV-2_INSERT_78 2 + 79 | MN908947.3 23575 23927 SARS-CoV-2_INSERT_79 1 + 80 | MN908947.3 23876 24233 SARS-CoV-2_INSERT_80 2 + 81 | MN908947.3 24194 24545 SARS-CoV-2_INSERT_81 1 + 82 | MN908947.3 24448 24814 SARS-CoV-2_INSERT_82 2 + 83 | MN908947.3 24772 25122 SARS-CoV-2_INSERT_83 1 + 84 | MN908947.3 25076 25438 SARS-CoV-2_INSERT_84 2 + 85 | MN908947.3 25353 25711 SARS-CoV-2_INSERT_85 1 + 86 | MN908947.3 25672 26026 SARS-CoV-2_INSERT_86 2 + 87 | MN908947.3 25979 26338 SARS-CoV-2_INSERT_87 1 + 88 | MN908947.3 26277 26635 SARS-CoV-2_INSERT_88 2 + 89 | MN908947.3 26587 26956 SARS-CoV-2_INSERT_89 1 + 90 | MN908947.3 26895 27256 SARS-CoV-2_INSERT_90 2 + 91 | MN908947.3 27177 27534 SARS-CoV-2_INSERT_91 1 + 92 | MN908947.3 27473 27826 SARS-CoV-2_INSERT_92 2 + 93 | MN908947.3 27726 28082 SARS-CoV-2_INSERT_93 1 + 94 | MN908947.3 28021 28394 SARS-CoV-2_INSERT_94 2 + 95 | MN908947.3 28214 28572 SARS-CoV-2_INSERT_95 1 + 96 | MN908947.3 28536 28893 SARS-CoV-2_INSERT_96 2 + 97 | MN908947.3 28849 29206 SARS-CoV-2_INSERT_97 1 + 98 | MN908947.3 29161 29512 SARS-CoV-2_INSERT_98 2 + 99 | MN908947.3 29475 29827 SARS-CoV-2_INSERT_99 1 + 100 | -------------------------------------------------------------------------------- /reference/primer_schemes/nCoV-2019/V4/nCoV-2019.scheme.bed: -------------------------------------------------------------------------------- 1 | MN908947.3 25 50 SARS-CoV-2_1_LEFT 1 + 2 | MN908947.3 408 431 SARS-CoV-2_1_RIGHT 1 - 3 | MN908947.3 324 344 SARS-CoV-2_2_LEFT 2 + 4 | MN908947.3 705 727 SARS-CoV-2_2_RIGHT 2 - 5 | MN908947.3 644 666 SARS-CoV-2_3_LEFT 1 + 6 | MN908947.3 1017 1044 SARS-CoV-2_3_RIGHT 1 - 7 | MN908947.3 944 966 SARS-CoV-2_4_LEFT 2 + 8 | MN908947.3 1337 1362 SARS-CoV-2_4_RIGHT 2 - 9 | MN908947.3 1245 1266 SARS-CoV-2_5_LEFT 1 + 10 | MN908947.3 1623 1650 SARS-CoV-2_5_RIGHT 1 - 11 | MN908947.3 1540 1562 SARS-CoV-2_6_LEFT 2 + 12 | MN908947.3 1925 1948 SARS-CoV-2_6_RIGHT 2 - 13 | MN908947.3 1851 1875 SARS-CoV-2_7_LEFT 1 + 14 | MN908947.3 2228 2250 SARS-CoV-2_7_RIGHT 1 - 15 | MN908947.3 2154 2180 SARS-CoV-2_8_LEFT 2 + 16 | MN908947.3 2544 2571 SARS-CoV-2_8_RIGHT 2 - 17 | MN908947.3 2483 2508 SARS-CoV-2_9_LEFT 1 + 18 | MN908947.3 2861 2885 SARS-CoV-2_9_RIGHT 1 - 19 | MN908947.3 2826 2850 SARS-CoV-2_10_LEFT 2 + 20 | MN908947.3 3183 3210 SARS-CoV-2_10_RIGHT 2 - 21 | MN908947.3 3078 3102 SARS-CoV-2_11_LEFT 1 + 22 | MN908947.3 3470 3492 SARS-CoV-2_11_RIGHT 1 - 23 | MN908947.3 3390 3412 SARS-CoV-2_12_LEFT 2 + 24 | MN908947.3 3769 3794 SARS-CoV-2_12_RIGHT 2 - 25 | MN908947.3 3683 3705 SARS-CoV-2_13_LEFT 1 + 26 | MN908947.3 4067 4093 SARS-CoV-2_13_RIGHT 1 - 27 | MN908947.3 3992 4018 SARS-CoV-2_14_LEFT 2 + 28 | MN908947.3 4387 4409 SARS-CoV-2_14_RIGHT 2 - 29 | MN908947.3 4312 4339 SARS-CoV-2_15_LEFT 1 + 30 | MN908947.3 4685 4710 SARS-CoV-2_15_RIGHT 1 - 31 | MN908947.3 4620 4648 SARS-CoV-2_16_LEFT 2 + 32 | MN908947.3 4995 5017 SARS-CoV-2_16_RIGHT 2 - 33 | MN908947.3 4923 4953 SARS-CoV-2_17_LEFT 1 + 34 | MN908947.3 5302 5331 SARS-CoV-2_17_RIGHT 1 - 35 | MN908947.3 5230 5259 SARS-CoV-2_18_LEFT 2 + 36 | MN908947.3 5620 5643 SARS-CoV-2_18_RIGHT 2 - 37 | MN908947.3 5561 5584 SARS-CoV-2_19_LEFT 1 + 38 | MN908947.3 5932 5957 SARS-CoV-2_19_RIGHT 1 - 39 | MN908947.3 5867 5894 SARS-CoV-2_20_LEFT 2 + 40 | MN908947.3 6247 6272 SARS-CoV-2_20_RIGHT 2 - 41 | MN908947.3 6184 6210 SARS-CoV-2_21_LEFT 1 + 42 | MN908947.3 6553 6582 SARS-CoV-2_21_RIGHT 1 - 43 | MN908947.3 6478 6507 SARS-CoV-2_22_LEFT 2 + 44 | MN908947.3 6859 6885 SARS-CoV-2_22_RIGHT 2 - 45 | MN908947.3 6747 6776 SARS-CoV-2_23_LEFT 1 + 46 | MN908947.3 7122 7148 SARS-CoV-2_23_RIGHT 1 - 47 | MN908947.3 7057 7084 SARS-CoV-2_24_LEFT 2 + 48 | MN908947.3 7440 7467 SARS-CoV-2_24_RIGHT 2 - 49 | MN908947.3 7381 7403 SARS-CoV-2_25_LEFT 1 + 50 | MN908947.3 7747 7770 SARS-CoV-2_25_RIGHT 1 - 51 | MN908947.3 7672 7695 SARS-CoV-2_26_LEFT 2 + 52 | MN908947.3 8063 8092 SARS-CoV-2_26_RIGHT 2 - 53 | MN908947.3 7997 8019 SARS-CoV-2_27_LEFT 1 + 54 | MN908947.3 8370 8395 SARS-CoV-2_27_RIGHT 1 - 55 | MN908947.3 8304 8326 SARS-CoV-2_28_LEFT 2 + 56 | MN908947.3 8691 8714 SARS-CoV-2_28_RIGHT 2 - 57 | MN908947.3 8596 8619 SARS-CoV-2_29_LEFT 1 + 58 | MN908947.3 8990 9013 SARS-CoV-2_29_RIGHT 1 - 59 | MN908947.3 8919 8944 SARS-CoV-2_30_LEFT 2 + 60 | MN908947.3 9306 9329 SARS-CoV-2_30_RIGHT 2 - 61 | MN908947.3 9168 9192 SARS-CoV-2_31_LEFT 1 + 62 | MN908947.3 9535 9564 SARS-CoV-2_31_RIGHT 1 - 63 | MN908947.3 9470 9497 SARS-CoV-2_32_LEFT 2 + 64 | MN908947.3 9842 9866 SARS-CoV-2_32_RIGHT 2 - 65 | MN908947.3 9782 9805 SARS-CoV-2_33_LEFT 1 + 66 | MN908947.3 10150 10176 SARS-CoV-2_33_RIGHT 1 - 67 | MN908947.3 10076 10099 SARS-CoV-2_34_LEFT 2 + 68 | MN908947.3 10465 10491 SARS-CoV-2_34_RIGHT 2 - 69 | MN908947.3 10393 10419 SARS-CoV-2_35_LEFT 1 + 70 | MN908947.3 10785 10810 SARS-CoV-2_35_RIGHT 1 - 71 | MN908947.3 10713 10742 SARS-CoV-2_36_LEFT 2 + 72 | MN908947.3 11092 11116 SARS-CoV-2_36_RIGHT 2 - 73 | MN908947.3 11000 11023 SARS-CoV-2_37_LEFT 1 + 74 | MN908947.3 11388 11414 SARS-CoV-2_37_RIGHT 1 - 75 | MN908947.3 11305 11330 SARS-CoV-2_38_LEFT 2 + 76 | MN908947.3 11689 11720 SARS-CoV-2_38_RIGHT 2 - 77 | MN908947.3 11624 11651 SARS-CoV-2_39_LEFT 1 + 78 | MN908947.3 12011 12033 SARS-CoV-2_39_RIGHT 1 - 79 | MN908947.3 11937 11963 SARS-CoV-2_40_LEFT 2 + 80 | MN908947.3 12317 12339 SARS-CoV-2_40_RIGHT 2 - 81 | MN908947.3 12234 12255 SARS-CoV-2_41_LEFT 1 + 82 | MN908947.3 12618 12643 SARS-CoV-2_41_RIGHT 1 - 83 | MN908947.3 12519 12546 SARS-CoV-2_42_LEFT 2 + 84 | MN908947.3 12895 12920 SARS-CoV-2_42_RIGHT 2 - 85 | MN908947.3 12831 12856 SARS-CoV-2_43_LEFT 1 + 86 | MN908947.3 13218 13240 SARS-CoV-2_43_RIGHT 1 - 87 | MN908947.3 13124 13148 SARS-CoV-2_44_LEFT 2 + 88 | MN908947.3 13506 13528 SARS-CoV-2_44_RIGHT 2 - 89 | MN908947.3 13463 13485 SARS-CoV-2_45_LEFT 1 + 90 | MN908947.3 13833 13859 SARS-CoV-2_45_RIGHT 1 - 91 | MN908947.3 13752 13775 SARS-CoV-2_46_LEFT 2 + 92 | MN908947.3 14120 14144 SARS-CoV-2_46_RIGHT 2 - 93 | MN908947.3 14045 14075 SARS-CoV-2_47_LEFT 1 + 94 | MN908947.3 14428 14457 SARS-CoV-2_47_RIGHT 1 - 95 | MN908947.3 14338 14362 SARS-CoV-2_48_LEFT 2 + 96 | MN908947.3 14717 14743 SARS-CoV-2_48_RIGHT 2 - 97 | MN908947.3 14647 14674 SARS-CoV-2_49_LEFT 1 + 98 | MN908947.3 15023 15050 SARS-CoV-2_49_RIGHT 1 - 99 | MN908947.3 14953 14983 SARS-CoV-2_50_LEFT 2 + 100 | MN908947.3 15336 15358 SARS-CoV-2_50_RIGHT 2 - 101 | MN908947.3 15214 15237 SARS-CoV-2_51_LEFT 1 + 102 | MN908947.3 15596 15619 SARS-CoV-2_51_RIGHT 1 - 103 | MN908947.3 15535 15557 SARS-CoV-2_52_LEFT 2 + 104 | MN908947.3 15917 15941 SARS-CoV-2_52_RIGHT 2 - 105 | MN908947.3 15855 15881 SARS-CoV-2_53_LEFT 1 + 106 | MN908947.3 16239 16260 SARS-CoV-2_53_RIGHT 1 - 107 | MN908947.3 16112 16137 SARS-CoV-2_54_LEFT 2 + 108 | MN908947.3 16483 16508 SARS-CoV-2_54_RIGHT 2 - 109 | MN908947.3 16386 16408 SARS-CoV-2_55_LEFT 1 + 110 | MN908947.3 16767 16796 SARS-CoV-2_55_RIGHT 1 - 111 | MN908947.3 16692 16714 SARS-CoV-2_56_LEFT 2 + 112 | MN908947.3 17082 17105 SARS-CoV-2_56_RIGHT 2 - 113 | MN908947.3 16986 17013 SARS-CoV-2_57_LEFT 1 + 114 | MN908947.3 17381 17405 SARS-CoV-2_57_RIGHT 1 - 115 | MN908947.3 17323 17345 SARS-CoV-2_58_LEFT 2 + 116 | MN908947.3 17688 17711 SARS-CoV-2_58_RIGHT 2 - 117 | MN908947.3 17615 17642 SARS-CoV-2_59_LEFT 1 + 118 | MN908947.3 17997 18022 SARS-CoV-2_59_RIGHT 1 - 119 | MN908947.3 17911 17939 SARS-CoV-2_60_LEFT 2 + 120 | MN908947.3 18307 18328 SARS-CoV-2_60_RIGHT 2 - 121 | MN908947.3 18244 18267 SARS-CoV-2_61_LEFT 1 + 122 | MN908947.3 18624 18652 SARS-CoV-2_61_RIGHT 1 - 123 | MN908947.3 18550 18578 SARS-CoV-2_62_LEFT 2 + 124 | MN908947.3 18936 18961 SARS-CoV-2_62_RIGHT 2 - 125 | MN908947.3 18869 18891 SARS-CoV-2_63_LEFT 1 + 126 | MN908947.3 19252 19277 SARS-CoV-2_63_RIGHT 1 - 127 | MN908947.3 19183 19208 SARS-CoV-2_64_LEFT 2 + 128 | MN908947.3 19558 19586 SARS-CoV-2_64_RIGHT 2 - 129 | MN908947.3 19485 19513 SARS-CoV-2_65_LEFT 1 + 130 | MN908947.3 19877 19901 SARS-CoV-2_65_RIGHT 1 - 131 | MN908947.3 19810 19836 SARS-CoV-2_66_LEFT 2 + 132 | MN908947.3 20186 20216 SARS-CoV-2_66_RIGHT 2 - 133 | MN908947.3 20090 20117 SARS-CoV-2_67_LEFT 1 + 134 | MN908947.3 20472 20497 SARS-CoV-2_67_RIGHT 1 - 135 | MN908947.3 20377 20405 SARS-CoV-2_68_LEFT 2 + 136 | MN908947.3 20766 20792 SARS-CoV-2_68_RIGHT 2 - 137 | MN908947.3 20677 20699 SARS-CoV-2_69_LEFT 1 + 138 | MN908947.3 21050 21080 SARS-CoV-2_69_RIGHT 1 - 139 | MN908947.3 20988 21013 SARS-CoV-2_70_LEFT 2 + 140 | MN908947.3 21358 21387 SARS-CoV-2_70_RIGHT 2 - 141 | MN908947.3 21294 21316 SARS-CoV-2_71_LEFT 1 + 142 | MN908947.3 21675 21700 SARS-CoV-2_71_RIGHT 1 - 143 | MN908947.3 21532 21561 SARS-CoV-2_72_LEFT 2 + 144 | MN908947.3 21904 21933 SARS-CoV-2_72_RIGHT 2 - 145 | MN908947.3 21865 21889 SARS-CoV-2_73_LEFT 1 + 146 | MN908947.3 22247 22274 SARS-CoV-2_73_RIGHT 1 - 147 | MN908947.3 22091 22113 SARS-CoV-2_74_LEFT 2 + 148 | MN908947.3 22474 22503 SARS-CoV-2_74_RIGHT 2 - 149 | MN908947.3 22402 22428 SARS-CoV-2_75_LEFT 1 + 150 | MN908947.3 22785 22805 SARS-CoV-2_75_RIGHT 1 - 151 | MN908947.3 22648 22677 SARS-CoV-2_76_LEFT 2 + 152 | MN908947.3 23028 23057 SARS-CoV-2_76_RIGHT 2 - 153 | MN908947.3 22944 22974 SARS-CoV-2_77_LEFT 1 + 154 | MN908947.3 23327 23351 SARS-CoV-2_77_RIGHT 1 - 155 | MN908947.3 23219 23246 SARS-CoV-2_78_LEFT 2 + 156 | MN908947.3 23611 23635 SARS-CoV-2_78_RIGHT 2 - 157 | MN908947.3 23553 23575 SARS-CoV-2_79_LEFT 1 + 158 | MN908947.3 23927 23955 SARS-CoV-2_79_RIGHT 1 - 159 | MN908947.3 23853 23876 SARS-CoV-2_80_LEFT 2 + 160 | MN908947.3 24233 24258 SARS-CoV-2_80_RIGHT 2 - 161 | MN908947.3 24171 24194 SARS-CoV-2_81_LEFT 1 + 162 | MN908947.3 24545 24567 SARS-CoV-2_81_RIGHT 1 - 163 | MN908947.3 24426 24448 SARS-CoV-2_82_LEFT 2 + 164 | MN908947.3 24814 24836 SARS-CoV-2_82_RIGHT 2 - 165 | MN908947.3 24750 24772 SARS-CoV-2_83_LEFT 1 + 166 | MN908947.3 25122 25150 SARS-CoV-2_83_RIGHT 1 - 167 | MN908947.3 25051 25076 SARS-CoV-2_84_LEFT 2 + 168 | MN908947.3 25438 25461 SARS-CoV-2_84_RIGHT 2 - 169 | MN908947.3 25331 25353 SARS-CoV-2_85_LEFT 1 + 170 | MN908947.3 25711 25740 SARS-CoV-2_85_RIGHT 1 - 171 | MN908947.3 25645 25672 SARS-CoV-2_86_LEFT 2 + 172 | MN908947.3 26026 26050 SARS-CoV-2_86_RIGHT 2 - 173 | MN908947.3 25951 25979 SARS-CoV-2_87_LEFT 1 + 174 | MN908947.3 26338 26360 SARS-CoV-2_87_RIGHT 1 - 175 | MN908947.3 26255 26277 SARS-CoV-2_88_LEFT 2 + 176 | MN908947.3 26635 26661 SARS-CoV-2_88_RIGHT 2 - 177 | MN908947.3 26564 26587 SARS-CoV-2_89_LEFT 1 + 178 | MN908947.3 26956 26979 SARS-CoV-2_89_RIGHT 1 - 179 | MN908947.3 26873 26895 SARS-CoV-2_90_LEFT 2 + 180 | MN908947.3 27256 27283 SARS-CoV-2_90_RIGHT 2 - 181 | MN908947.3 27152 27177 SARS-CoV-2_91_LEFT 1 + 182 | MN908947.3 27534 27560 SARS-CoV-2_91_RIGHT 1 - 183 | MN908947.3 27447 27473 SARS-CoV-2_92_LEFT 2 + 184 | MN908947.3 27826 27855 SARS-CoV-2_92_RIGHT 2 - 185 | MN908947.3 27700 27726 SARS-CoV-2_93_LEFT 1 + 186 | MN908947.3 28082 28104 SARS-CoV-2_93_RIGHT 1 - 187 | MN908947.3 27996 28021 SARS-CoV-2_94_LEFT 2 + 188 | MN908947.3 28394 28416 SARS-CoV-2_94_RIGHT 2 - 189 | MN908947.3 28190 28214 SARS-CoV-2_95_LEFT 1 + 190 | MN908947.3 28572 28598 SARS-CoV-2_95_RIGHT 1 - 191 | MN908947.3 28512 28536 SARS-CoV-2_96_LEFT 2 + 192 | MN908947.3 28893 28914 SARS-CoV-2_96_RIGHT 2 - 193 | MN908947.3 28827 28849 SARS-CoV-2_97_LEFT 1 + 194 | MN908947.3 29206 29227 SARS-CoV-2_97_RIGHT 1 - 195 | MN908947.3 29136 29161 SARS-CoV-2_98_LEFT 2 + 196 | MN908947.3 29512 29534 SARS-CoV-2_98_RIGHT 2 - 197 | MN908947.3 29452 29475 SARS-CoV-2_99_LEFT 1 + 198 | MN908947.3 29827 29854 SARS-CoV-2_99_RIGHT 1 - 199 | -------------------------------------------------------------------------------- /reference/snpEffect.config: -------------------------------------------------------------------------------- 1 | NC_045512.2.genome : nCoV-2019 ARTIC V3 2 | -------------------------------------------------------------------------------- /reference/vcf_filter.edited.py: -------------------------------------------------------------------------------- 1 | from collections import defaultdict 2 | 3 | import vcf 4 | 5 | 6 | def in_frame(v): 7 | if len(v.ALT) > 1: 8 | print("This code does not support multiple genotypes!") 9 | raise SystemExit 10 | ref = v.REF 11 | alt = v.ALT[0] 12 | bases = len(alt) - len(ref) 13 | if not bases: 14 | return True 15 | if bases % 3 == 0: 16 | return True 17 | return False 18 | 19 | 20 | class NanoporeFilter: 21 | def __init__(self, no_frameshifts): 22 | self.no_frameshifts = no_frameshifts 23 | pass 24 | 25 | def check_filter(self, v): 26 | total_reads = float(v.INFO["TotalReads"]) 27 | qual = v.QUAL 28 | strandbias = float(v.INFO["StrandFisherTest"]) # noqa 29 | 30 | if qual / total_reads < 3: 31 | return False 32 | 33 | if self.no_frameshifts and not in_frame(v): 34 | return False 35 | 36 | if v.is_indel: 37 | strand_fraction_by_strand = v.INFO["SupportFractionByStrand"] 38 | if float(strand_fraction_by_strand[0]) < 0.5: 39 | return False 40 | 41 | if float(strand_fraction_by_strand[1]) < 0.5: 42 | return False 43 | 44 | if total_reads < 20: 45 | return False 46 | 47 | return True 48 | 49 | 50 | class MedakaFilter: 51 | def __init__(self, no_frameshifts): 52 | self.no_frameshifts = no_frameshifts 53 | 54 | def check_filter(self, v): 55 | depth = v.INFO["DP"] 56 | if depth < 20: 57 | return False 58 | 59 | if self.no_frameshifts and not in_frame(v): 60 | return False 61 | 62 | if v.num_het: 63 | return False 64 | return True 65 | 66 | 67 | def go(args): 68 | vcf_reader = vcf.Reader(filename=args.inputvcf) 69 | vcf_writer = vcf.Writer(open(args.output_pass_vcf, "w"), vcf_reader) 70 | vcf_writer_filtered = vcf.Writer(open(args.output_fail_vcf, "w"), vcf_reader) 71 | if args.nanopolish: 72 | filter = NanoporeFilter(args.no_frameshifts) 73 | elif args.medaka: 74 | filter = MedakaFilter(args.no_frameshifts) 75 | else: 76 | print("Please specify a VCF type, i.e. --nanopolish or --medaka\n") 77 | raise SystemExit 78 | 79 | variants = [v for v in vcf_reader] 80 | 81 | group_variants = defaultdict(list) 82 | for v in variants: 83 | indx = "%s-%s" % (v.CHROM, v.POS) 84 | group_variants[indx].append(v) 85 | 86 | for v in variants: 87 | 88 | # if using medaka, we need to do a quick pre-filter to remove rubbish 89 | # that we don't want adding to the mask 90 | if v.QUAL is None: 91 | v.QUAL = 0 92 | 93 | if args.medaka: 94 | if v.INFO["DP"] <= 1: 95 | continue 96 | if v.QUAL < 20: 97 | continue 98 | 99 | # now apply the filter to send variants to PASS or FAIL file 100 | if filter.check_filter(v): 101 | vcf_writer.write_record(v) 102 | else: 103 | variant_passes = False 104 | 105 | indx = "%s-%s" % (v.CHROM, v.POS) 106 | if len(group_variants[indx]) > 1: 107 | for check_variant in group_variants[indx]: 108 | if filter.check_filter(check_variant): 109 | variant_passes = True 110 | 111 | if not variant_passes: 112 | vcf_writer_filtered.write_record(v) 113 | else: 114 | print("Suppress variant %s\n" % (v.POS)) 115 | 116 | 117 | def main(): 118 | import argparse 119 | 120 | parser = argparse.ArgumentParser() 121 | parser.add_argument("--nanopolish", action="store_true") 122 | parser.add_argument("--medaka", action="store_true") 123 | parser.add_argument("--no-frameshifts", action="store_true") 124 | parser.add_argument("inputvcf") 125 | parser.add_argument("output_pass_vcf") 126 | parser.add_argument("output_fail_vcf") 127 | 128 | args = parser.parse_args() 129 | 130 | go(args) 131 | 132 | 133 | if __name__ == "__main__": 134 | main() 135 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | pytest 2 | pre-commit 3 | pandas 4 | snp-mutator==1.2.0 5 | -------------------------------------------------------------------------------- /setup.cfg: -------------------------------------------------------------------------------- 1 | [flake8] 2 | ignore = E203, W503 3 | max-line-length = 100 4 | import-order-style = google 5 | 6 | [isort] 7 | line_length = 100 8 | multi_line_output = 3 9 | combine_as = true 10 | include_trailing_comma = true 11 | known_first_part = conftest 12 | known_third_party = pandas,snpmutator 13 | -------------------------------------------------------------------------------- /tests/conftest.py: -------------------------------------------------------------------------------- 1 | # Helper functions for running the Docker pipeline and snp-mutator 2 | from argparse import Namespace 3 | import gzip 4 | import os 5 | import shutil 6 | import subprocess 7 | 8 | import pandas as pd 9 | import pytest 10 | from snpmutator.script import run_from_args 11 | 12 | IMAGE = "covid19" 13 | 14 | 15 | @pytest.fixture 16 | def read_vcf_as_dataframe(): 17 | def _read_vcf_as_dataframe(path): 18 | df = pd.read_csv( 19 | path, 20 | sep="\t", 21 | comment="#", 22 | names=["CHROM", "POS", "ID", "REF", "ALT", "QUAL", "FILTER", "INFO"], 23 | usecols=[0, 1, 2, 3, 4, 5, 6, 7], 24 | dtype={ 25 | "CHROM": "str", 26 | "POS": "str", 27 | "ID": "str", 28 | "REF": "str", 29 | "ALT": "str", 30 | "QUAL": "str", 31 | "FILTER": "str", 32 | "INFO": "str", 33 | }, 34 | ) 35 | 36 | # parse info add key/value items to data-frame 37 | info_data = [] 38 | for row in df["INFO"].values: 39 | items = [i.split("=") for i in row.split(";")] 40 | parsed = {} 41 | for item in items: 42 | # boolean items. skip for now 43 | if len(item) == 1: 44 | pass 45 | elif len(item) == 2: 46 | parsed[item[0]] = item[1] 47 | else: 48 | raise Exception(f"Item of unexpected length in vcf info column: {item}") 49 | # parse depth column into ALT and REF depths 50 | depths = [int(x) for x in parsed["DP4"].split(",")] 51 | parsed["ALT_DP"] = sum(depths[2:]) 52 | parsed["REF_DP"] = sum(depths[:2]) 53 | info_data.append(parsed) 54 | 55 | df = pd.DataFrame([{**r, **i} for r, i in zip(df.to_dict(orient="records"), info_data)]) 56 | 57 | return df 58 | 59 | return _read_vcf_as_dataframe 60 | 61 | 62 | @pytest.fixture 63 | def run_snp_mutator(tmp_path): 64 | def _run_snp_mutator(**kwargs): 65 | return run_from_args(_generate_snp_mutator_args(tmp_path, **kwargs)) 66 | 67 | return _run_snp_mutator 68 | 69 | 70 | def _generate_snp_mutator_args( 71 | tmp_path, 72 | input_fasta_file=None, 73 | num_subs=10, 74 | num_insertions=0, 75 | num_deletions=0, 76 | random_seed=42, 77 | ): 78 | """Wrapper to generate args for SNP mutator""" 79 | if input_fasta_file is None: 80 | raise Exception("Requires an input reference FASTA") 81 | 82 | kwargs = locals() 83 | kwargs.pop("tmp_path") 84 | args = Namespace( 85 | # Unused but needed defaults 86 | group_size=None, 87 | seq_id=None, 88 | subset_len=0, 89 | mono=False, 90 | metrics_file=None, 91 | concat_ref_file=None, 92 | # Hard-coded 93 | fasta_output_dir=tmp_path, 94 | num_sims=1, 95 | vcf_file=tmp_path / "variants.vcf", 96 | summary_file=tmp_path / "summary.tsv", 97 | # Passed 98 | **kwargs, 99 | ) 100 | return args 101 | 102 | 103 | def _interleave_fastqs(r1, r2, output_filename): 104 | """Helper function to interleave ART outputs for minimap2""" 105 | with open(r1) as f1, open(r2) as f2, gzip.open(output_filename, "wt") as fout: 106 | while True: 107 | line = f1.readline() 108 | if line.strip() == "": 109 | break 110 | fout.write(line) 111 | 112 | for _ in range(3): 113 | fout.write(f1.readline()) 114 | 115 | for _ in range(4): 116 | fout.write(f2.readline()) 117 | 118 | 119 | @pytest.fixture 120 | def run_art(tmp_path): 121 | def _run_art( 122 | input_reference="nCoV-2019.reference_mutated_1.fasta", 123 | system="MSv3", 124 | read_length=150, 125 | coverage=100, 126 | ): 127 | subprocess.check_output( 128 | [ 129 | "docker", 130 | "run", 131 | "--rm", 132 | *("--platform", "linux/amd64"), 133 | *("--volume", f"{os.getcwd()}:/repo"), 134 | *("--volume", f"{tmp_path}:/pytest"), 135 | "--workdir", 136 | "/pytest", 137 | IMAGE, 138 | *( 139 | *("conda", "run", "-n", "jobscript-env"), 140 | "art_illumina", 141 | "--paired", 142 | *("--seqSys", system), 143 | *("--len", f"{read_length}"), 144 | *("--mflen", "200"), 145 | *("--sdev", "10"), 146 | *("--rndSeed", "1"), 147 | *("--fcov", f"{coverage:.2f}"), 148 | *("--in", f"/pytest/{input_reference}"), 149 | *("--out", "simulated_reads_"), 150 | ), 151 | ] 152 | ) 153 | _interleave_fastqs( 154 | f"{tmp_path}/simulated_reads_1.fq", 155 | f"{tmp_path}/simulated_reads_2.fq", 156 | f"{tmp_path}/simulated_reads.fastq.gz", 157 | ) 158 | 159 | return _run_art 160 | 161 | 162 | def run_docker_container(tmp_path, container_command, env=None): 163 | if env is None: 164 | env = {} 165 | 166 | command = [ 167 | "docker", 168 | "run", 169 | "--rm", 170 | *("--platform", "linux/amd64"), 171 | *("--volume", f"{os.getcwd()}:/repo"), 172 | *("--volume", f"{tmp_path}:/pytest"), 173 | *("--workdir", "/pytest"), 174 | *[i for r in [("--env", f"{k}={v}") for k, v in env.items()] for i in r], 175 | IMAGE, 176 | *container_command, 177 | ] 178 | 179 | result = subprocess.run(command, capture_output=True) 180 | 181 | if result.returncode != 0: 182 | raise Exception( 183 | "\n".join( 184 | [ 185 | "Command Failed!", 186 | "command:", 187 | " ".join(command), 188 | "stdout:", 189 | result.stdout.decode("utf-8"), 190 | "stderr:", 191 | result.stderr.decode("utf-8"), 192 | ] 193 | ) 194 | ) 195 | 196 | return result 197 | 198 | 199 | @pytest.fixture 200 | def run_post_process_variants(tmp_path): 201 | def _run_post_process_variants(input_filename=None): 202 | container_command = [ 203 | "/bin/bash", 204 | "/repo/post_process_variants.sh", 205 | input_filename, 206 | ] 207 | 208 | run_docker_container(tmp_path, container_command) 209 | 210 | return _run_post_process_variants 211 | 212 | 213 | @pytest.fixture 214 | def run_jobscript(tmp_path): 215 | def _run_jobscript(input_filename, instrument_vendor="Illumina"): 216 | container_command = ["/bin/bash", "/repo/jobscript.sh", input_filename] 217 | 218 | run_docker_container( 219 | tmp_path, container_command, env={"INSTRUMENT_VENDOR": instrument_vendor} 220 | ) 221 | 222 | return _run_jobscript 223 | 224 | 225 | @pytest.fixture 226 | def run_call_variants_illumina(tmp_path): 227 | def _run_call_variants_illumina( 228 | input_filename="nCoV-2019.reference_mutated_1.fasta", 229 | ): 230 | container_command = [ 231 | "/bin/bash", 232 | "/repo/covid19_call_variants.sh", 233 | "/reference/nCoV-2019.reference.fasta", 234 | input_filename, 235 | "/reference/ARTIC-V4.bed", 236 | "10", 237 | ] 238 | 239 | run_docker_container(tmp_path, container_command) 240 | 241 | return _run_call_variants_illumina 242 | 243 | 244 | @pytest.fixture 245 | def run_call_variants_ont(tmp_path): 246 | def _run_call_variants_ont(input_filename): 247 | container_command = [ 248 | "/bin/bash", 249 | "/repo/covid19_call_variants.ont.sh", 250 | input_filename, 251 | "4.1", 252 | ] 253 | 254 | run_docker_container(tmp_path, container_command) 255 | 256 | return _run_call_variants_ont 257 | 258 | 259 | @pytest.fixture 260 | def run_render_notebook(tmp_path): 261 | def _run_render_notebook(): 262 | # notebook must exist in tmp_path because file paths are relative to 263 | # the notebook 264 | shutil.copy("report.ipynb", tmp_path / "report.ipynb") 265 | container_command = [ 266 | *("conda", "run", "-n", "jobscript-env"), 267 | "jupyter", 268 | "nbconvert", 269 | "--execute", 270 | "--to=onecodex_pdf", 271 | "--ExecutePreprocessor.timeout=-1", 272 | "--output='test.pdf'", 273 | "--output-dir='.'", 274 | "report.ipynb", 275 | ] 276 | run_docker_container(tmp_path, container_command) 277 | 278 | return _run_render_notebook 279 | -------------------------------------------------------------------------------- /tests/test_artic.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | import pandas as pd 4 | 5 | 6 | def test_sra_illumina_artic(tmp_path, run_call_variants_illumina, read_vcf_as_dataframe): 7 | """ 8 | Test that the pipeline generates the same SNPs as detected by NextStrain: 9 | https://nextstrain.org/ncov?s=USA/CA-PC101P/2020 10 | """ 11 | 12 | run_call_variants_illumina(input_filename="/repo/data/ARTIC/SRR11314339.ARTICv1.100k.fastq.gz") 13 | 14 | assert os.path.exists(tmp_path / "consensus.fa") 15 | assert os.path.exists(tmp_path / "variants.vcf") 16 | assert os.path.exists(tmp_path / "covid19.bam") 17 | assert os.path.exists(tmp_path / "covid19.bam.bai") 18 | 19 | # for backwards compatibility 20 | # need to rewrite notebook to not depend on this TSV (use nextclade output instead) 21 | called = read_vcf_as_dataframe(tmp_path / "variants.vcf") 22 | 23 | truth = pd.read_csv( 24 | "data/ARTIC/SRR11314339.ARTICv1.100k.truth.tsv", 25 | sep="\t", 26 | dtype={ 27 | "Replicate": "str", 28 | "Position": "str", 29 | "OriginalBase": "str", 30 | "NewBase": "str", 31 | }, 32 | ) 33 | 34 | # Subset to depth >= 10 and then compare 35 | assert all(truth["Position"] == called["POS"]) 36 | assert all(truth["OriginalBase"] == called["REF"]) 37 | assert all(truth["NewBase"] == called["ALT"]) 38 | 39 | 40 | def test_ont_artic(tmp_path, run_call_variants_ont, read_vcf_as_dataframe): 41 | run_call_variants_ont(input_filename="/repo/data/ARTIC/ERR5284916.ONT.ARTICv3.40k.fastq.gz") 42 | assert os.path.exists(tmp_path / "consensus.fa") 43 | assert os.path.exists(tmp_path / "variants.vcf") 44 | assert os.path.exists(tmp_path / "covid19.bam") 45 | assert os.path.exists(tmp_path / "covid19.bam.bai") 46 | -------------------------------------------------------------------------------- /tests/test_integration.py: -------------------------------------------------------------------------------- 1 | # these tests will copy the reports to the current working directory 2 | # there is a GitHub action setup to upload these reports as artifacts 3 | 4 | import os 5 | import shutil 6 | 7 | import pytest 8 | 9 | 10 | def test_jobscript_ont(tmp_path, run_jobscript): 11 | run_jobscript( 12 | input_filename="/repo/data/ARTIC/ERR5284916.ONT.ARTICv3.40k.fastq.gz", 13 | instrument_vendor="Oxford Nanopore", 14 | ) 15 | 16 | assert os.path.exists(tmp_path / "report.pdf") 17 | 18 | shutil.copy(tmp_path / "report.pdf", "report-ont.pdf") 19 | 20 | 21 | @pytest.mark.parametrize("num_subs", [0, 3]) 22 | def test_jobscript_illumina(tmp_path, run_snp_mutator, run_art, run_jobscript, num_subs): 23 | # generate some data 24 | run_snp_mutator(input_fasta_file="reference/nCoV-2019.reference.fasta", num_subs=num_subs) 25 | run_art(coverage=30) 26 | run_jobscript(input_filename="simulated_reads.fastq.gz", instrument_vendor="Illumina MiSeq") 27 | 28 | assert os.path.exists(tmp_path / "report.pdf") 29 | 30 | shutil.copy(tmp_path / "report.pdf", f"report-illumina-{num_subs}_subs.pdf") 31 | 32 | 33 | def test_jobscript_illumina_nc_error(tmp_path, run_jobscript): 34 | # SRA sample from CDC benchmark datasets with error in nextclade.json 35 | run_jobscript( 36 | input_filename="/repo/data/ARTIC/SRR16298166.fastq.gz", 37 | instrument_vendor="Illumina", 38 | ) 39 | 40 | assert os.path.exists(tmp_path / "report.pdf") 41 | 42 | assert os.path.exists(tmp_path / "nextclade.json") 43 | 44 | shutil.copy(tmp_path / "report.pdf", "report-illumina-nc_error.pdf") 45 | 46 | shutil.copy(tmp_path / "nextclade.json", "report-illumina-nc_error_nextclade.json") 47 | -------------------------------------------------------------------------------- /tests/test_post_process_variants.py: -------------------------------------------------------------------------------- 1 | import os 2 | 3 | 4 | def test_post_process_variants(tmp_path, run_post_process_variants, run_snp_mutator): 5 | run_snp_mutator(input_fasta_file="reference/nCoV-2019.reference.fasta", num_subs=1) 6 | run_post_process_variants("nCoV-2019.reference_mutated_1.fasta") 7 | assert os.path.exists(tmp_path / "nextclade.tsv") 8 | assert os.path.exists(tmp_path / "nextclade.json") 9 | assert os.path.exists(tmp_path / "pangolin.csv") 10 | -------------------------------------------------------------------------------- /tests/test_simulated_data.py: -------------------------------------------------------------------------------- 1 | from Bio import SeqIO 2 | import pandas as pd 3 | import pytest 4 | 5 | 6 | @pytest.mark.parametrize("n", [x for x in range(1, 2)]) 7 | def test_snps_only_fastq( 8 | tmp_path, n, run_art, run_jobscript, run_snp_mutator, read_vcf_as_dataframe 9 | ): 10 | """Tests insert of N snps""" 11 | run_snp_mutator( 12 | input_fasta_file="reference/nCoV-2019.reference.fasta", 13 | num_subs=n, 14 | num_insertions=0, 15 | num_deletions=0, 16 | ) 17 | 18 | # Run ART 19 | run_art() 20 | 21 | # Run pipeline on simulated data 22 | run_jobscript(input_filename="simulated_reads.fastq.gz") 23 | 24 | # Check that all variants are detected and there are no extras 25 | truth = pd.read_csv( 26 | open(tmp_path / "summary.tsv"), 27 | sep="\t", 28 | dtype={ 29 | "Replicate": "str", 30 | "Position": "str", 31 | "OriginalBase": "str", 32 | "NewBase": "str", 33 | }, 34 | ) 35 | called = read_vcf_as_dataframe(tmp_path / "variants.vcf") 36 | 37 | # The position, ref, and alt can differ between snpmutator and the vcf if 38 | # an indel occurs at an ambiguous position (i.e. AGGG -> AGG can give three different 39 | # variant calls/positions that are equivalent). 40 | assert len(list(truth["Position"])) == len(list(called["POS"])) 41 | 42 | # We add these tests to ensure we have a high percent of reads aligning 43 | # We simulate at 50x, so low end variants with coverage variability should 44 | # be ~25-30x, and then another ~33-50% due to Q scores <20 45 | assert (called["ALT_DP"] > 10).all() 46 | assert called["ALT_DP"].mean() > 15 47 | 48 | # Finally, test that the FASTAs match 49 | # Note we ignore the first 50bp which may have low coverage and N masking 50 | # plus the final 120bps due to a polyA tail 51 | reference = list(SeqIO.parse(f"{tmp_path}/nCoV-2019.reference_mutated_1.fasta", "fasta"))[0] 52 | consensus = list(SeqIO.parse(f"{tmp_path}/consensus.fa", "fasta"))[0] 53 | assert consensus.seq[50:-120] in reference.seq 54 | -------------------------------------------------------------------------------- /tests/test_simulated_data_noindels.py: -------------------------------------------------------------------------------- 1 | from Bio import SeqIO 2 | import pandas as pd 3 | import pytest 4 | 5 | 6 | @pytest.mark.parametrize("n", [x for x in range(1, 2)]) 7 | def test_snps_only_fastq( 8 | tmp_path, n, run_art, run_jobscript, run_snp_mutator, read_vcf_as_dataframe 9 | ): 10 | """Tests insert of N snps""" 11 | run_snp_mutator( 12 | input_fasta_file="reference/nCoV-2019.reference.fasta", 13 | num_subs=n, 14 | num_insertions=0, 15 | num_deletions=0, 16 | ) 17 | 18 | # Run ART 19 | run_art() 20 | 21 | # Run pipeline on simulated data 22 | run_jobscript(input_filename="simulated_reads.fastq.gz") 23 | 24 | # Check that all variants are detected and there are no extras 25 | truth = pd.read_csv( 26 | open(tmp_path / "summary.tsv"), 27 | sep="\t", 28 | dtype={ 29 | "Replicate": "str", 30 | "Position": "str", 31 | "OriginalBase": "str", 32 | "NewBase": "str", 33 | }, 34 | ) 35 | called = read_vcf_as_dataframe(tmp_path / "variants.vcf") 36 | 37 | assert list(truth["Position"]) == list(called["POS"]) 38 | assert list(truth["OriginalBase"]) == list(called["REF"]) 39 | assert list(truth["NewBase"]) == list(called["ALT"]) 40 | 41 | # We add these tests to ensure we have a high percent of reads aligning 42 | # We simulate at 50x, so low end variants with coverage variability should 43 | # be ~25-30x, and then another ~33-50% due to Q scores <20 44 | assert (called["ALT_DP"] > 10).all() 45 | assert called["ALT_DP"].mean() > 15 46 | 47 | # Finally, test that the FASTAs match 48 | # Note we ignore the first 50bp which may have low coverage and N masking 49 | # plus the final 120bps due to a polyA tail 50 | reference = list(SeqIO.parse(f"{tmp_path}/nCoV-2019.reference_mutated_1.fasta", "fasta"))[0] 51 | consensus = list(SeqIO.parse(f"{tmp_path}/consensus.fa", "fasta"))[0] 52 | assert consensus.seq[50:-120] in reference.seq 53 | -------------------------------------------------------------------------------- /tests/test_twist.py: -------------------------------------------------------------------------------- 1 | import pandas as pd 2 | 3 | 4 | def test_twist_truth_data(tmp_path, run_call_variants_illumina, read_vcf_as_dataframe): 5 | """Tests insert of N snps""" 6 | # Run pipeline on simulated data 7 | run_call_variants_illumina( 8 | input_filename=( 9 | "/repo/data/twist-target-capture/RNA_control_spike_in_10_6_100k_reads.fastq.gz" 10 | ) 11 | ) 12 | truth = pd.read_csv( 13 | open("data/twist-target-capture/truth.tsv"), 14 | sep="\t", 15 | dtype={ 16 | "Replicate": "str", 17 | "Position": "str", 18 | "OriginalBase": "str", 19 | "NewBase": "str", 20 | }, 21 | ) 22 | called = read_vcf_as_dataframe(tmp_path / "variants.vcf") 23 | # Subset to depth >= 10 and then compare 24 | # lost last variant because depth went down. differences in filtering/mapping? 25 | called = called[called["ALT_DP"] >= 10] 26 | assert all(truth["Position"].values == called["POS"].values) 27 | assert all(truth["OriginalBase"].values == called["REF"].values) 28 | assert all(truth["NewBase"].values == called["ALT"].values) 29 | --------------------------------------------------------------------------------