# SpliceWiz: Quick Start

# Introduction

SpliceWiz is a graphical interface for differential alternative splicing and visualization in R. It differs from other alternative splicing tools as it is designed for users with basic bioinformatic skills to analyze datasets containing up to hundreds of samples! SpliceWiz contains a number of innovations including:

- Super-fast handling of alignment BAM files using ompBAM, our developer resource for multi-threaded BAM processing,
- Alternative splicing event (ASE) filters to remove problematic ASEs from analysis
- Group-averaged coverage plots: publication-ready figures to clearly visualize differential alternative splicing between biological / experimental conditions
- Interactive figures, including scatter and volcano plots, gene ontology (GO) analysis, heatmaps, and scrollable coverage plots, powered using the shinyDashboard interface

This vignette is a runnable working example of the SpliceWiz workflow. The purpose is to quickly demonstrate the basic functionalities of SpliceWiz.

We provide here a brief outline of the workflow for users to get started as quickly as possible. However, we also provide more details for those wishing to know more. Many sections will contain extra information that can be displayed when clicked on, such as these:

Click on me for more details
In most sections, we offer more details about each step of the workflow, that can be revealed in text segments like this one. Be sure to click on buttons like these, where available.

# FAQ

What are the system memory requirements for running SpliceWiz

We recommend the following memory requirements (RAM) for running various steps of SpliceWiz:

buildRef()

- Building human / mouse SpliceWiz reference: 8 gigabytes

processBAM()

- Processing small alignment (BAM) files (~20 million paired end reads): 8 gigabytes
- Processing large BAM files (~100 million paired end reads): 16 gigabytes

collateData()

- Collating routine experiments (e.g. 3 replicates, 2 conditions): 8-16 gigabytes
- Collating large experiments (20+ samples, using `lowMemoryMode=TRUE`): 32 gigabytes
- Collating large experiments (20+ samples, using `lowMemoryMode=FALSE`): 8 gigabytes per thread

Differential analysis

- Differential analysis (routine experiments): 8 gigabytes
- Differential analysis (large experiments - 20+ samples): 16 gigabytes
- DESeq2-based differential analysis of large experiments: 32 gigabytes

How does SpliceWiz measure alternative splicing?

SpliceWiz defines alternative splicing events (ASEs) as binary events between two possibilities, the included and excluded isoform. It detects and measures: skipped (casette) exons (SE), mutually-exclusive exons (MXE), alternative 5’/3’ splice site usage (A5SS / A3SS), alternate first / last exon usage (AFE / ALE), and retained introns (IR or RI).

SpliceWiz uses splice-specific read counts to measure ASEs. Namely, these are junction reads (reads that align across splice sites). The exception is intron retention (IR) whereby the (trimmed) mean read depth across the intron is measured (identical to the method used in IRFinder).

SpliceWiz provides two metrics:

- Percent spliced in (PSI): is the expression of the included isoform as a proportion of both included/excluded isoform. PSIs are measured for all types of alternative splicing, including annotated retained introns (RI)
- IR-ratio: For introns, we also measure IR-ratios, which is the expression of IR-transcript as a proportion of IR- and spliced-transcripts. Spliced transcript expression is measured using either `SpliceOver` or `SpliceMax` method (the latter is identical to that used in IRFinder)

Does SpliceWiz detect novel splicing events?

Novel splicing events are those in which at least one isoform is not an annotated transcript in the given gene annotation. SpliceWiz DOES detect novel splicing events.

It detects novel events by using novel junctions, using pairs of junctions that originate from or terminate at a common coordinate (novel alternate splice site usage).

Additionally, SpliceWiz detects “tandem junction reads”. These are reads that span across two or more splice junctions. The region between splice junctions can then be annotated as novel exons (if they are not identical to annotated exons). These novel exons can then be used to measure novel casette exon usage.

# Workflow from a glance

The basic steps of SpliceWiz are as follows:

- Building the SpliceWiz reference
- Process BAM files using SpliceWiz
- Collate results of individual samples into an experiment
- Importing the collated experiment as an NxtSE object
- Alternative splicing event filtering
- Differential ASE analysis
- Visualization

# Quick-Start

## Installation

To install SpliceWiz, start R (devel version) and enter:

    if (!requireNamespace("BiocManager", quietly = TRUE))
        install.packages("BiocManager")

    BiocManager::install("SpliceWiz")

Setting up a Conda environment to use SpliceWiz

For those wishing to set up a self-contained environment with SpliceWiz installed (e.g. on a high performance cluster), we recommend using miniconda. For installation instructions, see the documentation on how to install miniconda

After installing miniconda, create a conda environment as follows:

    conda create -n envSpliceWiz python=3.9

After following the prompts, activate the environment:

    conda activate envSpliceWiz

Next, install R 4.2.1 as follows:

    conda install -c conda-forge r-base=4.2.1

NB: We have not been able to successfuly use r-base=4.3, so we recommend using r-base=4.2.1 (until further notice).

Many of SpliceWiz’s dependencies are up-to-date from the conda-forge channel, so they are best installed via conda:

    conda install -c conda-forge r-devtools r-essentials r-xml r-biocmanager \
      r-fst r-plotly r-rsqlite r-rcurl

After this is done, the remainder of the packages need to be installed from the R terminal. This is because most Bioconductor packages are from the bioconda channel and appear not to be routinely updated.

So, lets enter the R terminal from the command line:

    R

Set up Bioconductor 3.16 (which is the latest version compatible with R 4.2):

    BiocManager::install(version = "3.16")

Again, follow the prompts to update any necessary packages.

Once this is done, install SpliceWiz (devel) from github:

    # BiocManager::install("SpliceWiz")
    devtools::install_github("alexchwong/SpliceWiz")

The last step will install any remaining dependencies, taking approximately 20-30 minutes depending on your system.

Enabling OpenMP (multi-threading) for MacOS users (Optional)

For MacOS users, make sure OpenMP libraries are installed correctly. We recommend users follow this guide, but the quickest way to get started is to install `libomp` via brew:

    brew install libomp

Installing statistical package dependencies (Optional)

SpliceWiz uses established statistical tools to perform alternative splicing differential analysis:

- limma: models included and excluded counts as log-normal distributions
- DESeq2: models included and excluded counts as negative binomial distributions
- edgeR: models included and excluded counts as negative binomial distributions. SpliceWiz uses the quasi-likelihood method which deals better with zero-counts.
- DoubleExpSeq: models included and excluded counts using beta binomial distributions

To install all of these packages:

    install.packages("DoubleExpSeq")

    BiocManager::install(c("DESeq2", "limma", "edgeR"))

## Loading SpliceWiz

    library(SpliceWiz)

Details
The SpliceWiz package loads the `NxtIRFdata` data package. This data package contains the example “chrZ” genome / annotations and 6 example BAM files that are used in this working example. Also, NxtIRFdata provides pre-generated mappability exclusion annotations for building human and mouse SpliceWiz references

## The SpliceWiz Graphics User Interface (GUI)

SpliceWiz offers a graphical user interface (GUI) for interactive users, e.g. in the RStudio environment. To start using SpliceWiz GUI:

    if(interactive()) {
        spliceWiz(demo = TRUE)
    }

### Navigating the GUI

The SpliceWiz GUI uses the `shinyDashboard` interface. Use the side menu on the left hand side of the interface to navigate across the various sub-panels in the SpliceWiz GUI.

SpliceWiz GUI - Menu Side Bar

## Building the SpliceWiz reference

Why do we need the SpliceWiz reference?

SpliceWiz first needs to generate a set of reference files. The SpliceWiz reference is used to quantitate alternative splicing in BAM files, as well as in downstream collation, differential analysis and visualisation.

SpliceWiz generates a reference from a user-provided genome FASTA and genome annotation GTF file, and is optimised for Ensembl references but can accept other reference GTF files. Alternatively, SpliceWiz accepts AnnotationHub resources, using the record names of AnnotationHub records as input.

Using the example FASTA and GTF files, use the `buildRef()` function to build the SpliceWiz reference:

    ref_path <- file.path(tempdir(), "Reference")
    buildRef(
        reference_path = ref_path,
        fasta = chrZ_genome(),
        gtf = chrZ_gtf(),
        ontologySpecies = "Homo sapiens"
    )

The SpliceWiz reference can be viewed as data frames using various getter functions. For example, to view the annotated alternative splicing events (ASE):

    df <- viewASE(ref_path)

See `?View-Reference-methods` for a comprehensive list of getter functions

Using the GUI

After starting the SpliceWiz GUI in demo mode, click the `Reference` tab from the menu side bar. The following interface will be shown:

Building the SpliceWiz reference using the GUI

1. The first step to building a SpliceWiz reference is to select a directory in which to create the reference.
2. SpliceWiz provides an interface to retrieve the genome sequence (FASTA) and transcriptome annotation (GTF) files from the Ensembl FTP server, by first selecting the “Release” and then “Species” from the drop-down boxes.
3. Alternatively, users can provide their own FASTA and GTF files.
4. Human (hg38, hg19) and mouse genomes (mm10, mm9) have the option of further refining IR analysis using built-in mappability exclusion annotations, allowing SpliceWiz to ignore intronic regions of low mappability.

For now, to continue with the demo and create the reference using the GUI, click on the `Load Demo FASTA/GTF` (5), and then click `Build Reference` (6)
Where did the FASTA and GTF files come from?

The helper functions `chrZ_genome()` and `chrZ_gtf()` returns the paths to the example genome (FASTA) and transcriptome (GTF) file included with the `NxtIRFdata` package that contains the working example used by SpliceWiz:

    # Provides the path to the example genome:
    chrZ_genome()
    #> [1] "/github/workspace/pkglib/NxtIRFdata/extdata/genome.fa"

    # Provides the path to the example gene annotation:
    chrZ_gtf()
    #> [1] "/github/workspace/pkglib/NxtIRFdata/extdata/transcripts.gtf"

What is the chrZ genome?
For the purpose of generating a running example to demonstrate SpliceWiz, we created an artificial genome / gene annotation. This was created using 7 human genes (SRSF1, SRSF2, SRSF3, TRA2A, TRA2B, TP53 and NSUN5). The SRSF and TRA family of genes all contain poison exons flanked by retained introns. Additionally, NSUN5 contains an annotated IR event in its terminal intron. Sequences from these 7 genes were aligned into one sequence to create an artificial chromosome Z (chrZ). The gene annotations were modified to only contain the 7 genes with the modified genomic coordinates.
What is the gene ontology species?

SpliceWiz supports gene ontology analysis. To enable this capability, we first need to generate the gene ontology annotations for the appropriate species.

To see a list of supported species:

    getAvailableGO()
    #>    [1] "Pseudophryne corroboree"
    #>    [2] "Triticum aestivum"
    #>    [3] "Triticum aestivum_subsp._aestivum"
    #>    [4] "Triticum sativum"
    #>    [5] "Triticum vulgare"
    #>    [6] "Ambystoma mexicanum"
    #>    [7] "Gyrinus mexicanus"
    #>    [8] "Musa acuminata_AAA_Group"
    #>    [9] "Brassica napus"
    #>   [10] "Arachis hypogaea"
    #>   [11] "Hibiscus syriacus"
    #>   [12] "Cortia elata"
    #>   [13] "Eulalia japonica"
    #>   [14] "Levisticum argutum"
    #>   [15] "Ligusticum elatum"
    #>   [16] "Miscanthus floridulus"
    #>   [17] "Miscanthus japonicus"
    #>   [18] "Oreocome arguta"
    #>   [19] "Saccharum floridulum"
    #>   [20] "Acridium cancellatum"
    #>   [21] "Schistocerca cancellata"
    #>   [22] "Triticum dicoccoides"
    #>   [23] "Triticum turgidum_subsp._dicoccoides"
    #>   [24] "Triticum turgidum_var._dicoccoides"
    #>   [25] "Dendrohyas sarda"
    #>   [26] "Hyla arborea_sarda"
    #>   [27] "Hyla sarda"
    #>   [28] "Gryllus gregarius"
    #>   [29] "Locusta gregaria"
    #>   [30] "Schistocerca gregaria"
    #>   [31] "Gossypium hirsutum"
    #>   [32] "Gossypium hirsutum_subsp._mexicanum"
    #>   [33] "Gossypium lanceolatum"
    #>   [34] "Gossypium purpurascens"
    #>   [35] "Camelina sativa"
    #>   [36] "Myagrum sativum"
    #>   [37] "Carassius auratus_gibelio"
    #>   [38] "Carassius gibelio_gibelio"
    #>   [39] "Carassius gibelio"
    #>   [40] "Carassius gibelio_subsp._gibelio"
    #>   [41] "Cyprinus gibelio"
    #>   [42] "Acridium piceifrons"
    #>   [43] "Schistocerca piceifrons"
    #>   [44] "Papaver somniferum"
    #>   [45] "Zingiber officinale"
    #>   [46] "Trichomonas vaginalis_G3"
    #>   [47] "Trichomonas vaginalis_strain_G3"
    #>   [48] "Helianthus annuus"
    #>   [49] "Schistocerca americana"
    #>   [50] "Coffea arabica"
    #>   [51] "Acipenser ruthenus"
    #>   [52] "Acridium cubense"
    #>   [53] "Schistocerca serialis_cubense"
    #>   [54] "Panicum virgatum"
    #>   [55] "Nicotiana tabacum"
    #>   [56] "Oncorhynchus mykiss"
    #>   [57] "Oncorhynchus nerka_mykiss"
    #>   [58] "Parasalmo mykiss"
    #>   [59] "Salmo mykiss"
    #>   [60] "Gryllus nitens"
    #>   [61] "Schistocerca nitens"
    #>   [62] "Schistocerca vaga"
    #>   [63] "Misgurnus dabryanus"
    #>   [64] "Paramisgurnus dabryanus"
    #>   [65] "Salvia splendens"
    #>   [66] "Carassius carassius"
    #>   [67] "Cyprinus carassius"
    #>   [68] "Vicia villosa"
    #>   [69] "Camellia sinensis"
    #>   [70] "Thea sinensis"
    #>   [71] "Hyperolius riggenbachi"
    #>   [72] "Rappia riggenbachi"
    #>   [73] "Oncorhynchus keta"
    #>   [74] "Salmo keta"
    #>   [75] "Pisum sativum"
    #>   [76] "Salmo salar"
    #>   [77] "Rutidosis leptorhynchoides"
    #>   [78] "Rutidosis leptorrhynchoides"
    #>   [79] "Raphanus sativus"
    #>   [80] "Oncorhynchus kisutch"
    #>   [81] "Oncorhyncus kisutch"
    #>   [82] "Salmo kisatch"
    #>   [83] "Lolium rigidum"
    #>   [84] "Aegilops squarrosa_subsp._squarrosa"
    #>   [85] "Aegilops squarrosa"
    #>   [86] "Aegilops tauschii"
    #>   [87] "Patropyrum tauschii_subsp._tauschii"
    #>   [88] "Patropyrum tauschii"
    #>   [89] "Triticum aegilops"
    #>   [90] "Triticum tauschii"
    #>   [91] "Eleutherodactylus coqui"
    #>   [92] "Salmo trutta"
    #>   [93] "Cryptomeria japonica"
    #>   [94] "Cupressus japonica"
    #>   [95] "Amia calva"
    #>   [96] "Coregonus clupeaformis"
    #>   [97] "Salmo clupeaformis"
    #>   [98] "Oncorhynchus clarkii_lewisi"
    #>   [99] "Oncorhynchus clarki_lewisi"
    #>  [100] "Salar lewisi"
    #>  [101] "Oncorhynchus gorbuscha"
    #>  [102] "Salmo gorbuscha"
    #>  [103] "Cyprinus carpio"
    #>  [104] "Glycine max_subsp._soja"
    #>  [105] "Glycine soja"
    #>  [106] "Salmo fontinalis"
    #>  [107] "Salvelinus fontinalis"
    #>  [108] "Glycine max"
    #>  [109] "Phaseolus max"
    #>  [110] "Pleurodeles waltlii"
    #>  [111] "Pleurodeles waltl"
    #>  [112] "Chenopodium quinoa"
    #>  [113] "Hordeum sativum"
    #>  [114] "Hordeum vulgare_subsp._vulgare"
    #>  [115] "Hordeum vulgare_var._nudum"
    #>  [116] "Hordeum vulgare_var._vulgare"
    #>  [117] "Humulus lupulus"
    #>  [118] "Leuciscus parvus"
    #>  [119] "Pseudorasbora parva"
    #>  [120] "Festuca perennis_(L.)_Columbus_&_J.P.Sm.,_2010"
    #>  [121] "Festuca perennis"
    #>  [122] "Lolium perenne"
    #>  [123] "Lolium vulgare"
    #>  [124] "Gasterosteus pungitius"
    #>  [125] "Pungitius pungitius"
    #>  [126] "Pristiophorus japonicus"
    #>  [127] "Oncorhynchus masou_masou"
    #>  [128] "Salmo masou_masou"
    #>  [129] "Oncorhynchus nerka"
    #>  [130] "Salmo nerka"
    #>  [131] "Crassostrea cucullata"
    #>  [132] "Ostrea cuccullata"
    #>  [133] "Saccostrea cuccullata"
    #>  [134] "Barbus grahami"
    #>  [135] "Sinocyclocheilus grahami"
    #>  [136] "Salmo alpinus"
    #>  [137] "Salvelinus alpinus"
    #>  [138] "Nerophis lumbriciformis"
    #>  [139] "Syngnathus lumbriciformis"
    #>  [140] "Nicotiana sylvestris"
    #>  [141] "Sinocyclocheilus rhinocerous"
    #>  [142] "Nicotiana tomentosiformis"
    #>  [143] "Gossypium arboreum"
    #>  [144] "Brassica oleracea"
    #>  [145] "Malus sylvestris"
    #>  [146] "Pyrus malus_var._sylvestris"
    #>  [147] "Astyanax mexicanus"
    #>  [148] "Tetragonopterus mexicanus"
    #>  [149] "Arachis stenosperma"
    #>  [150] "Prosopis alba"
    #>  [151] "Sinocyclocheilus anshuiensis"
    #>  [152] "Malus communis"
    #>  [153] "Malus domestica"
    #>  [154] "Malus pumila_auct."
    #>  [155] "Malus pumila_var._domestica"
    #>  [156] "Malus sylvestris_var._domestica"
    #>  [157] "Malus x_domestica"
    #>  [158] "Pyrus malus"
    #>  [159] "Pyrus malus_var._domestica"
    #>  [160] "Brassica rapa"
    #>  [161] "Lactuca sativa"
    #>  [162] "Dreissena polymorpha"
    #>  [163] "Mytilus polymorphus"
    #>  [164] "Hydractinia symbiolongicarpus"
    #>  [165] "Triticum urartu"
    #>  [166] "Cornus florida"
    #>  [167] "Hevea brasiliensis"
    #>  [168] "Siphonia brasiliensis"
    #>  [169] "Salvelinus sp._IW2-2015"
    #>  [170] "Oncorhynchus tschawytscha"
    #>  [171] "Oncorhynchus tshawytscha"
    #>  [172] "Salmo tshawytscha"
    #>  [173] "Bombina fusca"
    #>  [174] "Bombinator fuscus"
    #>  [175] "Bufo fuscus"
    #>  [176] "Pelobates fuscus"
    #>  [177] "Rana fusca"
    #>  [178] "Arachis ipaensis"
    #>  [179] "Zea mays"
    #>  [180] "Zea mays_var._japonica"
    #>  [181] "Salmo namaycush"
    #>  [182] "Salvelinus namaycush"
    #>  [183] "Hydra attenuata"
    #>  [184] "Hydra carnea"
    #>  [185] "Hydra littoralis"
    #>  [186] "Hydra magnipapillata"
    #>  [187] "Hydra vulgaris"
    #>  [188] "Lepisosteus oculatus"
    #>  [189] "Mytilus edulis"
    #>  [190] "Arundo australis"
    #>  [191] "Phragmites australis"
    #>  [192] "Phragmites communis"
    #>  [193] "Capsicum annuum"
    #>  [194] "Brienomyrus brachyistius"
    #>  [195] "Marcusenius brachyistius"
    #>  [196] "Ruditapes philippinarum"
    #>  [197] "Ruditapes (Venerupis)_philippinarum"
    #>  [198] "Tapes japonica"
    #>  [199] "Tapes philippinarum"
    #>  [200] "Venerupis japonica"
    #>  [201] "Venerupis philippinarum"
    #>  [202] "Venerupis (Ruditapes)_philippinarum"
    #>  [203] "Venus philippinarum"
    #>  [204] "Convolvulus nil"
    #>  [205] "Ipomoea nil"
    #>  [206] "Pharbitis nil"
    #>  [207] "Lycium barbarum"
    #>  [208] "Olea europaea_subsp._europaea_var._sylvestris"
    #>  [209] "Olea europaea_var._oleaster"
    #>  [210] "Olea europaea_var._sylvestris"
    #>  [211] "Olea europea_subsp._sylvestris"
    #>  [212] "Olea sylvestris"
    #>  [213] "Mytilus trossulus"
    #>  [214] "Alosa sapidissima"
    #>  [215] "Clupea sapidissima"
    #>  [216] "Montipora capricornis"
    #>  [217] "Carpiodes asiaticus"
    #>  [218] "Myxocyprinus asiaticus"
    #>  [219] "Esox malabaricus"
    #>  [220] "Hoplias malabaricus"
    #>  [221] "Macrodon malabaricus"
    #>  [222] "Actinidia eriantha"
    #>  [223] "Gossypium raimondii"
    #>  [224] "Cololabis saira"
    #>  [225] "Scomberesox saira"
    #>  [226] "Catostomus texanus"
    #>  [227] "Xyrauchen texanus"
    #>  [228] "Cambarus clarkii"
    #>  [229] "Procambarus clarkii"
    #>  [230] "Doryrhamphus excisus"
    #>  [231] "Madrepora foliosa"
    #>  [232] "Montipora foliosa"
    #>  [233] "Exopalaemon carinicauda"
    #>  [234] "Palaemon carinicauda"
    #>  [235] "Heptranchias perlo"
    #>  [236] "Squalus perlo"
    #>  [237] "Quercus lobata"
    #>  [238] "Carya illinoensis"
    #>  [239] "Carya illinoinensis"
    #>  [240] "Mercenaria mercenaria"
    #>  [241] "Venus mercenaria"
    #>  [242] "Quercus robur"
    #>  [243] "Durio zibethinus"
    #>  [244] "Acropora copiosa"
    #>  [245] "Acropora muricata"
    #>  [246] "Millepora muricata"
    #>  [247] "Platichthys flesus"
    #>  [248] "Platicthys flesus"
    #>  [249] "Pleuronectes flesus"
    #>  [250] "Haliotis asinina"
    #>  [251] "Alosa pilchardus"
    #>  [252] "Clupea harengus_pilchardus"
    #>  [253] "Clupea pilchardus"
    #>  [254] "Sardina pilchardus"
    #>  [255] "Dendrobates imitator"
    #>  [256] "Ranitomeya imitator"
    #>  [257] "Mya arenaria"
    #>  [258] "Arachis duranensis"
    #>  [259] "Arachis spegazzinii"
    #>  [260] "Pyrus x_bretschneideri"
    #>  [261] "Trifolium pratense"
    #>  [262] "Dasypus fenestratus"
    #>  [263] "Dasypus novemcinctus"
    #>  [264] "Cobitis anguillicaudata"
    #>  [265] "Misgurnus anguillicaudatus"
    #>  [266] "Quercus suber"
    #>  [267] "Scaphiopus bombifrons"
    #>  [268] "Spea bombifrons"
    #>  [269] "Haliotis rufenscens"
    #>  [270] "Haliotis rufescens"
    #>  [271] "Oreochromis nilotica"
    #>  [272] "Oreochromis niloticus"
    #>  [273] "Perca nilotica"
    #>  [274] "Tilapia nilotica"
    #>  [275] "Acropora convexa"
    #>  [276] "Acropora millepora"
    #>  [277] "Acropora singularis"
    #>  [278] "Channa argus"
    #>  [279] "Ophicephalus argus"
    #>  [280] "Ophiocephalus argus"
    #>  [281] "Cebus apella"
    #>  [282] "Sapajus apella"
    #>  [283] "Simia apella"
    #>  [284] "Eucalyptus grandis"
    #>  [285] "Macaca nemestrina"
    #>  [286] "Simia nemestrina"
    #>  [287] "Callithrix jacchus_jacchus"
    #>  [288] "Callithrix jacchus"
    #>  [289] "Simia jacchus"
    #>  [290] "Pyrus balansae"
    #>  [291] "Pyrus communis"
    #>  [292] "Pistacia vera"
    #>  [293] "Pteropus medius"
    #>  [294] "Salvia miltiorhiza"
    #>  [295] "Salvia miltiorrhiza"
    #>  [296] "Daphnia pulicaria"
    #>  [297] "Labrus mixtus"
    #>  [298] "Pongo abelii"
    #>  [299] "Pongo pygmaeus_abelii"
    #>  [300] "Pongo pygmaeus_abeli"
    #>  [301] "Magnolia sinica"
    #>  [302] "Manglietia sinica"
    #>  [303] "Manglietiastrum sinicum"
    #>  [304] "Pachylarnax sinica_(Y.W.Law)_N.H.Xia_&_C.Y.Wu"
    #>  [305] "Lycopersicon esculentum"
    #>  [306] "Lycopersicon esculentum_var._esculentum"
    #>  [307] "Solanum esculentum"
    #>  [308] "Solanum lycopersicum"
    #>  [309] "Solanum lycopersicum_var._humboldtii"
    #>  [310] "Rosa chinensis"
    #>  [311] "Rosa indica_auct.,_non_L."
    #>  [312] "Mytilus californianus"
    #>  [313] "Gorilla gorilla_gorilla"
    #>  [314] "greater Indian_fruit_bat"
    #>  [315] "Pteropus giganteus"
    #>  [316] "Pteropus vampyrus"
    #>  [317] "Vespertilio vampyrus"
    #>  [318] "Chinemys reevesii"
    #>  [319] "Chinemys reevesi"
    #>  [320] "Emys reevesii"
    #>  [321] "Geoclemys reevesii"
    #>  [322] "Geoclemys reevessi"
    #>  [323] "Mauremys reevesii"
    #>  [324] "Mauremys reevesi"
    #>  [325] "Choloepus brasiliensis_Fitzinger_1871"
    #>  [326] "Choloepus brasiliensis"
    #>  [327] "Choloepus didactylus"
    #>  [328] "Bubalus arnee_carabanensis"
    #>  [329] "Bubalus bubalis_carabanesis"
    #>  [330] "Bubalus carabanensis_carabanensis"
    #>  [331] "Bubalus carabanensis"
    #>  [332] "Bubalus kerabau"
    #>  [333] "Lotus corniculatus_var._japonicus"
    #>  [334] "Lotus japonicus"
    #>  [335] "Tupaia belangeri_chinensis"
    #>  [336] "Tupaia chinensis"
    #>  [337] "Clarias gariepinus"
    #>  [338] "Clarias lazera"
    #>  [339] "Silurus gariepinus"
    #>  [340] "Rosa rugosa"
    #>  [341] "Barbus tetrazona"
    #>  [342] "Capoeta tetrazona"
    #>  [343] "Puntigrus tetrazona"
    #>  [344] "Puntius tetrazona"
    #>  [345] "Systomus tetrazona"
    #>  [346] "Lycium ferocissimum"
    #>  [347] "Nicotiana attenuata"
    #>  [348] "Cestracion francisci"
    #>  [349] "Heterodontus francisci"
    #>  [350] "Octodon degus"
    #>  [351] "Sciurus degus"
    #>  [352] "Haliotis rubra"
    #>  [353] "Equus caballus"
    #>  [354] "Equus przewalskii_f._caballus"
    #>  [355] "Equus przewalskii_forma_caballus"
    #>  [356] "Spinacia oleracea"
    #>  [357] "Haliotis cracherodii"
    #>  [358] "Paramecium aurelia_syngen_4"
    #>  [359] "Paramecium tetraurelia"
    #>  [360] "Macaca cynomolgus"
    #>  [361] "Macaca fascicularis"
    #>  [362] "Macaca irus"
    #>  [363] "Simia fascicularis"
    #>  [364] "Salvia hispanica"
    #>  [365] "Medicago truncatula"
    #>  [366] "Crassostrea virginica"
    #>  [367] "Ostrea virginica"
    #>  [368] "Oryza sativa_(japonica_cultivar-group)"
    #>  [369] "Oryza sativa_Japonica_Group"
    #>  [370] "Oryza sativa_subsp._japonica"
    #>  [371] "Felis catus"
    #>  [372] "Felis domesticus"
    #>  [373] "Felis silvestris_catus"
    #>  [374] "Anubis baboon"
    #>  [375] "Papio anubis"
    #>  [376] "Papio cynocephalus_anubis"
    #>  [377] "Papio doguera"
    #>  [378] "Papio hamadryas_anubis"
    #>  [379] "Papio hamadryas_doguera"
    #>  [380] "Simia anubis"
    #>  [381] "Dipodomys merriami"
    #>  [382] "Sorex etruscus"
    #>  [383] "Suncus etruscus"
    #>  [384] "Daucus carota_subsp._sativus"
    #>  [385] "Daucus carota_var._sativus"
    #>  [386] "Mimosa cineraria"
    #>  [387] "Prosopis cineraria"
    #>  [388] "Lepus cuniculus"
    #>  [389] "Oryctolagus cuniculus"
    #>  [390] "Ptychodera erythraea"
    #>  [391] "Ptychodera flava"
    #>  [392] "Nycticebus coucang"
    #>  [393] "Tardigradus coucang"
    #>  [394] "Rhododendron vialii"
    #>  [395] "Nematostella vectensis"
    #>  [396] "Ixodes dammini"
    #>  [397] "Ixodes scapularis"
    #>  [398] "Lupinus angustifolius"
    #>  [399] "Populus nigra"
    #>  [400] "Populus pyramidalis"
    #>  [401] "Littorina saxatilis"
    #>  [402] "Turbo saxatilis"
    #>  [403] "Ipomoea triloba"
    #>  [404] "Pan paniscus"
    #>  [405] "Emiliania huxleyi_CCMP1516"
    #>  [406] "Emiliania huxleyi_CCMP2090"
    #>  [407] "Mangifera indica"
    #>  [408] "Nothobranchius furzeri"
    #>  [409] "Pteropus alecto"
    #>  [410] "Hylobates syndactylus"
    #>  [411] "Simia syndactyla"
    #>  [412] "Symphalangus syndactylus"
    #>  [413] "Rana temporaria"
    #>  [414] "Crassostrea angulata"
    #>  [415] "Gryphaea angulata"
    #>  [416] "Magallana angulata"
    #>  [417] "Etheostoma spectabile"
    #>  [418] "Poecilichthys spectabilis"
    #>  [419] "Macadamia integrifolia"
    #>  [420] "Megalobrama amblycephala"
    #>  [421] "Halichoerus grypus"
    #>  [422] "Phoca grypus"
    #>  [423] "Juglans regia"
    #>  [424] "Kungiselaginella moellendorffii"
    #>  [425] "Selaginella moellendorffii"
    #>  [426] "Selaginella moellendorfii"
    #>  [427] "Pleuronectes platessa"
    #>  [428] "Presbytis francoisi"
    #>  [429] "Trachypithecus francoisi"
    #>  [430] "Diadema antillarum"
    #>  [431] "Tripterygium wilfordii"
    #>  [432] "Dermacentor albipictus"
    #>  [433] "Ixodes albipictus"
    #>  [434] "Aotus nancymaae"
    #>  [435] "Aotus nancymai"
    #>  [436] "Aranea bruennichi"
    #>  [437] "Argiope bruennichi"
    #>  [438] "Rhinichthys klamathensis_goyatoka"
    #>  [439] "Huro salmoides"
    #>  [440] "Labrus salmoides"
    #>  [441] "Labrus salmonides"
    #>  [442] "Micropterus nigricans"
    #>  [443] "Micropterus salmoides"
    #>  [444] "Solanum stenotomum"
    #>  [445] "Heterocephalus glaber"
    #>  [446] "Pongo pygmaeus"
    #>  [447] "Simia pygmaeus"
    #>  [448] "Cavia aperea_porcellus"
    #>  [449] "Cavia cobaya"
    #>  [450] "Cavia porcellus"
    #>  [451] "Mus porcellus"
    #>  [452] "Arius graeffei"
    #>  [453] "Neoarius graeffei"
    #>  [454] "Dendropsophus ebraccatus"
    #>  [455] "Hyla ebraccata"
    #>  [456] "Neosciurus carolinensis"
    #>  [457] "Sciurus carolinensis"
    #>  [458] "Cervus elaphus"
    #>  [459] "Polyodon spathula"
    #>  [460] "Squalus spathula"
    #>  [461] "Gadus chalcogrammus"
    #>  [462] "Theragra chalcogramma"
    #>  [463] "Bos bubalis"
    #>  [464] "Bubalus arnee_bubalis"
    #>  [465] "Bubalus bubalis"
    #>  [466] "Pleuronectes solea"
    #>  [467] "Solea solea"
    #>  [468] "Solea vulgaris"
    #>  [469] "Conger conger"
    #>  [470] "Muraena conger"
    #>  [471] "Mastomys coucha"
    #>  [472] "Praomys coucha"
    #>  [473] "Impatiens glandulifera"
    #>  [474] "Dermacentor andersoni"
    #>  [475] "Felis nebulosa"
    #>  [476] "Neofelis nebulosa"
    #>  [477] "Pteropus egyptiacus"
    #>  [478] "Rousettus aegyptiacus"
    #>  [479] "Rousettus aegypticus"
    #>  [480] "Rousettus egyptiacus"
    #>  [481] "Phoenix dactylifera"
    #>  [482] "Pimephales promelas"
    #>  [483] "Ostrea edulis"
    #>  [484] "Peromyscus maniculatus_bairdii"
    #>  [485] "Populus alba"
    #>  [486] "Trichomycterus rosablanca"
    #>  [487] "Odocoileus virginianus"
    #>  [488] "Petaurus breviceps_papuanus"
    #>  [489] "Petaurus sp._CYF-2022"
    #>  [490] "Cricetus auratus"
    #>  [491] "Golden hamsters"
    #>  [492] "Mesocricetus auratus"
    #>  [493] "Syrian hamsters"
    #>  [494] "Ornithodoros americanus"
    #>  [495] "Ornithodoros turicata_americanus"
    #>  [496] "Ornithodoros turicata"
    #>  [497] "Chromis aureus"
    #>  [498] "Oreochromis aurea"
    #>  [499] "Oreochromis aureus"
    #>  [500] "Dermacentor silvarum"
    #>  [501] "Chanodichthys erythropterus"
    #>  [502] "Cullter erythropterus"
    #>  [503] "Culter erythropterus"
    #>  [504] "Cultrichthys erythropterus"
    #>  [505] "Erythroculter erythropterus"
    #>  [506] "Felis geoffroyi"
    #>  [507] "Leopardus geoffroyi"
    #>  [508] "Oncifelis geoffroyi"
    #>  [509] "Atherina mordax"
    #>  [510] "Osmerus mordax"
    #>  [511] "Entelurus aequoreus"
    #>  [512] "Syngnathus aequoreus"
    #>  [513] "Euphorbia lathyris"
    #>  [514] "Felis yagouaroundi"
    #>  [515] "Herpailurus yagouaroundi"
    #>  [516] "Herpailurus yaguarondi"
    #>  [517] "Puma yagouaroundii"
    #>  [518] "Puma yagouaroundi"
    #>  [519] "Chrysemys bellii"
    #>  [520] "Chrysemys picta_bellii"
    #>  [521] "Chrysemys picta_subsp._bellii"
    #>  [522] "Ovis ammon_aries"
    #>  [523] "Ovis aries"
    #>  [524] "Ovis orientalis_aries"
    #>  [525] "Ovis ovis"
    #>  [526] "Cervus canadensis"
    #>  [527] "Populus diversifolia"
    #>  [528] "Populus euphratica"
    #>  [529] "Cucurbita pepo_subsp._pepo"
    #>  [530] "Cucurbita pepo_var._medullosa"
    #>  [531] "Cucurbita pepo_var._pepo"
    #>  [532] "Emys muticus"
    #>  [533] "Geoclemmys mutica"
    #>  [534] "Mauremys mutica"
    #>  [535] "Coffea eugeniodes"
    #>  [536] "Coffea eugenioides"
    #>  [537] "Suricata suricatta"
    #>  [538] "Viverra suricatta"
    #>  [539] "Hylobates moloch"
    #>  [540] "Simia moloch"
    #>  [541] "Solanum dulcamara"
    #>  [542] "Cucurbita moschata"
    #>  [543] "Clupea encrasicolus"
    #>  [544] "Engraulis encrasicolus"
    #>  [545] "Cucurbita maxima"
    #>  [546] "Macaca thibetana_thibetana"
    #>  [547] "Centropristis striata"
    #>  [548] "Labrus striatus"
    #>  [549] "Cannabis sativa"
    #>  [550] "Bos banteng"
    #>  [551] "Bos javanicus"
    #>  [552] "Bos sondaicus"
    #>  [553] "Panthera onca"
    #>  [554] "Nerophis ophidion"
    #>  [555] "Syngnathus ophidion"
    #>  [556] "Gastrolobium bilobum"
    #>  [557] "Jaculus jaculus"
    #>  [558] "Mus jaculus"
    #>  [559] "Dioscorea cayenensis_subsp._rotundata_(Poir.)_J.Miege,_1968"
    #>  [560] "Dioscorea cayenensis_subsp._rotundata"
    #>  [561] "Dioscorea rotundata"
    #>  [562] "Cercopithecus aethiops_sabaeus"
    #>  [563] "Cercopithecus sabaeus"
    #>  [564] "Cercopithecus sabeus"
    #>  [565] "Chlorocebus aethiops_sabaeus"
    #>  [566] "Chlorocebus aethiops_sabeus"
    #>  [567] "Chlorocebus sabaeus"
    #>  [568] "Chlorocebus sabeus"
    #>  [569] "Simia sabaea"
    #>  [570] "Ovis canadensis"
    #>  [571] "Ostrea echinata"
    #>  [572] "Saccostrea echinata"
    #>  [573] "Sexostrea echinata"
    #>  [574] "Juglans microcarpa_x_Juglans_regia"
    #>  [575] "Marmota monax"
    #>  [576] "Mus monax"
    #>  [577] "Equus caballus_przewalskii"
    #>  [578] "Equus ferus_przewalskii"
    #>  [579] "Equus przewalskii"
    #>  [580] "Pygathrix roxellana"
    #>  [581] "Rhinopithecus roxellana"
    #>  [582] "Semnopithecus roxellana"
    #>  [583] "Callorhinus ursinus"
    #>  [584] "Callorhynus ursius"
    #>  [585] "Phoca ursina"
    #>  [586] "Cricetulus barabensis_griseus"
    #>  [587] "Cricetulus griseus"
    #>  [588] "Elephantulus edwardii"
    #>  [589] "Macroscelides edwardii"
    #>  [590] "Cobitis heteroclita"
    #>  [591] "Fundulus heteroclitus"
    #>  [592] "Neothunnus macropterus"
    #>  [593] "Scomber albacares"
    #>  [594] "Thunnus albacares"
    #>  [595] "Meriones unguiculatus"
    #>  [596] "Telopea speciosissima"
    #>  [597] "Danio aesculapii"
    #>  [598] "Danio sp._'snakeskin'"
    #>  [599] "Danio sp._snakeskin"
    #>  [600] "Apodemus sylvaticus"
    #>  [601] "Mus sylvaticus"
    #>  [602] "Sylvaemus sylvaticus"
    #>  [603] "Populus balsamifera_subsp._trichocarpa"
    #>  [604] "Populus trichocarpa"
    #>  [605] "Cervus dama"
    #>  [606] "Dama dama"
    #>  [607] "Mercurialis ambigua"
    #>  [608] "Mercurialis annua"
    #>  [609] "Eugenia oleosa"
    #>  [610] "Syzygium oleosum"
    #>  [611] "Citellus tridecemlineatus"
    #>  [612] "Ictidomys tridecemlineatus"
    #>  [613] "Sciurus tridecemlineatus"
    #>  [614] "Spermophilus tridecemlineatus"
    #>  [615] "Arctomys flaviventer"
    #>  [616] "Marmota flaviventris"
    #>  [617] "Osmerus eperlanus"
    #>  [618] "Salmo eperlanus"
    #>  [619] "Solanum verrucosum"
    #>  [620] "Felis pardus"
    #>  [621] "Leo pardus"
    #>  [622] "Panthera pardus"
    #>  [623] "Microtus oregoni"
    #>  [624] "Arabidopsis lyrata_subsp._lyrata"
    #>  [625] "Arabis lyrata_subsp._lyrata"
    #>  [626] "Manihot esculenta"
    #>  [627] "Manihot utilissima"
    #>  [628] "Mustela erminea"
    #>  [629] "Dolichos unguiculatus"
    #>  [630] "Phaseolus unguiculatus"
    #>  [631] "Vigna unguiculata"
    #>  [632] "Lycopersicon pennellii_(Correll)_D'Arcy,_1982"
    #>  [633] "Solanum pennellii_Correll,_1958"
    #>  [634] "Solanum pennellii"
    #>  [635] "Panicum viride"
    #>  [636] "Setaria viridis"
    #>  [637] "Bos indicus"
    #>  [638] "Bos primigenius_indicus"
    #>  [639] "Bos taurus_indicus"
    #>  [640] "Gymnostomus macrolepis"
    #>  [641] "Onychostoma macrolepis"
    #>  [642] "Scaphesthes macrolepis"
    #>  [643] "Varicorhinus macrolepis"
    #>  [644] "Varicorhinus (Scaphesthes)_macrolepis"
    #>  [645] "Oryza glaberrima"
    #>  [646] "Phaseolus vulgaris"
    #>  [647] "Pelteobagrus fulvidraco"
    #>  [648] "Pimelodus fulvidraco"
    #>  [649] "Pseudobagrus fulvidraco"
    #>  [650] "Tachysurus fulvidraco"
    #>  [651] "Hylobates concolor_leucogenys"
    #>  [652] "Hylobates concolor_leucogyneus"
    #>  [653] "Hylobates leucogenys_leucogenys"
    #>  [654] "Hylobates leucogenys"
    #>  [655] "Nomascus leucogenys_leucogenys"
    #>  [656] "Nomascus leucogenys"
    #>  [657] "Nomascus leukogenys"
    #>  [658] "Nannospalax ehrenbergi_galili"
    #>  [659] "Nannospalax galili"
    #>  [660] "Spalax galili"
    #>  [661] "Scomber thynnus"
    #>  [662] "Thunnus thynnus"
    #>  [663] "Thunnus maccoyii"
    #>  [664] "Thynnus maccoyii"
    #>  [665] "Equus asinus"
    #>  [666] "Chromis diagramma"
    #>  [667] "Simochromis diagramma"
    #>  [668] "Diplophysa dalaica"
    #>  [669] "Triplophysa dalaica"
    #>  [670] "Felis tigris"
    #>  [671] "Panthera tigris"
    #>  [672] "Echinus purpuratus"
    #>  [673] "Strongylocentrotus purpuratus"
    #>  [674] "Lucioperca lucioperca"
    #>  [675] "Perca lucioperca"
    #>  [676] "Sander lucioperca"
    #>  [677] "Stizostedion lucioperca"
    #>  [678] "Dipodomys spectabilis"
    #>  [679] "Acinonyx jubatus"
    #>  [680] "Felis jubata"
    #>  [681] "Conyza canadensis"
    #>  [682] "Erigeron canadensis"
    #>  [683] "Mustela lutreola"
    #>  [684] "Camelus bactrianus_ferus"
    #>  [685] "Camelus ferus"
    #>  [686] "Aristolochia californica"
    #>  [687] "Crassostrea gigas"
    #>  [688] "Magallana gigas"
    #>  [689] "Ostrea gigas"
    #>  [690] "Cajanus cajan"
    #>  [691] "Dysidea avara"
    #>  [692] "Spongelia avara"
    #>  [693] "Didelphys domestica"
    #>  [694] "Monodelphis domestica"
    #>  [695] "Pygathrix bieti"
    #>  [696] "Rhinopithecus bieti"
    #>  [697] "Saimiri boliviensis"
    #>  [698] "Hesperomys eremicus"
    #>  [699] "Peromyscus eremicus"
    #>  [700] "Arabidopsis salsuginea"
    #>  [701] "Eutrema salsugineum"
    #>  [702] "Hesperis salsuginea"
    #>  [703] "Sisymbrium salsugineum"
    #>  [704] "Stenophragma salsugineum"
    #>  [705] "Thellungiella salsuginea"
    #>  [706] "Thelypodium salsugineum"
    #>  [707] "Coetomys damarensis"
    #>  [708] "Cryptomys damarensis"
    #>  [709] "Fukomys damarensis"
    #>  [710] "Cervus reevesi"
    #>  [711] "Muntiacus reevesi"
    #>  [712] "Limanda limanda"
    #>  [713] "Liopsetta limanda"
    #>  [714] "Pleuronectes limanda"
    #>  [715] "Rhamnus zizyphus"
    #>  [716] "Ziziphus jujuba"
    #>  [717] "Leptonychotes weddellii"
    #>  [718] "Leptonychotes weddelli"
    #>  [719] "Otaria weddellii"
    #>  [720] "Grammomys dolichurus_surdaster"
    #>  [721] "Grammomys surdaster"
    #>  [722] "Thamnomys surdaster"
    #>  [723] "Solanum aracc-papa"
    #>  [724] "Solanum tuberosum"
    #>  [725] "Andropogon sorghum"
    #>  [726] "Holcus bicolor"
    #>  [727] "Sorghum bicolor"
    #>  [728] "Sorghum bicolor_subsp._bicolor"
    #>  [729] "Sorghum nervosum"
    #>  [730] "Sorghum saccharatum"
    #>  [731] "Sorghum vulgare"
    #>  [732] "Madrepora verrucosa"
    #>  [733] "Pocillopora danae"
    #>  [734] "Pocillopora verrucosa"
    #>  [735] "Holocentrus calcarifer"
    #>  [736] "Lates calcarifer"
    #>  [737] "Hippopotamus amphibius_kiboko"
    #>  [738] "Ixodes sanguineus"
    #>  [739] "Rhipicephalus sanguineus"
    #>  [740] "Clupea harengus_harengus"
    #>  [741] "Clupea harengus"
    #>  [742] "Bos indicus_x_Bos_taurus"
    #>  [743] "Bos primigenius_indicus_x_Bos_primigenius_taurus"
    #>  [744] "Bos taurus_indicus_x_Bos_taurus_taurus"
    #>  [745] "Bos taurus_x_Bos_indicus"
    #>  [746] "Chrysochloris asiatica"
    #>  [747] "Talpa asiatica"
    #>  [748] "Bufo bufo"
    #>  [749] "Rana bufo"
    #>  [750] "Pelmatolapia mariae"
    #>  [751] "Tilapia mariae"
    #>  [752] "Maylandia callainos"
    #>  [753] "Maylandia zebra"
    #>  [754] "Metriaclima callainos"
    #>  [755] "Metriaclima zebra"
    #>  [756] "Pseudotropheus callainos"
    #>  [757] "Pseudotropheus sp._'Pseudotropheus_zebra_complex'"
    #>  [758] "Pseudotropheus zebra"
    #>  [759] "Tilapia zebra"
    #>  [760] "Saccopteryx bilineata"
    #>  [761] "Urocryptus bilineatus"
    #>  [762] "Ictalurus punctatus"
    #>  [763] "Silurus punctatus"
    #>  [764] "Trachinotus anak"
    #>  [765] "Antilope dammah"
    #>  [766] "Oryx dammah"
    #>  [767] "Asparagus litoralis"
    #>  [768] "Asparagus officinalis"
    #>  [769] "Amaranthus gangeticus"
    #>  [770] "Amaranthus mangostanus"
    #>  [771] "Amaranthus tricolor"
    #>  [772] "Aequipecten irradians"
    #>  [773] "Argopecten irradians"
    #>  [774] "Pecten irradians"
    #>  [775] "Macrobrachium nipponense"
    #>  [776] "Palaemon nipponense"
    #>  [777] "Pneumatophorus japonicus"
    #>  [778] "Scomber japonicus"
    #>  [779] "Alnus glutinosa"
    #>  [780] "Betula alnus_var._glutinosa"
    #>  [781] "Saccopteryx leptura"
    #>  [782] "Vespertilio lepturus"
    #>  [783] "Lutra lutra"
    #>  [784] "Peromyscus leucopus"
    #>  [785] "Perca fluviatilis"
    #>  [786] "Elephas africanus"
    #>  [787] "Loxodonta africana_africana"
    #>  [788] "Loxodonta africana"
    #>  [789] "Pagothenia bernacchii"
    #>  [790] "Pseudotrematomus bernacchii"
    #>  [791] "Trematomus bernacchii"
    #>  [792] "Trematomus bernacchi"
    #>  [793] "Lipurus cinereus"
    #>  [794] "Phascolarctos cinereus"
    #>  [795] "Anguilla rostrata"
    #>  [796] "Muraena rostrata"
    #>  [797] "Mustela furo"
    #>  [798] "Mustela putorius_furo"
    #>  [799] "Chaetochloa italica"
    #>  [800] "Panicum italicum"
    #>  [801] "Pennisetum macrochaetum"
    #>  [802] "Setaria italica"
    #>  [803] "Setaria viridis_subsp._italica"
    #>  [804] "Elaeis guineensis"
    #>  [805] "Mus rattus"
    #>  [806] "Rattus rattoides"
    #>  [807] "Rattus rattus"
    #>  [808] "Rattus wroughtoni"
    #>  [809] "Acropora digitifera"
    #>  [810] "Madrepora digitifera"
    #>  [811] "Echinops telfairii"
    #>  [812] "Echinops telfairi"
    #>  [813] "Myotis daubentonii"
    #>  [814] "Myotis daubentoni"
    #>  [815] "Vespertilio daubentonii"
    #>  [816] "Limia formosa"
    #>  [817] "Mollienesia formosa"
    #>  [818] "Poecilia formosa"
    #>  [819] "Macrorhinus angustirostris"
    #>  [820] "Mirounga angustirostris"
    #>  [821] "Phyllostomus discolor"
    #>  [822] "Phocoena crassidens"
    #>  [823] "Pseudoorca crassidens"
    #>  [824] "Pseudorca crassidens"
    #>  [825] "Erinaceus europaeus"
    #>  [826] "Hemiscyllium ocellatum"
    #>  [827] "Squalus ocellatus"
    #>  [828] "Microcebus murinus"
    #>  [829] "Peromyscus californicus_insignis"
    #>  [830] "Peromyscus californicus_subsp._insignis"
    #>  [831] "Galago garnettii"
    #>  [832] "Galago garnetti"
    #>  [833] "Otolemur garnettii"
    #>  [834] "Otolicnus garnettii"
    #>  [835] "Arvicanthis niloticus"
    #>  [836] "Mus niloticus"
    #>  [837] "Didelphis ursina"
    #>  [838] "Vombatus ursinus"
    #>  [839] "Phaseolus angularis"
    #>  [840] "Vigna angularis"
    #>  [841] "Haitia acuta"
    #>  [842] "Physa acuta"
    #>  [843] "Physa heterostropha"
    #>  [844] "Physa integra"
    #>  [845] "Physella acuta"
    #>  [846] "Physella heterostropha"
    #>  [847] "Physella integra"
    #>  [848] "Ctenopharyngodon idella"
    #>  [849] "Ctenopharyngodon idellus"
    #>  [850] "Leuciscus idella"
    #>  [851] "Thalassophryne amazonica"
    #>  [852] "Macrobrachium dacqueti_(Sunier,_1925)"
    #>  [853] "Macrobrachium rosenbergii"
    #>  [854] "Palaemon rosenbergii"
    #>  [855] "Cyprinus rohita"
    #>  [856] "Labeo rohita"
    #>  [857] "Talpa occidentalis"
    #>  [858] "Bombina bombina"
    #>  [859] "Rana bombina"
    #>  [860] "Amphibalanus amphitrite"
    #>  [861] "Balanus amphitrite"
    #>  [862] "Cynocephalus volans"
    #>  [863] "Lemur volans"
    #>  [864] "Panicum hallii"
    #>  [865] "Angill angill"
    #>  [866] "Anguilla anguilla_anguilla"
    #>  [867] "Anguilla anguilla"
    #>  [868] "Muraena anguilla"
    #>  [869] "Fringilla domestica"
    #>  [870] "Passer domesticus"
    #>  [871] "Delphinus orca"
    #>  [872] "Orcinus orca"
    #>  [873] "Penaeus bubulus"
    #>  [874] "Penaeus carinatus"
    #>  [875] "Penaeus durbani"
    #>  [876] "Penaeus monodon"
    #>  [877] "Penaeus (Penaeus)_monodon"
    #>  [878] "Didelphis vulpecula"
    #>  [879] "Trichosurus vulpecula"
    #>  [880] "Myotis lucifugus"
    #>  [881] "Vespertilio lucifugus"
    #>  [882] "Brachypodium distachyon"
    #>  [883] "Bromus distachyos"
    #>  [884] "Ailuropoda melanoleuca"
    #>  [885] "Micropterus dolomieu"
    #>  [886] "Micropterus velox"
    #>  [887] "Labrus bergylta"
    #>  [888] "Poecilia mexicana"
    #>  [889] "Manis pentadactyla"
    #>  [890] "Meles meles"
    #>  [891] "Ursus meles"
    #>  [892] "Ornithorhynchus anatinus"
    #>  [893] "Platypus anatinus"
    #>  [894] "Camelus dromedarius"
    #>  [895] "Felis uncia"
    #>  [896] "Panthera uncia"
    #>  [897] "Uncia uncia"
    #>  [898] "Alligator mississippiensis"
    #>  [899] "Crocodilus mississipiensis"
    #>  [900] "Myrmecophaga aculeata"
    #>  [901] "Tachyglossus aculeatus"
    #>  [902] "Pseudochaenichthys georgianus"
    #>  [903] "Colossoma macropomum"
    #>  [904] "Myletes macropomus"
    #>  [905] "Cordylus capensis"
    #>  [906] "Cordylus (Hemicordylus)_capensis"
    #>  [907] "Hemicordylus capensis"
    #>  [908] "Pseudocordylus capensis"
    #>  [909] "Zonurus capensis"
    #>  [910] "Eptesicus fuscus"
    #>  [911] "Vespertilio fuscus"
    #>  [912] "Dromiciops australis"
    #>  [913] "Dromiciops gliroides"
    #>  [914] "Camelus pacos"
    #>  [915] "Lama guanicoe_pacos"
    #>  [916] "Lama pacos"
    #>  [917] "Vicugna pacos"
    #>  [918] "Mollienesia latipinna"
    #>  [919] "Poecilia latipinna"
    #>  [920] "Elephas maximus_indicus"
    #>  [921] "Balaena glacialis"
    #>  [922] "Eubalaena glacialis"
    #>  [923] "Corylus avellana"
    #>  [924] "Ostrea maxima"
    #>  [925] "Pecten maximus"
    #>  [926] "Felis viverrina"
    #>  [927] "Prionailurus viverrinus"
    #>  [928] "Gymnodraco acuticeps"
    #>  [929] "Thalarctos maritimus"
    #>  [930] "Ursus maritimus"
    #>  [931] "Lemur catta"
    #>  [932] "Bodianus pulcher"
    #>  [933] "Labrus pulcher"
    #>  [934] "Semicossyphus pulcher"
    #>  [935] "Lepus capensis_europaeus"
    #>  [936] "Lepus europaeus"
    #>  [937] "Myotis myotis"
    #>  [938] "Vespertilio myotis"
    #>  [939] "Ursus arctos"
    #>  [940] "Vitis riparia"
    #>  [941] "Felis bengalensis"
    #>  [942] "Prionailurus bengalensis"
    #>  [943] "Clethrionomys glareolus"
    #>  [944] "Mus glareolus"
    #>  [945] "Myodes glareolus"
    #>  [946] "Mustela nigripes"
    #>  [947] "Putorius nigripes"
    #>  [948] "Alopex lagopus"
    #>  [949] "Canis lagopus"
    #>  [950] "Vulpes lagopus"
    #>  [951] "Cercocebus atys"
    #>  [952] "Cercocebus torquatus_atys"
    #>  [953] "Simia atys"
    #>  [954] "Lepidosiren annectens"
    #>  [955] "Protopterus annectens"
    #>  [956] "Rhinocryptis annectens"
    #>  [957] "Cerasus avium"
    #>  [958] "Prunus avium"
    #>  [959] "Prunus cerasus_var._avium"
    #>  [960] "Gadus macrocephalus"
    #>  [961] "Hippoglossus olivaceus"
    #>  [962] "Paralichthys olivaceus"
    #>  [963] "Sorex fumeus"
    #>  [964] "Scomber scomber"
    #>  [965] "Scomber scombrus"
    #>  [966] "Beta vulgaris_subsp._vulgaris"
    #>  [967] "Beta vulgaris_subsp._vulgaris_var._altissima"
    #>  [968] "Beta vulgaris_Sugar_Beet_Group"
    #>  [969] "Beta vulgaris_var._altissima"
    #>  [970] "Balaenoptera ricei"
    #>  [971] "Eumetopias jubatus"
    #>  [972] "Phoca jubata"
    #>  [973] "Centruroides sculpturatus"
    #>  [974] "Diceros bicornis_minor"
    #>  [975] "Myotis yumanensis"
    #>  [976] "Vespertilio yumanensis"
    #>  [977] "Cicer arietinum"
    #>  [978] "Cleome hassleriana_Chodat,_1898"
    #>  [979] "Tarenaya hassleriana"
    #>  [980] "Sebastes umbrosus"
    #>  [981] "Sebastichthys umbrosus"
    #>  [982] "Dasyatis sabina"
    #>  [983] "Hypanus sabinus"
    #>  [984] "Trygon sabina"
    #>  [985] "Eriocheir chinensis"
    #>  [986] "Eriocheir japonica_sinensis"
    #>  [987] "Eriocheir sinensis"
    #>  [988] "Lacerta scincoides"
    #>  [989] "Tiliqua scincoides"
    #>  [990] "Cynara cardunculus_subsp._cardunculus"
    #>  [991] "Bos grunniens_mutus"
    #>  [992] "Bos mutus"
    #>  [993] "Poephagus mutus"
    #>  [994] "Acanthopagrus latus"
    #>  [995] "Sparus latus"
    #>  [996] "Xiphophorus hellerii"
    #>  [997] "Xiphophorus helleri"
    #>  [998] "Acanthochromis polyacanthus"
    #>  [999] "Acanthochromis polyacathus"
    #> [1000] "Dascyllus polyacanthus"
    #> [1001] "Mustela vison"
    #> [1002] "Neogale vison"
    #> [1003] "Neovison vison"
    #> [1004] "Lingula anatina"
    #> [1005] "Lingula lingua"
    #> [1006] "Lingula nipponica"
    #> [1007] "Lingula unguis"
    #> [1008] "Glomus irregulare_Blaszk.,_Wubet,_Renker_&_Buscot_2009"
    #> [1009] "Rhizophagus irregularis_(Baszk.,_Wubet,_Renker_&_Buscot)_C._Walker_&_A._Schusler,_2010"
    #> [1010] "Rhizophagus irregularis"
    #> [1011] "Narcine bancroftii"
    #> [1012] "Torpedo bancroftii"
    #> [1013] "Madrepora faveolata"
    #> [1014] "Montastraea faveolata"
    #> [1015] "Montastrea faveolata"
    #> [1016] "Orbicella faveolata"
    #> [1017] "Esox lucius"
    #> [1018] "Austroberyx affinis"
    #> [1019] "Beryx affinis"
    #> [1020] "Centroberyx affinis"
    #> [1021] "Chinchilla lanigera"
    #> [1022] "Chinchilla velligera"
    #> [1023] "Chinchilla villidera"
    #> [1024] "Mirounga leonina"
    #> [1025] "Phoca leonina"
    #> [1026] "Perognathus longimembris_pacificus"
    #> [1027] "Cynocephalus variegatus"
    #> [1028] "Galeopithecus variegatus"
    #> [1029] "Galeopterus variegatus"
    #> [1030] "Desmodus rotundus"
    #> [1031] "Phyllostoma rotundum"
    #> [1032] "Vigna radiata"
    #> [1033] "Characodon multiradiatus"
    #> [1034] "Girardinichthys multiradiatus"
    #> [1035] "Phaseolus calcaratus"
    #> [1036] "Phaseolus chrysanthos"
    #> [1037] "Phaseolus chrysanthus"
    #> [1038] "Vigna calcarata"
    #> [1039] "Vigna umbellata"
    #> [1040] "Balaenoptera acutorostrata"
    #> [1041] "Canis procyonoides"
    #> [1042] "Nyctereutes procyonoides"
    #> [1043] "Amphioxus floridae"
    #> [1044] "Branchiostoma floridae"
    #> [1045] "Moschus berezovskii"
    #> [1046] "Erythranthe guttata"
    #> [1047] "Mimulus guttatus_subsp._guttatus"
    #> [1048] "Mimulus guttatus"
    #> [1049] "Camelus bactrianus"
    #> [1050] "Octopus sinensis"
    #> [1051] "Alexandromys fortis"
    #> [1052] "Microtus fortis"
    #> [1053] "Dendronephthya gigantea"
    #> [1054] "Canis hyaena"
    #> [1055] "Hyaena hyaena"
    #> [1056] "Myxine glutinosa"
    #> [1057] "Physeter catodon"
    #> [1058] "Physeter macrocephalus"
    #> [1059] "Vitis vinifera"
    #> [1060] "Vitis vinifera_subsp._vinifera"
    #> [1061] "Helicophagus hypophthalmus"
    #> [1062] "Pangasianodon hypophthalmus"
    #> [1063] "Pangasius hypophthalmus"
    #> [1064] "Pangasius sutchi"
    #> [1065] "Capsella rubella"
    #> [1066] "Perkinsus marinus_ATCC_50983"
    #> [1067] "Holocentrus leopardus"
    #> [1068] "Plectropomus leopardus"
    #> [1069] "Hippocampus zosterae"
    #> [1070] "Artibeus jamaicensis"
    #> [1071] "Citrus sinensis"
    #> [1072] "Punica granatum"
    #> [1073] "Abrus cyaneus"
    #> [1074] "Abrus precatorius"
    #> [1075] "Polypterus senegalus"
    #> [1076] "Acomys russatus"
    #> [1077] "Mus russatus"
    #> [1078] "Hemibagrus wyckioides"
    #> [1079] "Macrones wyckioides"
    #> [1080] "Mystus wyckioides"
    #> [1081] "Melanotaenia boesemani"
    #> [1082] "Balaenoptera robusta"
    #> [1083] "Eschrichtius gibbosus"
    #> [1084] "Eschrichtius robustus"
    #> [1085] "Sturnira hondurensis"
    #> [1086] "Sturnira ludovici_hondurensis"
    #> [1087] "Amphilophus centrarchus"
    #> [1088] "Archocentrus centrarchus"
    #> [1089] "Cichlasoma centrarchus"
    #> [1090] "Heros centrarchus"
    #> [1091] "Delphinus melas"
    #> [1092] "Globicephala melaena"
    #> [1093] "Globicephala melas"
    #> [1094] "Manis javanica"
    #> [1095] "Phyllostomus hastatus"
    #> [1096] "Vespertilio hastatus"
    #> [1097] "Scyliorhinus canicula"
    #> [1098] "Squalus canicula"
    #> [1099] "Pipistrellus deserti"
    #> [1100] "Pipistrellus kuhlii_deserti"
    #> [1101] "Pipistrellus kuhlii"
    #> [1102] "Pipistrellus kuhli"
    #> [1103] "Vespertilio kuhlii"
    #> [1104] "Silurana tropicalis"
    #> [1105] "Xenopus laevis_tropicalis"
    #> [1106] "Xenopus (Silurana)_tropicalis"
    #> [1107] "Xenopus tropicalis"
    #> [1108] "Solea senegalensis"
    #> [1109] "Branchiostoma lanceolatum"
    #> [1110] "Limax lanceolatus"
    #> [1111] "Mugil cephalotus"
    #> [1112] "Mugil cephalus"
    #> [1113] "Mugil galapagensis"
    #> [1114] "Mugil japonicus"
    #> [1115] "Capra aegagrus_hircus"
    #> [1116] "Capra hircus"
    #> [1117] "Poeciliopsis prolifica"
    #> [1118] "Latimeria chalumnae"
    #> [1119] "Gopherus flavomarginatus"
    #> [1120] "Lontra canadensis"
    #> [1121] "Lutra canadensis"
    #> [1122] "Hesperomys torridus"
    #> [1123] "Onychomys torridus"
    #> [1124] "Boophilus microplus"
    #> [1125] "Rhipicephalus (Boophilus)_microplus"
    #> [1126] "Rhipicephalus microplus"
    #> [1127] "Molossus molossus"
    #> [1128] "Vespertilio molossus"
    #> [1129] "Lagenorhynchus obliquidens"
    #> [1130] "Sagmatias obliquidens"
    #> [1131] "Syngnathus typhle"
    #> [1132] "Delphinus cymodoce"
    #> [1133] "Delphinus truncatus"
    #> [1134] "Tursiops cymodoce"
    #> [1135] "Tursiops truncatus"
    #> [1136] "Antilope sumatraensis"
    #> [1137] "Capricornis sumatraensis"
    #> [1138] "Capricornis sumatrensis"
    #> [1139] "Naemorhedus sumatraensis"
    #> [1140] "Morone flavescens"
    #> [1141] "Perca flavescens"
    #> [1142] "Arvicola nivalis"
    #> [1143] "Chionomys nivalis"
    #> [1144] "Microtus nivalis"
    #> [1145] "Felis rufus"
    #> [1146] "Lynx rufus"
    #> [1147] "Siphostoma scovelli"
    #> [1148] "Syngnathus scovelli"
    #> [1149] "Myotis brandtii"
    #> [1150] "Vespertilio brandtii"
    #> [1151] "Astatotilapia burtoni"
    #> [1152] "Chromis burtoni"
    #> [1153] "Haplochromis burtoni"
    #> [1154] "Sorex araneus"
    #> [1155] "Kogia breviceps"
    #> [1156] "Physeter breviceps"
    #> [1157] "Silurus meridionalis"
    #> [1158] "Silurus soldatovi_meridionalis"
    #> [1159] "Cucumis melo"
    #> [1160] "Anoplopoma fimbria"
    #> [1161] "Gadus fimbria"
    #> [1162] "Lagenorhynchus albirostris"
    #> [1163] "Alosa alosa"
    #> [1164] "Clupea alosa"
    #> [1165] "Chelonia mydas"
    #> [1166] "Testudo mydas"
    #> [1167] "Ctenocephalides felis"
    #> [1168] "Stylophora pistillata"
    #> [1169] "Eulemur rufifrons"
    #> [1170] "Cyrtodiopsis dalmanii"
    #> [1171] "Diopsis dalmanni"
    #> [1172] "Teleopsis dalmanni"
    #> [1173] "Rhagoletis zephyria"
    #> [1174] "Rhodamnia argentea"
    #> [1175] "Gasterosteus aculeatus"
    #> [1176] "Labrus celidotus"
    #> [1177] "Notolabrus celidotus"
    #> [1178] "Budorcas taxicolor"
    #> [1179] "Nelumbo nucifera"
    #> [1180] "Amphiprion ocellaris"
    #> [1181] "Arvicola amphibius"
    #> [1182] "Arvicola terrestris_(Linnaeus,_1758)"
    #> [1183] "Mus amphibius"
    #> [1184] "Daphnia magna"
    #> [1185] "Psammomys obesus"
    #> [1186] "Carlito syrichta"
    #> [1187] "Simia syrichta"
    #> [1188] "Tarsius syrichta"
    #> [1189] "Cyprinodon tularosa"
    #> [1190] "Arvicola princeps"
    #> [1191] "Ochotona princeps"
    #> [1192] "Phytophthora sojae"
    #> [1193] "Phoca vitulina"
    #> [1194] "Coecilia bivitatum"
    #> [1195] "Rhinatrema bivitattum"
    #> [1196] "Rhinatrema bivittatum"
    #> [1197] "Lagomys curzoniae"
    #> [1198] "Ochotona curzonae"
    #> [1199] "Ochotona curzoniae"
    #> [1200] "Litopenaeus vannamei"
    #> [1201] "Penaeus (Litopenaeus)_vannamei"
    #> [1202] "Penaeus vannamei"
    #> [1203] "Clupea cyprinoides"
    #> [1204] "Megalops cyprinoides"
    #> [1205] "Diospyros lotus"
    #> [1206] "Hippoglossus stenolepis"
    #> [1207] "Phacochoerus africanus"
    #> [1208] "Sus africanus"
    #> [1209] "Corythoichthys intestinalis"
    #> [1210] "Syngnatus intestinalis"
    #> [1211] "Mandrillus leucophaeus"
    #> [1212] "Papio leucophaeus"
    #> [1213] "Simia leucophaea"
    #> [1214] "Scylla paramamosain"
    #> [1215] "Lepidosternon floridanum"
    #> [1216] "Rhineura floridana"
    #> [1217] "Delphinus densirostris"
    #> [1218] "Mesoplodon densirostris"
    #> [1219] "Epinephelus fuscoguttatus"
    #> [1220] "Perca summana_fuscoguttata"
    #> [1221] "Asterias miniata"
    #> [1222] "Asterina miniata"
    #> [1223] "Patiria miniata"
    #> [1224] "Lampris incognitus"
    #> [1225] "Monachus schauinslandi"
    #> [1226] "Neomonachus schauinslandi"
    #> [1227] "Hippoglossus hippoglossus"
    #> [1228] "Pleuronectes hippoglossus"
    #> [1229] "Andrographis paniculata"
    #> [1230] "Etheostoma cragini"
    #> [1231] "Perca chuatsi"
    #> [1232] "Siniperca chuatsi"
    #> [1233] "Colobus angolensis_palliatus"
    #> [1234] "Notothenia coriiceps"
    #> [1235] "Hypomesus transpacificus"
    #> [1236] "Clytia hemisphaerica"
    #> [1237] "Clytia languida"
    #> [1238] "Clytia viridicans"
    #> [1239] "Medusa hemisphaerica"
    #> [1240] "Dermochelys coriacea"
    #> [1241] "Testudo coriacea"
    #> [1242] "Bufo bufo_gargarizans"
    #> [1243] "Bufo gargarizans"
    #> [1244] "Bufo japonicus_gargarizans"
    #> [1245] "Equus burchellii_quagga"
    #> [1246] "Equus quagga"
    #> [1247] "Delphinapterus leucas"
    #> [1248] "Delphinus leucas"
    #> [1249] "Fugu flavidus"
    #> [1250] "Takifugu flavidus"
    #> [1251] "Pteronotus mesoamericanus"
    #> [1252] "Pteronotus parnellii_mesoamericanus"
    #> [1253] "Citrus clementina"
    #> [1254] "Citrus deliciosa_x_Citrus_sinensis"
    #> [1255] "Citrus x_clementina"
    #> [1256] "Fugu rubripes"
    #> [1257] "Sphaeroides rubripes"
    #> [1258] "Takifugu rubripes"
    #> [1259] "Tetraodon rubripes"
    #> [1260] "Homarus americanus"
    #> [1261] "Osteoglossum formosum"
    #> [1262] "Scleropages formosus"
    #> [1263] "Larimichthys crocea"
    #> [1264] "Pseudosciaena amblyceps"
    #> [1265] "Pseudosciaena crocea"
    #> [1266] "Sciaena crocea"
    #> [1267] "Fragaria vesca"
    #> [1268] "Folsomia candida"
    #> [1269] "Seriola aureovittata"
    #> [1270] "Seriola lalandi_aureovittata"
    #> [1271] "Helops morio"
    #> [1272] "Zophobas atratus_f._morio"
    #> [1273] "Zophobas morio"
    #> [1274] "Limulus polyphemus"
    #> [1275] "Monoculus polyphemus"
    #> [1276] "Doryrhamphus dactyliophorus"
    #> [1277] "Dunckerocampus dactyliophorus"
    #> [1278] "Syngnathus dactyliophorus"
    #> [1279] "Epinephelus lanceolatus"
    #> [1280] "Holocentrus lanceolatus"
    #> [1281] "Promicrops lanceolatus"
    #> [1282] "Mizuhopecten yessoensis"
    #> [1283] "Patinopecten yessoensis"
    #> [1284] "Patiopecten yessoensis"
    #> [1285] "Pecten yessoensis"
    #> [1286] "Platypoecilus maculatus"
    #> [1287] "Xiphophorus maculatus"
    #> [1288] "Fenneropenaeus indicus"
    #> [1289] "Penaeus (Fenneropenaeus)_indicus"
    #> [1290] "Penaeus indicus"
    #> [1291] "Triplophysa rosa"
    #> [1292] "Pempheris klunzingeri"
    #> [1293] "Antechinus flavipes"
    #> [1294] "Phascogale flavipes"
    #> [1295] "Anolis carolinensis"
    #> [1296] "Delphinus delphis"
    #> [1297] "Anabrus simplex"
    #> [1298] "Apodichthys violaceus"
    #> [1299] "Cebidichthys violaceus"
    #> [1300] "Oryza brachyantha"
    #> [1301] "Emydura macquarii_macquarii"
    #> [1302] "Emys macquaria_macquaria"
    #> [1303] "Tetrahymena thermophila_SB210"
    #> [1304] "Amygdalus communis"
    #> [1305] "Amygdalus dulcis"
    #> [1306] "Prunus amygdalus"
    #> [1307] "Prunus communis"
    #> [1308] "Prunus dulcis"
    #> [1309] "Prunus dulcis_var._sativa"
    #> [1310] "Oryzias latipes"
    #> [1311] "Poecilia latipes"
    #> [1312] "Bagrus vachellii"
    #> [1313] "Pelteobagrus vachellii"
    #> [1314] "Pseudobagrus vachellii"
    #> [1315] "Pseudobagrus vachelli"
    #> [1316] "Tachysurus vachellii"
    #> [1317] "Sarcophilus harrisii"
    #> [1318] "Sarcophilus laniarius_(Owen,_1838)"
    #> [1319] "Sarcophilus laniarius"
    #> [1320] "Ursinus harrisii"
    #> [1321] "Ictalurus furcatus"
    #> [1322] "Pimelodus furcatus"
    #> [1323] "Amphioxus belcheri"
    #> [1324] "Branchiostoma belcheri"
    #> [1325] "Gigantopelta aegis"
    #> [1326] "Echinus variegatus"
    #> [1327] "Lytechinus variegatus"
    #> [1328] "Antennarius striatus"
    #> [1329] "Lophius striatus"
    #> [1330] "Diaphorina citri"
    #> [1331] "Diaphornia citri"
    #> [1332] "Epinephelus moara"
    #> [1333] "Serranus moara"
    #> [1334] "Stegodyphus dumicola"
    #> [1335] "Boleophthalmus pectinirostris"
    #> [1336] "Gobius pectinirostris"
    #> [1337] "Austrofundulus limnaeus"
    #> [1338] "Scypha ciliata"
    #> [1339] "Spongia ciliata"
    #> [1340] "Sycon ciliatum"
    #> [1341] "Pleuronectes maximus"
    #> [1342] "Psetta maxima"
    #> [1343] "Rhombus maximus"
    #> [1344] "Scophthalmus maximus"
    #> [1345] "Sesamum indicum"
    #> [1346] "Sesamum orientale"
    #> [1347] "Clinocottus analis"
    #> [1348] "Oligocottus analis"
    #> [1349] "Necator americanus"
    #> [1350] "Armeniaca mume"
    #> [1351] "Prunus mume"
    #> [1352] "Myotis aurascens"
    #> [1353] "Myotis davidii"
    #> [1354] "Myotis hajastanicus"
    #> [1355] "Vespertilio Davidii"
    #> [1356] "Didelphys agilis"
    #> [1357] "Gracilinanus agilis"
    #> [1358] "Acanthophacelus reticulata"
    #> [1359] "Poecilia (Acanthophacelus)_reticulata"
    #> [1360] "Poecilia latipinna_reticulata"
    #> [1361] "Poecilia reticulata"
    #> [1362] "Armigeres subalbatus"
    #> [1363] "Culex subalbatus"
    #> [1364] "Australorbis glabratus"
    #> [1365] "Biomphalaria glabrata"
    #> [1366] "Planorbis glabratus"
    #> [1367] "Hypudaeus ochrogaster"
    #> [1368] "Microtus ochrogaster"
    #> [1369] "Amygdalus persica"
    #> [1370] "Persica vulgaris"
    #> [1371] "Prunus persica"
    #> [1372] "Prunus persica_var._densa"
    #> [1373] "Xenia sp._Carnegie-2017"
    #> [1374] "Chiloscyllium plagiosum"
    #> [1375] "Scyllium plagiosum"
    #> [1376] "Cheilinus undulatus"
    #> [1377] "Coluber guttatus"
    #> [1378] "Elaphe guttata"
    #> [1379] "Pantherophis guttatus"
    #> [1380] "Phodopus roborovskii"
    #> [1381] "Caenorhabditis remanei"
    #> [1382] "Caenorhabditis vulgaris"
    #> [1383] "Lamprologus brichardi"
    #> [1384] "Neolamprologus brichardi"
    #> [1385] "Eleginops maclovinus"
    #> [1386] "Eleginus maclovinus"
    #> [1387] "Gymnopis unicolor"
    #> [1388] "Microcaecilia unicolor"
    #> [1389] "Rhinatrema unicolor"
    #> [1390] "Sciaena jaculatrix"
    #> [1391] "Toxotes jaculatrix"
    #> [1392] "Emys pileata"
    #> [1393] "Malaclemys terrapin_pileata"
    #> [1394] "Lacerta sicula_raffonei"
    #> [1395] "Podarcis raffoneae"
    #> [1396] "Podarcis raffonei"
    #> [1397] "Podarcis wagleriana_raffonei"
    #> [1398] "Benincasa cerifera"
    #> [1399] "Benincasa hispida"
    #> [1400] "Benincasa pruriens"
    #> [1401] "Cucurbita hispida"
    #> [1402] "Lagenaria siceraria_var._hispida"
    #> [1403] "Dendrobium catenatum"
    #> [1404] "Chaetodon armatus"
    #> [1405] "Enoplosus armatus"
    #> [1406] "Marsupenaeus japonicus"
    #> [1407] "Penaeus japonicus"
    #> [1408] "Penaeus (Marsupenaeus)_japonicus"
    #> [1409] "Penaeus (Melicertus)_japonicus"
    #> [1410] "Chaetodon argus"
    #> [1411] "Scatophagus argus"
    #> [1412] "Anas boschas"
    #> [1413] "Anas domesticus"
    #> [1414] "Anas platyrhynchos_f._domestica"
    #> [1415] "Anas platyrhynchos"
    #> [1416] "Chanos chanos"
    #> [1417] "Mugil chanos"
    #> [1418] "Bison bison_bison"
    #> [1419] "Bos bison_bison"
    #> [1420] "Amblyraja radiata"
    #> [1421] "Raja radiata"
    #> [1422] "Delphinus phocoena"
    #> [1423] "Phocoena phocoena"
    #> [1424] "Phocoenoides phocoena"
    #> [1425] "Amphimedon queenslandica"
    #> [1426] "Hippocampus comes"
    #> [1427] "Hipposideros armiger"
    #> [1428] "Rhinolophus armiger"
    #> [1429] "Cynoglossus (Arelia)_semilaevis"
    #> [1430] "Cynoglossus semilaevis"
    #> [1431] "Alecto japonica"
    #> [1432] "Anneissia japonica"
    #> [1433] "Oxycomanthus japonicus"
    #> [1434] "Ananas comosus"
    #> [1435] "Ananas comosus_var._comosus"
    #> [1436] "Ananas lucidus"
    #> [1437] "Bromelia comosa"
    #> [1438] "Callionymus splendidus"
    #> [1439] "Pterosynchiropus splendidus"
    #> [1440] "Synchiropus splendidus"
    #> [1441] "Neophocaena asiaeorientalis_asiaeorientalis"
    #> [1442] "Pollicipes cornucopia"
    #> [1443] "Pollicipes pollicipes"
    #> [1444] "Pseudoliparis swirei"
    #> [1445] "Blatta americana"
    #> [1446] "Periplaneta americana"
    #> [1447] "Rhincodon typus"
    #> [1448] "Ricinus communis"
    #> [1449] "Ricinus sanguineus"
    #> [1450] "Anomalospiza imberbis"
    #> [1451] "Crithagra imberbis"
    #> [1452] "Phyllopteryx taeniolatus"
    #> [1453] "Syngnatus taeniolatus"
    #> [1454] "Lytechinus pictus"
    #> [1455] "Psammechinus pictus"
    #> [1456] "Brachionichthys hirsutus"
    #> [1457] "Lophius hirsutus"
    #> [1458] "Malania oleifera"
    #> [1459] "Schizoporella aterrima_var._subatra"
    #> [1460] "Watersipora subatra"
    #> [1461] "Heteronota binoei"
    #> [1462] "Heteronotia binoei"
    #> [1463] "Trichomonas foetus"
    #> [1464] "Tritrichomonas foetus"
    #> [1465] "Aedes albopictus"
    #> [1466] "Stegomyia albopicta"
    #> [1467] "Ceratotherium simum_simum"
    #> [1468] "Kryptolebias marmoratus"
    #> [1469] "Rivulus marmoratus"
    #> [1470] "Patella vulgata"
    #> [1471] "Rhagoletis pomonella"
    #> [1472] "Trypanosoma cruzi"
    #> [1473] "Squalus fasciatus"
    #> [1474] "Squalus tigrinus"
    #> [1475] "Stegostoma fasciatum"
    #> [1476] "Stegostoma tigrinum"
    #> [1477] "Cistudo triunguis"
    #> [1478] "Terrapene mexicana_triunguis"
    #> [1479] "Terrapene triunguis"
    #> [1480] "Odobenus rosmarus_divergens"
    #> [1481] "Trichechus divergens"
    #> [1482] "Manatus latirostris"
    #> [1483] "Trichechus manatus_latirostris"
    #> [1484] "Carcharodon carcharias"
    #> [1485] "Squalus carcharias"
    #> [1486] "Macrognathus armatus"
    #> [1487] "Mastacembelus armatus"
    #> [1488] "Theobroma cacao"
    #> [1489] "Diabrotica virgifera_virgifera"
    #> [1490] "Syngnathoides biaculeatus"
    #> [1491] "Syngnathus biaculeatus"
    #> [1492] "Actinia diaphana"
    #> [1493] "Aiptasia pallida"
    #> [1494] "Aiptasia pulchella"
    #> [1495] "Dysactis pallida"
    #> [1496] "Exaiptasia diaphana"
    #> [1497] "Exaiptasia pallida"
    #> [1498] "Syngnathus acus_rubescens"
    #> [1499] "Syngnathus acus"
    #> [1500] "Syngnathus rubescens"
    #> [1501] "Guillardia theta_CCMP2712"
    #> [1502] "Anarrhichthys ocellatus"
    #> [1503] "Caretta caretta"
    #> [1504] "Testudo caretta"
    #> [1505] "Pelodiscus sinensis"
    #> [1506] "Trionyx sinensis"
    #> [1507] "Anas acuta"
    #> [1508] "Xiphias gladius"
    #> [1509] "Cyprinodon variegatus"
    #> [1510] "Alligator sinensis"
    #> [1511] "Morus notabilis"
    #> [1512] "Embiotoca jacksonii"
    #> [1513] "Embiotoca jacksoni"
    #> [1514] "Nymphaea colorata"
    #> [1515] "Lampyris pyralis"
    #> [1516] "Photinus pyralis"
    #> [1517] "Chaetodon trifascialis"
    #> [1518] "Meleagris gallopavo"
    #> [1519] "Pomacea canaliculata"
    #> [1520] "Haplochromis nyererei"
    #> [1521] "Pundamilia nyererei"
    #> [1522] "Dixiphia pipra"
    #> [1523] "Parus pipra"
    #> [1524] "Pipra pipra"
    #> [1525] "Pseudopipra pipra"
    #> [1526] "Caranx dumerili"
    #> [1527] "Seriola dumerili"
    #> [1528] "Macrosteles (Macrosteles)_quadrilineatus"
    #> [1529] "Macrosteles quadrilineatus"
    #> [1530] "Lampetra reissneri"
    #> [1531] "Lethenteron reissneri"
    #> [1532] "Petromyzon reissneri"
    #> [1533] "Enhydra lutris_kenyoni"
    #> [1534] "Fluta alba"
    #> [1535] "Monopterus albus"
    #> [1536] "Muraena alba"
    #> [1537] "Caecilia seraphini"
    #> [1538] "Geotrypetes seraphini"
    #> [1539] "Hypogeophis seraphini"
    #> [1540] "Chaetodon rostratus"
    #> [1541] "Chelmon rostratus"
    #> [1542] "Cucumis sativus"
    #> [1543] "Cyrtodactylus macularius"
    #> [1544] "Eublepharis macularius"
    #> [1545] "Aphelocoma coerulescens"
    #> [1546] "Corvus coerulescens"
    #> [1547] "Felis concolor"
    #> [1548] "Panthera concolor"
    #> [1549] "Puma concolor"
    #> [1550] "Cephalopterus hypostomus"
    #> [1551] "Mobula hypostoma"
    #> [1552] "Cancer chinensis"
    #> [1553] "Fenneropenaeus chinensis"
    #> [1554] "Penaeus chinensis"
    #> [1555] "Pomacentrus partitus"
    #> [1556] "Stegastes partitus"
    #> [1557] "Phascum patens"
    #> [1558] "Physcomitrella patens_subsp._patens"
    #> [1559] "Physcomitrella patens"
    #> [1560] "Physcomitrium patens"
    #> [1561] "Anas jamaicensis"
    #> [1562] "Oxyura jamaicensis"
    #> [1563] "Drosophila miranda"
    #> [1564] "Lottia gigantea"
    #> [1565] "Crotalus tigris"
    #> [1566] "Eurytemora carolleeae"
    #> [1567] "Argentina anserina"
    #> [1568] "Potentilla anserina"
    #> [1569] "Struthio camelus_domesticus"
    #> [1570] "Struthio camelus"
    #> [1571] "Uranotaenia lowii"
    #> [1572] "Cynolebias whitei"
    #> [1573] "Nematolebias whitei"
    #> [1574] "Simpsonichthys whitei"
    #> [1575] "Sceloporus undulatus"
    #> [1576] "Stellio undulatus"
    #> [1577] "Helobdella robusta"
    #> [1578] "Anolis sagrei"
    #> [1579] "Norops sagrei"
    #> [1580] "Styela clava"
    #> [1581] "Manis afer_afer"
    #> [1582] "Orycteropus afer_afer"
    #> [1583] "Leucoraja erinaceus"
    #> [1584] "Raja erinaceus"
    #> [1585] "Phytophthora nicotianae_INRA-310"
    #> [1586] "Brachyistius frenatus"
    #> [1587] "Micrometrus frenatus"
    #> [1588] "Anas olor"
    #> [1589] "Cygnus olor"
    #> [1590] "Lacerta agilis"
    #> [1591] "Phycodurus eques"
    #> [1592] "Phyllopteryx eques"
    #> [1593] "Coluber reginae"
    #> [1594] "Erythrolamprus reginae"
    #> [1595] "Leimadophis reginae"
    #> [1596] "Liophis reginae"
    #> [1597] "Millepora damicornis"
    #> [1598] "Pocillopora caespitosa_laysanensis"
    #> [1599] "Pocillopora damicornis_laysanensis"
    #> [1600] "Pocillopora damicornis"
    #> [1601] "Morone saxatilis"
    #> [1602] "Perca saxatilis"
    #> [1603] "Columba livia_domestica"
    #> [1604] "Columba livia"
    #> [1605] "Miniopterus natalensis"
    #> [1606] "Miniopterus schreibersii_natalensis"
    #> [1607] "Vespertilio natalensis"
    #> [1608] "Buthus vittatus"
    #> [1609] "Centruroides vittatus"
    #> [1610] "Actinia tenebrosa"
    #> [1611] "Neptunus trituberculatus"
    #> [1612] "Portunus (Portunus)_trituberculatus"
    #> [1613] "Portunus trituberculatus"
    #> [1614] "Lacerta vivipara"
    #> [1615] "Zootoca vivipara"
    #> [1616] "Jatropha curcas"
    #> [1617] "Propithecus coquereli"
    #> [1618] "Propithecus verreauxi_coquereli"
    #> [1619] "Amusium balloti"
    #> [1620] "Amusium japonicum_balloti"
    #> [1621] "Pecten balloti"
    #> [1622] "Ylistrum balloti"
    #> [1623] "Emys orbicularis"
    #> [1624] "Testudo orbicularis"
    #> [1625] "Caenorhabditis briggsae"
    #> [1626] "Rhabditis briggsae"
    #> [1627] "Homalodisca coagulata"
    #> [1628] "Homalodisca vitripennis"
    #> [1629] "Tettigonia coagulata"
    #> [1630] "Tettigonia vitripennis"
    #> [1631] "Corticium candelabrum"
    #> [1632] "Python bivittatus"
    #> [1633] "Python molurus_bivittatus"
    #> [1634] "Chrysemys scripta_elegans"
    #> [1635] "Emys elegans"
    #> [1636] "Pseudemys scripta_elegans"
    #> [1637] "Trachemys scripta_elegans"
    #> [1638] "Protobothrops mucrosquamatus"
    #> [1639] "Trigonocephalus mucrosquamatus"
    #> [1640] "Trimeresurus mucrosquamatus"
    #> [1641] "Daphnia pulex"
    #> [1642] "Paramacrobiotus metropolitanus"
    #> [1643] "Lipotes vexillifer"
    #> [1644] "Columba fasciata"
    #> [1645] "Patagioenas fasciata"
    #> [1646] "Petromyzon marinus"
    #> [1647] "Falco albicilla"
    #> [1648] "Haliaeetus albicilla"
    #> [1649] "Poephila guttata"
    #> [1650] "Taeniopygia guttata"
    #> [1651] "Taenopygia guttata"
    #> [1652] "Aplysia californica"
    #> [1653] "Phalaenopsis equestris"
    #> [1654] "Stauroglottis equestris"
    #> [1655] "Palinurus ornatus"
    #> [1656] "Panulirus ornatus"
    #> [1657] "Balanoglossus kowalevskii"
    #> [1658] "Saccoglossus kowalevskii"
    #> [1659] "Saccoglossus kowalevskyi"
    #> [1660] "Momordica charantia"
    #> [1661] "Numida meleagris"
    #> [1662] "Phasianus meleagris"
    #> [1663] "Callorhinchus milii"
    #> [1664] "Halichondria (Halichondria)_panicea"
    #> [1665] "Halichondria panicea"
    #> [1666] "Spongia panicea"
    #> [1667] "Sphaerodactylus townsendi"
    #> [1668] "Achaearanea tepidariorum"
    #> [1669] "Parasteatoda tepidariorum"
    #> [1670] "Theridion tepidariorum"
    #> [1671] "Elgaria multicarinata_webbii"
    #> [1672] "Elgaria multicarinata_webbi"
    #> [1673] "Gerrhonotus webbii"
    #> [1674] "Eutainia elegans"
    #> [1675] "Thamnophis elegans"
    #> [1676] "Corvus hawaiiensis"
    #> [1677] "Manacus candei"
    #> [1678] "Pipra candei"
    #> [1679] "Chamaea fasciata"
    #> [1680] "Parus fasciatus"
    #> [1681] "Pezoporus flaviventris"
    #> [1682] "Pezoporus wallicus_flaviventris_North,_1911"
    #> [1683] "Pezoporus wallicus_flaviventris"
    #> [1684] "Apteryx mantelli"
    #> [1685] "Euleptes europaea"
    #> [1686] "Euleptes europea"
    #> [1687] "Phyllodactylus europaea"
    #> [1688] "Phyllodactylus europaeus"
    #> [1689] "Ptyodactylus caudivolvolus"
    #> [1690] "Megarhinus septentrionalis"
    #> [1691] "Toxorhynchites rutilus_septentrionalis"
    #> [1692] "Altirana parkeri"
    #> [1693] "Nanorana parkeri"
    #> [1694] "Ahaetulla prasina"
    #> [1695] "Dryophis prasinus"
    #> [1696] "Metopolophium dirhodum"
    #> [1697] "Fusarium oxysporum_f._sp._lycopersici_4287"
    #> [1698] "Heteropelma chrysocephalum"
    #> [1699] "Neopelma chrysocephalum"
    #> [1700] "Melanerpes formicivorus"
    #> [1701] "Picus formicivorus"
    #> [1702] "Lathamus discolor"
    #> [1703] "Psittacus discolor"
    #> [1704] "Musca domestica"
    #> [1705] "Acanthopleura japonica"
    #> [1706] "Chiton japonicus"
    #> [1707] "Liolophura japonica"
    #> [1708] "Ascaris longissima"
    #> [1709] "Lineus longissimus"
    #> [1710] "Pristis pectinata"
    #> [1711] "Acinia solidaginis"
    #> [1712] "Eurosta solidaginis"
    #> [1713] "Fringilla melodia_melodia"
    #> [1714] "Melospiza melodia_melodia"
    #> [1715] "Astacus quadricarinatus"
    #> [1716] "Cherax quadricarinatus"
    #> [1717] "Ischnura elegans"
    #> [1718] "Geopsittacus occidentalis"
    #> [1719] "Pezoporus occidentalis"
    #> [1720] "Fringilla chalybeata"
    #> [1721] "Vidua chalybeata"
    #> [1722] "Coturnix coturnix_japanica"
    #> [1723] "Coturnix coturnix_japonica"
    #> [1724] "Coturnix coturnix_Japonicus"
    #> [1725] "Coturnix japonica_japonica"
    #> [1726] "Coturnix japonica"
    #> [1727] "Gekko japonicus"
    #> [1728] "Platydactylus japonicus"
    #> [1729] "Pelecanus carbo"
    #> [1730] "Phalacrocorax carbo"
    #> [1731] "Nilaparvata lugens"
    #> [1732] "Ardea americana"
    #> [1733] "Grus americana"
    #> [1734] "Grus americanus"
    #> [1735] "Aedes camptorhynchus"
    #> [1736] "Culex camptorhynchus"
    #> [1737] "Ochlerotatus camptorhynchus"
    #> [1738] "Ochlerotatus (Ochlerotatus)_camptorhynchus"
    #> [1739] "Harpia harpyja"
    #> [1740] "Vultur harpyja"
    #> [1741] "Pipra filicauda"
    #> [1742] "Herrania umbratica"
    #> [1743] "Ilyonectria robusta"
    #> [1744] "Ramularia robusta"
    #> [1745] "Agelaius tricolor"
    #> [1746] "Icterus tricolor"
    #> [1747] "Cupidonia cupido_pallidicincta"
    #> [1748] "Tympanuchus pallidicinctus"
    #> [1749] "Topomyia yanbarensis"
    #> [1750] "Parus atricapillus"
    #> [1751] "Poecile atricapilla"
    #> [1752] "Poecile atricapillus"
    #> [1753] "Corapipo altera"
    #> [1754] "Candoia aspera"
    #> [1755] "Erebophis aspera"
    #> [1756] "Acyrthosiphon pisum"
    #> [1757] "Acyrthosiphum pisum"
    #> [1758] "Aphis pisum"
    #> [1759] "Saprolegnia parasitica_CBS_223.65"
    #> [1760] "Fringilla macroura"
    #> [1761] "Vidua macroura"
    #> [1762] "Carica papaya"
    #> [1763] "Chiroxiphia lanceolata"
    #> [1764] "Pipra lanceolata"
    #> [1765] "Heliangelus exortis"
    #> [1766] "Trochilus exortis"
    #> [1767] "Euphema bourkii"
    #> [1768] "Neophema bourkii"
    #> [1769] "Neopsephotus bourkii"
    #> [1770] "Octopus bimaculoides"
    #> [1771] "Lagopus muta"
    #> [1772] "Tetrao mutus"
    #> [1773] "Bradysia coprophila"
    #> [1774] "Sciara coprophila"
    #> [1775] "Bucco pusillus"
    #> [1776] "Pogoniulus pusillus"
    #> [1777] "Coluber sirtalis"
    #> [1778] "Thamnophis sirtalis"
    #> [1779] "Falco peregrinus"
    #> [1780] "Falco cherrug"
    #> [1781] "Phytophthora cinnamomi"
    #> [1782] "Leptothorax nylanderi"
    #> [1783] "Temnothorax nylanderi"
    #> [1784] "Burrica mexicana"
    #> [1785] "Carpodacus mexicanus"
    #> [1786] "Fringilla mexicana"
    #> [1787] "Haemorhous mexicanus"
    #> [1788] "Asteracanthion distichum"
    #> [1789] "Asteracanthium distichum"
    #> [1790] "Asterias attenuata"
    #> [1791] "Asterias distichum"
    #> [1792] "Asterias rubens"
    #> [1793] "Asterias stimpsoni"
    #> [1794] "Asterias vulgaris"
    #> [1795] "Fringilla gambellii"
    #> [1796] "Zonotrichia leucophrys_gambelii"
    #> [1797] "Manduca sexta"
    #> [1798] "Sphinx sexta"
    #> [1799] "Pituophis catenifer_annectens"
    #> [1800] "Condylura cristata"
    #> [1801] "Sorex cristatus"
    #> [1802] "Cuculus canorus"
    #> [1803] "Pezoporus wallicus"
    #> [1804] "Aedes aegypti"
    #> [1805] "Aedes (Stegomyia)_aegypti"
    #> [1806] "Culex aegypti"
    #> [1807] "Stegomyia aegypti"
    #> [1808] "Falco naumanni"
    #> [1809] "Corvus kubaryi"
    #> [1810] "Larus tridactylus"
    #> [1811] "Rissa tridactyla"
    #> [1812] "Aphanomyces astaci"
    #> [1813] "Culex (Culex)_pipiens_pallens"
    #> [1814] "Culex pipiens_pallens"
    #> [1815] "Cydia pomonella"
    #> [1816] "Phalaena pomonella"
    #> [1817] "Tenebrio molitor"
    #> [1818] "Accipiter gentilis"
    #> [1819] "Accipiter gentillis"
    #> [1820] "Falco gentilis"
    #> [1821] "Crocodylus porosus"
    #> [1822] "Pterocnemia pennata"
    #> [1823] "Rhea pennata"
    #> [1824] "Amborella trichopoda"
    #> [1825] "Falco biarmicus"
    #> [1826] "Lagopus leucura"
    #> [1827] "Lagopus leucurus"
    #> [1828] "Tetrao leucurus"
    #> [1829] "Falco rusticolus"
    #> [1830] "Chroicocephalus ridibundus"
    #> [1831] "Larus ridibundus"
    #> [1832] "Artemia franciscana"
    #> [1833] "Agaricus tabescens"
    #> [1834] "Armillaria tabescens"
    #> [1835] "Armillariella tabescens"
    #> [1836] "Desarmillaria tabescens"
    #> [1837] "Convoluta roscoffensis"
    #> [1838] "Symsagittifera roscoffensis"
    #> [1839] "Corvus brachyrhynchos"
    #> [1840] "Uloborus diversus"
    #> [1841] "Phytophthora infestans_strain_T30-4"
    #> [1842] "Phytophthora infestans_T30-4"
    #> [1843] "Empidonax traillii"
    #> [1844] "Muscicapa traillii"
    #> [1845] "Bacillus redtenbacheri"
    #> [1846] "Bacillus rossius_redtenbacheri"
    #> [1847] "Motacilla subflava"
    #> [1848] "Prinia subflava"
    #> [1849] "Strix alba"
    #> [1850] "Tyto alba"
    #> [1851] "Parus major"
    #> [1852] "Coccus citri"
    #> [1853] "Phenacoccus citri"
    #> [1854] "Planococcus citri"
    #> [1855] "Caligus salmonis"
    #> [1856] "Lepeophtheirus salmonis_salmonis"
    #> [1857] "Lepeophtheirus salmonis"
    #> [1858] "Fusarium solani"
    #> [1859] "Fusisporium solani"
    #> [1860] "Neocosmospora solani"
    #> [1861] "Muscicapa melanoleuca"
    #> [1862] "Oenanthe hispanica_melanoleuca"
    #> [1863] "Oenanthe melanoleuca"
    #> [1864] "Cuculus curvirostris"
    #> [1865] "Phaenicophaeus curvirostris"
    #> [1866] "Caloenas nicobarica"
    #> [1867] "Columba nicobarica"
    #> [1868] "Gavialis gangeticus"
    #> [1869] "Lacerta gangetica"
    #> [1870] "Daphnia carinata"
    #> [1871] "Aphis gossypii"
    #> [1872] "Ampithoe aztecus"
    #> [1873] "Hyalella azteca"
    #> [1874] "Hyalella knickerbockeri"
    #> [1875] "Colletotrichum lupini"
    #> [1876] "Gloeosporium lupini"
    #> [1877] "Lonchura domestica"
    #> [1878] "Lonchura striata"
    #> [1879] "Loxia striata"
    #> [1880] "Sphaeroforma arctica_JP610"
    #> [1881] "Suillus fuscotomentosus"
    #> [1882] "Mollisia scopiformis"
    #> [1883] "Phialocephala scopiformis"
    #> [1884] "Muscicapa cayanensis"
    #> [1885] "Myiozetetes cayanensis"
    #> [1886] "Hyaloscypha bicolor_E"
    #> [1887] "Melopsittacus undulatus"
    #> [1888] "Psittacus undulatus"
    #> [1889] "Fringilla montana"
    #> [1890] "Passer montanus"
    #> [1891] "Coccinella axyridis"
    #> [1892] "Harmonia axyridis"
    #> [1893] "Aimophila crissalis"
    #> [1894] "Kieneria crissalis"
    #> [1895] "Kieneria crissalis_(Vigors,_1839)"
    #> [1896] "Melozone crissalis"
    #> [1897] "Pipilo crissalis"
    #> [1898] "Pipilo fuscus_crissalis"
    #> [1899] "Molothrus aeneus"
    #> [1900] "Psarocolius aeneus"
    #> [1901] "Conops calcitrans"
    #> [1902] "Stomoxis calcitrans"
    #> [1903] "Stomoxys calcitrans"
    #> [1904] "Anas atrata"
    #> [1905] "Cygnus atratus"
    #> [1906] "Culex fatigans"
    #> [1907] "Culex pipiens_fatigans"
    #> [1908] "Culex pipiens_quinquefasciatus"
    #> [1909] "Culex quinquefasciatus"
    #> [1910] "Drosophila takahashii"
    #> [1911] "Hirundo rustica"
    #> [1912] "Bombyx mori"
    #> [1913] "Phalaena mori"
    #> [1914] "Drosophila suzukii"
    #> [1915] "Leucophenga suzukii"
    #> [1916] "Acanthaster planci"
    #> [1917] "Asterias planci"
    #> [1918] "Molothrus ater"
    #> [1919] "Oriolus ater"
    #> [1920] "Laccaria bicolor_S238N-H82"
    #> [1921] "Anastrepha obliqua"
    #> [1922] "Tephritis obliqua"
    #> [1923] "Grapholitha glycinivorella"
    #> [1924] "Leguminivora glycinivorella"
    #> [1925] "Motacilla atricapilla"
    #> [1926] "Sylvia atricapilla"
    #> [1927] "Ammodromus caudacutus_nelsoni"
    #> [1928] "Ammospiza nelsoni"
    #> [1929] "Nylanderia fulva"
    #> [1930] "Paratrechina fulva"
    #> [1931] "Monocercomonoides exilis"
    #> [1932] "Monocercomonoides sp._PA203"
    #> [1933] "Agelaius phoeniceus"
    #> [1934] "Agelaius phoniceus"
    #> [1935] "Oriolus phoeniceus"
    #> [1936] "Ammodramus caudacutus"
    #> [1937] "Ammospiza caudacuta"
    #> [1938] "Oriolus caudacutus"
    #> [1939] "Colymbus stellatus"
    #> [1940] "Gavia stellata"
    #> [1941] "Musca vetustissima"
    #> [1942] "Euthrips occidentalis"
    #> [1943] "Frankliniella brunnescens"
    #> [1944] "Frankliniella californica"
    #> [1945] "Frankliniella occidentalis_brunnescens"
    #> [1946] "Frankliniella occidentalis"
    #> [1947] "Motacilla alba_alba"
    #> [1948] "Sitophilus oryzae"
    #> [1949] "Corvus cornix_cornix"
    #> [1950] "Fringilla canaria"
    #> [1951] "Serinus canaria"
    #> [1952] "Serinus canarius"
    #> [1953] "Drosophila subpulchrella"
    #> [1954] "Chlamydomonas reinhardtii"
    #> [1955] "Chlamydomonas smithii"
    #> [1956] "Puccinia striiformis_f._sp._tritici"
    #> [1957] "Colius striatus"
    #> [1958] "Heterorhabditis bacteriophora"
    #> [1959] "Anopheles gambiae"
    #> [1960] "Arabidopsis thaliana"
    #> [1961] "Bos taurus"
    #> [1962] "Canis familiaris"
    #> [1963] "Gallus gallus"
    #> [1964] "Pan troglodytes"
    #> [1965] "Escherichia coli"
    #> [1966] "Drosophila melanogaster"
    #> [1967] "Homo sapiens"
    #> [1968] "Mus musculus"
    #> [1969] "Sus scrofa"
    #> [1970] "Rattus norvegicus"
    #> [1971] "Macaca mulatta"
    #> [1972] "Caenorhabditis elegans"
    #> [1973] "Xenopus laevis"
    #> [1974] "Saccharomyces cerevisiae"
    #> [1975] "Danio rerio"

Note that, if `genome_type` is specified to a supported genome, the human / mouse gene ontology annotation will be automatically generated.

What is Mappability and why should I care about it?

For the most part, the SpliceWiz reference can be built with just the FASTA and GTF files. This is sufficient for assessment for most forms of alternative splicing events.

For intron retention, accurate assessment of intron depth is important. However, introns contain many repetitive regions that are difficult to map. We refer to these regions as “mappability exclusions”.

We adopt IRFinder’s algorithm to identify these mappability exclusions. This is determined empirically by generating synthetic reads systematically from the genome, then aligning these reads back to the same genome. Regions that contain less than the expected coverage depth of reads define “mappability exclusions”.

See the vignette: SpliceWiz cookbook for details on how to generate “mappability exclusions” for any genome.
How do I use pre-built mappability exclusions to generate human and mouse references?

For human and mouse genomes, SpliceWiz provides pre-built mappability exclusion references that can be used to build the SpliceWiz reference. SpliceWiz provides these annotations via the `NxtIRFdata` package.

Simply specify the genome in the parameter `genome_type` in the `buildRef()` function (which accepts `hg38`, `hg19`, `mm10` and `mm9`).

Additionally, a reference for non-polyadenylated transcripts is used. This has a minor role in QC of samples (to assess the adequacy of polyA capture).

For example, assuming your genome file `"genome.fa"` and a transcript annotation `"transcripts.gtf"` are in the working directory, a SpliceWiz reference can be built using the built-in `hg38` low mappability regions and non-polyadenylated transcripts as follows:

    ## NOT RUN

    ref_path_hg38 <- "./Reference"
    buildRef(
        reference_path = ref_path_hg38,
        fasta = "genome.fa",
        gtf = "transcripts.gtf",
        genome_type = "hg38"
    )

## Process BAM files using SpliceWiz

The function `SpliceWiz_example_bams()` retrieves 6 example BAM files from ExperimentHub and places a copy of these in the temporary directory.

    bams <- SpliceWiz_example_bams()
    #> Downloading record from hub, as required: NxtIRF/example_bam/02H003
    #> Downloading record from hub, as required: NxtIRF/example_bam/02H025
    #> Downloading record from hub, as required: NxtIRF/example_bam/02H026
    #> Downloading record from hub, as required: NxtIRF/example_bam/02H033
    #> Downloading record from hub, as required: NxtIRF/example_bam/02H043
    #> Downloading record from hub, as required: NxtIRF/example_bam/02H046

What are these example BAM files and how were they generated?
In this vignette, we provide 6 example BAM files. These were generated based on aligned RNA-seq BAMs of 6 samples from the Leucegene AML dataset (GSE67039). Sequences aligned to hg38 were filtered to only include genes aligned to that used to create the chrZ chromosome. These sequences were then re-aligned to the chrZ reference using STAR.
How can I easily locate multiple BAM files?

Often, alignment pipelines process multiple samples. SpliceWiz provides convenience functions to recursively locate all the BAM files in a given folder, and tries to ascertain sample names. Often sample names can be gleaned when: * The BAM files are named by their sample names, e.g. “sample1.bam”, “sample2.bam”. In this case, `level = 0` * The BAM files have generic names but are contained inside parent directories labeled by their sample names, e.g. “sample1/Unsorted.bam”, “sample2/Unsorted.bam”. In this case, `level = 1`

    # as BAM file names denote their sample names
    bams <- findBAMS(tempdir(), level = 0)

    # In the case where BAM files are labelled using sample names as parent
    # directory names (which oftens happens with the STAR aligner), use level = 1

Process these BAM files using SpliceWiz:

    pb_path <- file.path(tempdir(), "pb_output")
    processBAM(
        bamfiles = bams$path,
        sample_names = bams$sample,
        reference_path = ref_path,
        output_path = pb_path
    )

Using the GUI

After building the demo reference as shown in the previous section, start SpliceWiz GUI in demo mode. Then, click the `Experiment` tab from the menu side bar. The following interface will be shown:

The Experiment Panel - GUI

The buttons on the left hand side are as follows:

1. Set the folders containing the SpliceWiz reference, BAM files, and the output (NxtSE) folder
2. Run `processBAM` (process BAM files)
3. Import annotations from a tabular text file (such as a csv file)
4. Settings for `collateData` - collating the experiment
5. Run `collateData` (collating the experiment)
6. Import/Export current sample annotations from/to the NxtSE folder, or export annotations as a csv file
7. Set the number of threads used to run `processBAM` and `collateData functions

Also, (8) is a row of tabs that toggle between different tables, showing details of the Reference, BAM files, processBAM output Files, and sample Annotations

To continue with our example, click on (1) `Define Project Folders` to bring up the following drop-down box:

Define Project Folders

We need to define the folders that contain our reference, BAM files, as well as the experiment (NxtSE) output folder for the final compiled experiment

- Click on `Choose Reference Folder` and select the `Reference` directory (where the SpliceWiz reference was generated by the previous step. Then,
- Click on `Choose BAM Folder` and select the `bams` directory (where the demo BAM files have been generated).
- Click on `Choose / Create Experiment (NxtSE) Folder` and select the `NxtSE` directory (which should currently be empty except for the `pbOutput` subdirectory). Note that when an Experiment folder is chosen via this step, a `pbOutput` subdirectory will be created if it does not already exist

After our folders have been defined, on the right hand side, an interactive table should be displayed that looks like the following:

Running processBAM

To process the example BAM files, first make sure the BAM files you wish to process have been selected (BAM files can be unselected by removing the ticks in the `selected` column). Also, users have the option of renaming the samples (by setting the names in the `sampleName` column).

To continue with our example, lets leave the names as-is. Click the `Process Selected BAMs` button. A prompt should pop up asking for confirmation. Click `OK` to start running processBAM.

What is the `processBAM()` function

SpliceWiz’s `processBAM()` function can process one or more BAM files. This function is ultra-fast, relying on an internal native C++ function that uses OpenMP multi-threading (via the `ompBAM` C++ API).

Input BAM files can be either read-name sorted or coordinate sorted (although SpliceWiz prefers the former). Indexing of coordinate-sorted BAMs are not necessary.

`processBAM()` loads the SpliceWiz reference. Then, it reads each BAM file in their entirety, and quantifies the following:

- Basic QC parameters including number of reads, directionality, etc
- Counts of gapped (junction) reads / fragments
- Intron coverage depths and other parameters (identical output to IRFinder)
- COV files (which are like BigWig files but record strand-specific coverage)
- Miscellaneous quants including coverage of chromosomes, intergenic regions, rRNAs, and non-polyadenylated regions

For each BAM file, `processBAM()` generates two output files. The first is a gzipped text file containing all the quantitation data. The second is a `COV` file which contains the per-nucleotide RNA-seq coverage of the sample.
More details on the `processBAM()` function

At minimum, `processBAM()` requires four parameters:

- `bamfiles` : The paths of the BAM files
- `sample_names` : The sample names corresponding to the given BAM files
- `reference_path` : The directory containing the SpliceWiz reference
- `output_path` : The directory where the output of `processBAM()` should go

    pb_path <- file.path(tempdir(), "pb_output")
    processBAM(
        bamfiles = bams$path,
        sample_names = bams$sample,
        reference_path = ref_path,
        output_path = pb_path
    )

`processBAM()` also takes several optional, but useful, parameters:

- `n_threads` : The number of threads for multi-threading
- `overwrite` : Whether existing files in the output directory should be overwritten
- `run_featureCounts` : (Requires the Rsubread package) runs featureCounts to obtain gene counts (which outputs results as an RDS file)

For example, to run `processBAM()` using 2 threads, disallow overwrite of existing `processBAM()` outputs, and run featureCounts afterwards, one would run the following:

    # NOT RUN

    # Re-run IRFinder without overwrite, and run featureCounts
    require(Rsubread)

    processBAM(
        bamfiles = bams$path,
        sample_names = bams$sample,
        reference_path = ref_path,
        output_path = pb_path,
        n_threads = 2,
        overwrite = FALSE,
        run_featureCounts = TRUE
    )

    # Load gene counts
    gene_counts <- readRDS(file.path(pb_path, "main.FC.Rds"))

    # Access gene counts:
    gene_counts$counts

## Collate the experiment

The helper function `findSpliceWizOutput()` organises the output files of SpliceWiz’s `processBAM()` function. It identifies matching `"txt.gz"` and `"cov"` files for each sample, and organises these file paths conveniently into a 3-column data frame:

    expr <- findSpliceWizOutput(pb_path)

Using this data frame, collate the experiment using `collateData()`. We name the output directory as `NxtSE_output` as this folder will contain the data needed to import the NxtSE object:

    nxtse_path <- file.path(tempdir(), "NxtSE_output")
    collateData(
        Experiment = expr,
        reference_path = ref_path,
        output_path = nxtse_path
    )

What is the `collateData()` function

`collateData()` combines the `processBAM()` output files of multiple samples and builds a single database. `collateData()` creates a number of files in the chosen output directory. These outputs can then be imported into the R session as a `NxtSE` data object for downstream analysis.

At minimum, `collateData()` takes the following parameters:

- `Experiment` : The 2- or 3- column data frame. The first column should contain (unique) sample names. The second and (optional) third columns contain the `"txt.gz"` and `"cov"` file paths
- `reference_path` : The directory containing the SpliceWiz reference
- `output_path` : The directory where the output of `processBAM()` should go

`collateData()` can take some optional parameters:

- `IRMode` : Whether to use SpliceWiz’s `SpliceOver` method, or IRFinder’s `SpliceMax` method, to determine total spliced transcript abundance. Briefly, `SpliceMax` considers junction reads that have either flanking splice site coordinate. `SpliceOver` considers additional junction reads that splices across exon clusters in common. Exon clusters are groups of mutually-overlapping exons. `SpliceOver` is the default option.
- `overwrite` : Whether files in the output directory should be overwritten
- `n_threads` : Use multi-threaded operations where possible
- `lowMemoryMode` : Minimise memory usage where possible. Note that most of the collateData pipeline will be single-threaded if this is set to `TRUE`.

`collateData()` is a memory-intensive operation when run using multiple threads. We estimate it can use up to 6-7 Gb per thread. `lowMemoryMode` will minimise RAM usage to ~ 8 Gb, but will be slower and run on a single thread.
Enabling novel splicing detection

Novel splicing detection can be switched on by setting `novelSplicing = TRUE` from within the `collateData()` function:

    # Modified pipeline - collateData with novel ASE discovery:

    nxtse_path <- file.path(tempdir(), "NxtSE_output_novel")
    collateData(
        Experiment = expr,
        reference_path = ref_path,
        output_path = nxtse_path,
        novelSplicing = TRUE     ## NEW ##
    )

`collateData()` uses split reads that are not annotated introns to help construct hypothetical minimal transcripts. These are then injected into the original transcriptome annotation (GTF) file, whereby the SpliceWiz reference is rebuilt. The new SpliceWiz reference (which contains these novel transcripts) is then used to collate the samples.

To reduce false positives in novel splicing detection, SpliceWiz provides several filters to reduce the number of novel junctions fed into the analysis:

- Novel junctions that are lowly expressed (only in a small number of samples) are removed. The minimum number of samples required to retain a novel junction is set using `novelSplicing_minSamples` parameter
- Alternately, junctions are retained if its expression exceeds a certain threshold (set using `novelSplicing_countThreshold`) in a smaller number of samples (set using `novelSplicing_minSamplesAboveThreshold`)
- Further, novel junctions can be filtered by requiring at least one end to be an annotated splice site (this is enabled using `novelSplicing_requireOneAnnotatedSJ = TRUE`).

For example, if one wished to retain novel reads seen in 3 or more samples, or novel spliced reads with 10 or more counts in at least 1 sample, and requiring at least one end of a novel junction being an annotated splice site:

By default, tandem junction reads (reads that align across two or more splice junctions) are used to detect novel exons. This can be turned off by setting `novelSplicing_useTJ = FALSE`.

    nxtse_path <- file.path(tempdir(), "NxtSE_output_novel")
    collateData(
        Experiment = expr,
        reference_path = ref_path,
        output_path = nxtse_path,

            ## NEW ##
        novelSplicing = TRUE,
            # switches on novel splice detection

        novelSplicing_requireOneAnnotatedSJ = TRUE,
            # novel junctions must share one annotated splice site

        novelSplicing_minSamples = 3,
            # retain junctions observed in 3+ samples (of any non-zero expression)

        novelSplicing_minSamplesAboveThreshold = 1,
            # only 1 sample required if its junction count exceeds a set threshold
        novelSplicing_countThreshold = 10  ,
            # threshold for previous parameter

        novelSplicing_useTJ = TRUE
            # whether tandem junction reads should be used to identify novel exons
    )

Using the GUI to annotate the experiment

After running the Reference and processBAM steps as indicated in the previous sections (of the GUI instructions), there is an option to assign annotations to the experiment prior to collation. Annotations can be assigned from existing tabular files (such as csv files). For this example, we will demonstrate how to use a csv file containing annotations to annotate our experiment. Note that the annotation table should contain matching sample names in its leftmost column.

To select a file containing annotations, click on `Import Annotations from file`, then select the `demo_annotations.csv` file that should be in the working directory. Press ok. Your interface should now look like this:

Importing annotations

Note that an extra button `Add / Remove Annotation Columns` (*) has appeared. Clicking on this button allows us to add/remove annotation columns

Adding annotation columns

Using this panel, columns can be added or removed by clicking their corresponding buttons. Data types for columns can also be defined here.
Using the GUI to collate the experiment

After annotating the experiment in the step above, click on the `Experiment Settings` button. Then enable `Look for Novel Splicing` to bring up the following display:

Customizing the Experiment Settings

This drop-down dialog box contains several parameters related to novel splicing detection:

1. Toggle on/off novel splice detection
2. Restrict novel junction reads to having one annotated splice site
3. Filter novel junction counts based on the number of samples in which the novel junction was observed (any non-zero amount)
4. Filter novel junction counts based on expression threshold (min number of samples set here)
5. Threshold junction read count (expression threshold based novel junction filter)
6. Whether to utilize tandem junction to define novel exons

Also, there is an option (7) to overwrite a previously-compiled NxtSE in the same folder. There is also an option to clear all the Reference/BAM/NxtSE folders (8).

For this example, we will leave the settings as above. Proceed to run collateData() by clicking on `Collate Experiment`. After several moments, a pop-up message should be shown when the experiment has been successfully collated.

## Importing the experiment

Before differential analysis can be performed, the collated experiment must be imported into the R session as an `NxtSE` data object.

After running `collateData()`, import the experiment using the `makeSE()` function:

    se <- makeSE(nxtse_path)

Using the GUI

After running the steps in the previous GUI sections, navigate to `Analysis` and then click the `Load Experiment` on the menu bar. The display should look like this:

Analysis - Loading the Experiment - GUI

The buttons on the left hand side are as follows:

1. Select the NxtSE folder containing the collated experiment
2. Import annotations from file (tabular format such as csv file)
3. Load NxtSE from folder (into current session for downstream analysis)
4. After NxtSE has been loaded, it can be saved as an RDS file to send to collaborators (note that COV files will be disconnected once the file has been moved to a different location; it is best to give your collaborators the NxtSE folder instead, with the COV files inside the `pbOutput` subdirectory)
5. Load NxtSE from RDS file (saved via the prior step)

To continue with our example, click the `Select Experiment (NxtSE) Folder`, then select the `NxtSE` directory. The interface should now look like this:

Loading the NxtSE after reviewing the samples and annotations - GUI

To view any existing annotations, click the `Annotations` tab in the `Experiment Display` above the sample table. If you followed the prior steps in the `Collate the experiment` section, there should already be annotations here. If not, feel free to add annotations using the `Import Annotations from File` (and click on “demo_annotations.csv” file), or manually add and annotate columns by clicking on the `Add / Remove Annotation Columns` button to open the drop-down box.

To load the NxtSE object, click the `Load NxtSE from Folder` to which will load the NxtSE object into the current session. A pop-up will appear once the NxtSE object has been successfully completed.

What is the `makeSE()` function
The `makeSE()` function imports the compiled data generated by the `collateData()` function. Data is imported as an `NxtSE` object. Downstream analysis, including differential analysis and visualization, is performed using the `NxtSE` object.
More details about the `makeSE()` function

By default, `makeSE()` uses delayed operations to avoid consuming memory until the data is actually needed. This is advantageous in analysis of hundreds of samples on a computer with limited resources. However, it will be slower. To load all the data into memory, we need to “realize” the NxtSE object, as follows:

    se <- realize_NxtSE(se)

Alternatively, `makeSE()` can realize the NxtSE object at construction:

    se <- makeSE(nxtse_path, realize = TRUE)

By default, `makeSE()` constructs the NxtSE object using all the samples in the collated data. It is possible (and particularly useful in large data sets) to read only a subset of samples. In this case, construct a data frame object with the first column containing the desired sample names and parse this into the `colData` parameter as shown:

    subset_samples <- colnames(se)[1:4]
    df <- data.frame(sample = subset_samples)
    se_small <- makeSE(nxtse_path, colData = df, RemoveOverlapping = TRUE)

In complex transcriptomes including those of human and mouse, alternative splicing implies that introns are often overlapping. Thus, algorithms run the risk of over-calling intron retention where overlapping introns are assessed. SpliceWiz removes overlapping introns by considering only introns belonging to the major splice isoforms. It estimates a list of introns of major isoforms by assessing the compatible splice junctions of each isoform, and removes overlapping introns belonging to minor isoforms. To disable this functionality, set `RemoveOverlapping = FALSE`.

## Differential analysis

### Assigning annotations to samples

    colData(se)$condition <- rep(c("A", "B"), each = 3)
    colData(se)$batch <- rep(c("K", "L", "M"), 2)

NB: to add annotations via the GUI workflow, see the `Collate the experiment` section.

Saving and reloading the NxtSE as an RDS file (GUI)

Once an NxtSE object has been loaded into memory, you can save it as an RDS object so it can be reloaded in a later session. To do this, click the `Save NxtSE as RDS` button. Choose a file name and location and press `OK`. This RDS file can be loaded as an NxtSE object in a later GUI session by clicking the `Load NxtSE from RDS` button.

What is the `NxtSE` object

`NxtSE` is a data object which contains all the required data for downstream analysis after all the BAM alignment files have been process and the experiment is collated.

    se
    #> class: NxtSE
    #> dim: 167 6
    #> metadata(14): Up_Inc Down_Inc ... ref row_gr
    #> assays(5): Included Excluded Depth Coverage minDepth
    #> rownames(167): TRA2B/ENST00000453386_Intron8/clean
    #>   TRA2B/ENST00000453386_Intron7/clean ...
    #>   RI:SRSF2-203-exon2;SRSF2-202-intron2
    #>   RI:SRSF2-203-exon2;SRSF2-206-intron1
    #> rowData names(20): EventName EventType ... is_annotated_IR
    #>   NMD_direction
    #> colnames(6): 02H003 02H025 ... 02H043 02H046
    #> colData names(2): condition batch

The `NxtSE` object inherits the `SummarizedExperiment` object. This means that the functions for SummarizedExperiment can be used on the NxtSE object. These include row and column annotations using the `rowData()` and `colData()` accessors.

Rows in the `NxtSE` object contain information about each alternate splicing event. For example:

    head(rowData(se))
    #> DataFrame with 6 rows and 20 columns
    #>                                                  EventName   EventType
    #>                                                <character> <character>
    #> TRA2B/ENST00000453386_Intron8/clean TRA2B/ENST0000045338..          IR
    #> TRA2B/ENST00000453386_Intron7/clean TRA2B/ENST0000045338..          IR
    #> TRA2B/ENST00000453386_Intron6/clean TRA2B/ENST0000045338..          IR
    #> TRA2B/ENST00000453386_Intron5/clean TRA2B/ENST0000045338..          IR
    #> TRA2B/ENST00000453386_Intron4/clean TRA2B/ENST0000045338..          IR
    #> TRA2B/ENST00000453386_Intron3/clean TRA2B/ENST0000045338..          IR
    #>                                          EventRegion         gene_id
    #>                                          <character>     <character>
    #> TRA2B/ENST00000453386_Intron8/clean chrZ:1921-2559/- ENSG00000136527
    #> TRA2B/ENST00000453386_Intron7/clean chrZ:2634-3631/- ENSG00000136527
    #> TRA2B/ENST00000453386_Intron6/clean chrZ:3692-5298/- ENSG00000136527
    #> TRA2B/ENST00000453386_Intron5/clean chrZ:5383-6205/- ENSG00000136527
    #> TRA2B/ENST00000453386_Intron4/clean chrZ:6322-7990/- ENSG00000136527
    #> TRA2B/ENST00000453386_Intron3/clean chrZ:8180-9658/- ENSG00000136527
    #>                                           gene_id_b              intron_id
    #>                                         <character>            <character>
    #> TRA2B/ENST00000453386_Intron8/clean ENSG00000136527 ENST00000453386_Intr..
    #> TRA2B/ENST00000453386_Intron7/clean ENSG00000136527 ENST00000453386_Intr..
    #> TRA2B/ENST00000453386_Intron6/clean ENSG00000136527 ENST00000453386_Intr..
    #> TRA2B/ENST00000453386_Intron5/clean ENSG00000136527 ENST00000453386_Intr..
    #> TRA2B/ENST00000453386_Intron4/clean ENSG00000136527 ENST00000453386_Intr..
    #> TRA2B/ENST00000453386_Intron3/clean ENSG00000136527 ENST00000453386_Intr..
    #>                                     Inc_Is_Protein_Coding Exc_Is_Protein_Coding
    #>                                                 <logical>             <logical>
    #> TRA2B/ENST00000453386_Intron8/clean                  TRUE                  TRUE
    #> TRA2B/ENST00000453386_Intron7/clean                  TRUE                  TRUE
    #> TRA2B/ENST00000453386_Intron6/clean                  TRUE                  TRUE
    #> TRA2B/ENST00000453386_Intron5/clean                  TRUE                  TRUE
    #> TRA2B/ENST00000453386_Intron4/clean                  TRUE                  TRUE
    #> TRA2B/ENST00000453386_Intron3/clean                  TRUE                  TRUE
    #>                                     Exc_Is_NMD Inc_Is_NMD     Inc_TSL
    #>                                      <logical>  <logical> <character>
    #> TRA2B/ENST00000453386_Intron8/clean      FALSE       TRUE           1
    #> TRA2B/ENST00000453386_Intron7/clean      FALSE       TRUE           1
    #> TRA2B/ENST00000453386_Intron6/clean      FALSE       TRUE           1
    #> TRA2B/ENST00000453386_Intron5/clean      FALSE       TRUE           1
    #> TRA2B/ENST00000453386_Intron4/clean      FALSE       TRUE           1
    #> TRA2B/ENST00000453386_Intron3/clean      FALSE       TRUE           1
    #>                                         Exc_TSL          Event1a     Event2a
    #>                                     <character>      <character> <character>
    #> TRA2B/ENST00000453386_Intron8/clean           1 chrZ:1921-2559/-          NA
    #> TRA2B/ENST00000453386_Intron7/clean           1 chrZ:2634-3631/-          NA
    #> TRA2B/ENST00000453386_Intron6/clean           1 chrZ:3692-5298/-          NA
    #> TRA2B/ENST00000453386_Intron5/clean           1 chrZ:5383-6205/-          NA
    #> TRA2B/ENST00000453386_Intron4/clean           1 chrZ:6322-7990/-          NA
    #> TRA2B/ENST00000453386_Intron3/clean           1 chrZ:8180-9658/-          NA
    #>                                         Event1b     Event2b
    #>                                     <character> <character>
    #> TRA2B/ENST00000453386_Intron8/clean          NA          NA
    #> TRA2B/ENST00000453386_Intron7/clean          NA          NA
    #> TRA2B/ENST00000453386_Intron6/clean          NA          NA
    #> TRA2B/ENST00000453386_Intron5/clean          NA          NA
    #> TRA2B/ENST00000453386_Intron4/clean          NA          NA
    #> TRA2B/ENST00000453386_Intron3/clean          NA          NA
    #>                                     is_always_first_intron
    #>                                                  <logical>
    #> TRA2B/ENST00000453386_Intron8/clean                  FALSE
    #> TRA2B/ENST00000453386_Intron7/clean                  FALSE
    #> TRA2B/ENST00000453386_Intron6/clean                  FALSE
    #> TRA2B/ENST00000453386_Intron5/clean                  FALSE
    #> TRA2B/ENST00000453386_Intron4/clean                  FALSE
    #> TRA2B/ENST00000453386_Intron3/clean                  FALSE
    #>                                     is_always_last_intron is_annotated_IR
    #>                                                 <logical>       <logical>
    #> TRA2B/ENST00000453386_Intron8/clean                 FALSE           FALSE
    #> TRA2B/ENST00000453386_Intron7/clean                 FALSE           FALSE
    #> TRA2B/ENST00000453386_Intron6/clean                 FALSE           FALSE
    #> TRA2B/ENST00000453386_Intron5/clean                 FALSE           FALSE
    #> TRA2B/ENST00000453386_Intron4/clean                 FALSE            TRUE
    #> TRA2B/ENST00000453386_Intron3/clean                 FALSE           FALSE
    #>                                     NMD_direction
    #>                                         <numeric>
    #> TRA2B/ENST00000453386_Intron8/clean             1
    #> TRA2B/ENST00000453386_Intron7/clean             1
    #> TRA2B/ENST00000453386_Intron6/clean             1
    #> TRA2B/ENST00000453386_Intron5/clean             1
    #> TRA2B/ENST00000453386_Intron4/clean             1
    #> TRA2B/ENST00000453386_Intron3/clean             1

Columns contain information about each sample. By default, no annotations are assigned to each sample. These can be assigned as shown above.

Also, `NxtSE` objects can be subsetted by rows (ASEs) or columns (samples). This is useful if one wishes to perform analysis on a subset of the dataset, or only on a subset of ASEs (say for example, only skipped exon events). Subsetting is performed just like for `SummarizedExperiment` objects:

    # Subset by columns: select the first 2 samples
    se_sample_subset <- se[,1:2]

    # Subset by rows: select the first 10 ASE events
    se_ASE_subset <- se[1:10,]

### Filtering high-confidence events

SpliceWiz offers default filters to identify and remove low confidence alternative splice events (ASEs). Run the default filter using the following:

    se.filtered <- se[applyFilters(se),]
    #> Running Depth filter
    #> Running Participation filter
    #> Running Participation filter
    #> Running Consistency filter
    #> Running Terminus filter
    #> Running ExclusiveMXE filter
    #> Running StrictAltSS filter

Using the GUI

After following the GUI tutorials in the prior sections, click on `Analysis` and then `Filters` from the menu bar. It should look like this:

Analysis - Filters - GUI

To load SpliceWiz’s default filters, click the top right button `Load Default Filters`. Then to apply these filters to the NxtSE, click `Apply Filters`. After the filters have been run, your session should now look like this:

SpliceWiz default filters - GUI

Why do we need to filter alternative splicing events?

Often, the gene annotations contain isoforms for all discovered splicing events. Most annotated transcripts are not expressed, and their inclusion in differential analysis complicates results including adjusting for multiple testing. It is prudent to filter these out using various approaches, akin to removing genes with low gene counts in differential gene analysis. We suggest using the default filters which work well for small experiments with sequencing depths at 100-million paired-end reads.

To learn more about filters, consult the documentation via `?ASEFilters`

### Performing differential analysis

Using the edgeR wrapper `ASE_edgeR()`, perform differential ASE analysis between conditions “A” and “B”:

    # Requires edgeR to be installed:
    require("edgeR")
    res_edgeR <- ASE_edgeR(
        se = se.filtered,
        test_factor = "condition",
        test_nom = "B",
        test_denom = "A"
    )

Using the GUI

After running the previous sections (of the GUI instructions), click `Analysis` and then `Differential Expression Analysis` on the menu side bar. It should look something like this:

Analysis - Differential Expression Analysis - GUI

To perform edgeR-based differential analysis, first ensure `Method` is set to `edgeR`. Using the `Variable` drop-down box, select `condition`. Then, select the `Nominator` and `Denominator` fields to `B` and `A`, respectively. Leave the batch factor fields as `(none)`. Then, click `Perform DE`.

Once differential expression analysis has finished, your session should look like below. The output is a DT-based data table equivalent to the `ASE_edgeR()` function.

Example Differential Analysis using edgeR - GUI

NB: The interface allows users to choose to sort the results either by nominal or (multiple-testing) adjusted P values

NB2: There are 3 different ways Intron Retention events can be quantified and analysed - see “What are the different ways intron retention is measured?” below for further details.

NB3: Analyses can be saved or loaded to/from RDS files using the corresponding buttons.

What are the options for differential ASE analysis?

SpliceWiz provides wrappers to three established algorithms:

- `ASE_limma` uses `limma` to model isoform counts as log-normal distributions. Limma is probably the fastest method and is ideal for large datasets. Time series analysis is available for this mode.
- `ASE_DESeq` uses `DESeq2` to model isoform counts as negative binomial distribution. This method is the most computationally expensive, but gives robust results. Time series analysis is also available for this mode
- `ASE_edgeR` uses `edgeR` to model isoform counts as negative binomial distributions. SpliceWiz uses the quasi-likelihood method that deals better with variance at near-zero junction counts, resulting in reduced false positives.
- `ASE_DoubleExpSeq` uses the lesser-known CRAN package `DoubleExpSeq`. This package uses the beta-binomial distribution to model isoform counts. The method is at least as fast as `limma`, but for now it is restricted to analysis between two groups (i.e. batch correction is not implemented)

We recommend the following for differential analysis:

- For quick comparisons between two groups, where no batch factors are involved, we recommend DoubleExpSeq
- For large complex experiments where quick results are required for a preliminary or exploratory analysis, we recommend limma
- For final analysis where accuracy is paramount, we recommend edgeR or DESeq2

    # Requires limma to be installed:
    require("limma")
    res_limma <- ASE_limma(
        se = se.filtered,
        test_factor = "condition",
        test_nom = "B",
        test_denom = "A"
    )

    # Requires DoubleExpSeq to be installed:
    require("DoubleExpSeq")
    res_DES <- ASE_DoubleExpSeq(
        se = se.filtered,
        test_factor = "condition",
        test_nom = "B",
        test_denom = "A"
    )

    # Requires DESeq2 to be installed:
    require("DESeq2")
    res_deseq <- ASE_DESeq(
        se = se.filtered,
        test_factor = "condition",
        test_nom = "B",
        test_denom = "A",
        n_threads = 1
    )

    # Requires edgeR to be installed:
    require("edgeR")
    res_edgeR <- ASE_edgeR(
        se = se.filtered,
        test_factor = "condition",
        test_nom = "B",
        test_denom = "A"
    )

What are the different ways intron retention is measured?

Intron retention can be measured via two approaches.

The first (and preferred) approach is using IR-ratio. We presume that every intron is potentially retained (thus ignoring annotation). Given this results in many overlapping introns, SpliceWiz adjusts for this via the following:

- Where there are mutually-overlapping introns, the less abundant intron is removed from the analysis. Abundance is estimated across the entire dataset, and less-abundant overlapping introns are removed at the `makeSE()` step.
- IR-ratio measures included (intronic) abundance using an identical approach to IRFinder, i.e., it calculates the trimmed mean of sequencing depth across the intron, excluding annotated outliers (other exons, intronic elements). Given we cannot assume whether the exact intron corresponds to the major isoform, we estimate splicing abundance by summing junction reads that share either exon cluster as the intron of interest (`SpliceOver` method in SpliceWiz). Alternately, users can choose to use IRFinder’s `SpliceMax` method, summing junction reads that share either splice junction with the intron of interest. This choice is also made by the user at the `makeSE()` step.

At the differential analysis step, users can choose the following:

- `IRmode = "all"` - all introns are potentially retained, use IR-ratio to quantify IR (`EventType = "IR"`)
- `IRmode = "annotated"` - only annotated retained intron events are considered, but use IR-ratio to quantify IR (`EventType = "IR"`)
- `IRmode = "annotated_binary"` - only annotated retained intron events are considered, use PSI to quantify IR - which considers the IR-transcript and the transcript isoform with the exactly-spliced intron as binary alternatives. Splicing of overlapping introns are not considered in PSI quantitation.

    res_edgeR_allIntrons <- ASE_edgeR(
        se = se.filtered,
        test_factor = "condition",
        test_nom = "B",
        test_denom = "A",
        IRmode = "all"
    )

    res_edgeR_annotatedIR <- ASE_edgeR(
        se = se.filtered,
        test_factor = "condition",
        test_nom = "B",
        test_denom = "A",
        IRmode = "annotated"
    )

    res_edgeR_annotated_binaryIR <- ASE_edgeR(
        se = se.filtered,
        test_factor = "condition",
        test_nom = "B",
        test_denom = "A",
        IRmode = "annotated_binary"
    )

Can I account for batch factors?

`ASE_limma`, `ASE_edgeR`, and `ASE_DESeq` can accept up to 2 categories of batches from which to normalize. For example, to normalize the analysis by the `batch` category, one would run:

    require("edgeR")
    res_edgeR_batchnorm <- ASE_edgeR(
        se = se.filtered,
        test_factor = "condition",
        test_nom = "B",
        test_denom = "A",
        batch1 = "batch"
    )

Can I do time series analysis?

Time series analysis can be performed using limma, edgeR, and DESeq2.

For limma and edgeR, time series analysis is done using the `ASE_limma_timeseries()` and `ASE_edgeR_timeseries()` function. `test_factor`, despite its name, should be a column in `colData(se)` containing numerical values that represent time series data.

Note that these time series wrappers function requires the `splines` package.

    colData(se.filtered)$timevar <- rep(c(0,1,2), 2)

    require("splines")
    require("limma")
    res_limma_cont <- ASE_limma_timeseries(
        se = se.filtered,
        test_factor = "timevar"
    )

    require("splines")
    require("edgeR")
    res_edgeR_cont <- ASE_edgeR_timeseries(
        se = se.filtered,
        test_factor = "timevar"
    )

For DESeq2, time series analysis is performed using the `ASE_DESeq()` funcction. The key difference is that, for time series analysis, simply do not specify the `test_nom` and `test_denom` parameters. As long as the `test_factor` contains numeric values, `ASE_DESeq` will treat it as a continuous variable. See the following example:

    colData(se.filtered)$timevar <- rep(c(0,1,2), 2)

    require("DESeq2")
    res_deseq_cont <- ASE_DESeq(
        se = se.filtered,
        test_factor = "timevar"
    )

Advanced GLM-based differential ASE analysis with edgeR

We have implemented wrapper functions enabling advanced users to perform differential ASE analysis by constructing their own design matrices. This allows users to evaluate effects of covariates in complex experimental models.

We will be building a separate vignette to illustrate the full functionality of these edgeR-based functions, but for now a quick example can be found in the relevant documentation, which can be viewed via:

    ?`ASE-GLM-edgeR`

## Visualization

### Volcano plots

Volcano plots show changes in PSI levels (log fold change, x axis) against statistical significance (-log10 p values, y axis):

    library(ggplot2)

    ggplot(res_edgeR,
            aes(x = logFC, y = -log10(FDR))) +
        geom_point() +
        labs(title = "Differential analysis - B vs A",
             x = "Log2-fold change", y = "FDR (-log10)")

Can I visualize significant events for each modality of alternative splicing events?

Yes. We can use `ggplot2`’s `facet_wrap` function to separately plot volcanos for each modality of ASE. The type of ASE is contained in the `EventType` column of the differential results data frame.

    ggplot(res_edgeR,
            aes(x = logFC, y = -log10(FDR))) +
        geom_point() + facet_wrap(vars(EventType)) +
        labs(title = "Differential analysis - B vs A",
             x = "Log2-fold change", y = "FDR (-log10)")

Using the GUI

After following the previous sections including differential analysis, navigate to `Display` and then `Volcano Plot`. Notice that there will be a message that says “No events found. Consider relaxing some filters”.

This message occurs because our example dataset has no differential events that surpass an adjusted P value of less than 0.05 (which is the default filter setting). The SpliceWiz GUI avoids plotting all ASEs as this will crowd the visualization. In this example, change the `Filter Events by` to `Nominal P value`, and move the `P-value/FDR threshold` all the way to the right. There should now be a volcano plot but most events have near-zero significance because the default y-axis setting is to `Plot adjusted P values`. Switch this off to show the following:

Volcano Plot - GUI

You can customize this volcano plot using the following controls:

1. Use the filtering panel to adjust the number of events to show. Here, events can be filtered by Nominal or adjusted P values, or by top events. We can also filter by “highlighted events” which is useful for gene ontology analysis and heatmaps later. Events can also be filtered by the type of alternative splicing
2. The volcano plot can be faceted by the type of alternative splicing.
3. The y axis can show either nominal or adjusted P values (Benjamini Hochberg).
4. If `NMD Mode` is `ON`, the horizontal axis represents whether splicing is shifted towards (positive values) or away from (negative values) a NMD substrate transcript
5. The plot can be exported as a pdf file (ggplot object)
6. Clear settings

Also, on the (right hand side) main panel:

7. This clears any selected events (selected events are highlighted in red)
8. Toggle between using tools to select or deselect events
9. Plotly interactive toolbox. Users can use the box-select (9a) or lasso- select (9b) to select (or de-select) one or more events of interest. Selected events are highlighted in other plots and non-selected points can be removed by selecting “highlighted events” in the event filter panel (1).

### Scatter plots

Scatter plots are useful for showing splicing levels (percent-spliced-in, PSI) between two conditions. The results from differential analysis contains these values and can be plotted:

    library(ggplot2)

    ggplot(res_edgeR, aes(x = 100 * AvgPSI_B, y = 100 * AvgPSI_A)) +
        geom_point() + xlim(0, 100) + ylim(0, 100) +
        labs(title = "PSI values across conditions",
             x = "PSI of condition B", y = "PSI of condition A")
    #> Warning: Removed 1 row containing missing values or values outside the scale range
    #> (`geom_point()`).

Using the GUI

After following the previous sections including differential analysis, navigate to `Display` and then `Scatter Plot`. After relaxing the event filters similar to the previous section, change the `Variable` to `condition`, `X-axis condition` to `A` and `Y-axis condition` to `B`. A scatter plot should be automatically generated as follows:

Scatter plot - GUI

You can customize the scatter plot using the following controls:

1. Again, the filtering panel is available to filter the number of events by significance threshold, rank, or by highlighted events, as explained in the previous section (volcano plots - GUI)
2. `Variable` refers to the annotation table column name
3. and (4) - `X-axis` and `Y-axis` dropdowns refer to the condition categories (that are used to contrast between two experimental conditions)
4. If `NMD Mode` is `ON`, the PSI values are altered such that they represent the inclusion values of the NMD substrate (instead of that of the “included” isoform)
5. The plot can be exported as a pdf file (ggplot object)
6. Clear settings

As in the volcano plot, the scatter plot is interactive and points highlighted on this plot will stay highlighted in other plots.

8. Clears all highlighted events
9. Toggles between tools that select or de-select events
10. Plotly interactive plot where users can use box or lasso select tools to select / de-select events.

Selecting ASEs of interest using the interactive plots (GUI)

SpliceWiz GUI generates plotly interactive figures. For volcano and scatter plots, points of interest can be selected using the lasso or box select tools. For example, we can select the top hits from the faceted volcano plot as shown:

Volcano plot - selecting ASEs of interest via the GUI

These ASEs of interest will then be highlighted in other plots, for example scatter plot:

Scatter plot - highlighted ASE events

How do I generate average PSI values for many conditions?

SpliceWiz provides the `makeMeanPSI()` function that can generate mean PSI values for each condition of a condition category. For example, the below code will calculate the mean PSIs of each “batch” of this example experiment:

    meanPSIs <- makeMeanPSI(
        se = se,
        condition = "batch",
        conditionList = list("K", "L", "M")
    )

### Gene ontology (GO) analysis

Gene ontology analysis using the GUI

Our working example does not have enough genes to demonstrate a workable gene ontology analysis. Instead, the following explains the controls found in the `Gene Ontology` panel:

Gene ontology analysis

The controls are as follows:

1. Again, the filtering panel is available to filter the number of events by significance threshold, rank, or by highlighted events, as explained in the previous sections. Filtered events are considered “enriched events” in the analysis.
2. Type of gene ontology category - “Biological Function”, “Molecular Function” or “Cellular Compartment”
3. Enrich for upregulated, downregulated events, or both
4. Which set of genes to consider as background. Default is genes belonging to All ASE Events (as they contain introns). Alternatives are to either test for genes of ASEs of the specified modality (a popup select input box will appear, allowing users to select which modalities of ASE to derive background genes), or by all genes in the genome (NB this option will contain intronless genes which may bias the result).
5. Gene ontology plots can be saved to PDF
6. Gene ID’s of enriched genes (6a) or background genes (6b) can be exported to file, allowing users to repeat GO analysis using their own gene ontology enrichment tool of choice.

SpliceWiz has built-in gene ontology analysis. For now, only a limited number of species are supported for Ensembl gene ID’s. To see a list of supported organisms:

    getAvailableGO()
    #>    [1] "Pseudophryne corroboree"
    #>    [2] "Triticum aestivum"
    #>    [3] "Triticum aestivum_subsp._aestivum"
    #>    [4] "Triticum sativum"
    #>    [5] "Triticum vulgare"
    #>    [6] "Ambystoma mexicanum"
    #>    [7] "Gyrinus mexicanus"
    #>    [8] "Musa acuminata_AAA_Group"
    #>    [9] "Brassica napus"
    #>   [10] "Arachis hypogaea"
    #>   [11] "Hibiscus syriacus"
    #>   [12] "Cortia elata"
    #>   [13] "Eulalia japonica"
    #>   [14] "Levisticum argutum"
    #>   [15] "Ligusticum elatum"
    #>   [16] "Miscanthus floridulus"
    #>   [17] "Miscanthus japonicus"
    #>   [18] "Oreocome arguta"
    #>   [19] "Saccharum floridulum"
    #>   [20] "Acridium cancellatum"
    #>   [21] "Schistocerca cancellata"
    #>   [22] "Triticum dicoccoides"
    #>   [23] "Triticum turgidum_subsp._dicoccoides"
    #>   [24] "Triticum turgidum_var._dicoccoides"
    #>   [25] "Dendrohyas sarda"
    #>   [26] "Hyla arborea_sarda"
    #>   [27] "Hyla sarda"
    #>   [28] "Gryllus gregarius"
    #>   [29] "Locusta gregaria"
    #>   [30] "Schistocerca gregaria"
    #>   [31] "Gossypium hirsutum"
    #>   [32] "Gossypium hirsutum_subsp._mexicanum"
    #>   [33] "Gossypium lanceolatum"
    #>   [34] "Gossypium purpurascens"
    #>   [35] "Camelina sativa"
    #>   [36] "Myagrum sativum"
    #>   [37] "Carassius auratus_gibelio"
    #>   [38] "Carassius gibelio_gibelio"
    #>   [39] "Carassius gibelio"
    #>   [40] "Carassius gibelio_subsp._gibelio"
    #>   [41] "Cyprinus gibelio"
    #>   [42] "Acridium piceifrons"
    #>   [43] "Schistocerca piceifrons"
    #>   [44] "Papaver somniferum"
    #>   [45] "Zingiber officinale"
    #>   [46] "Trichomonas vaginalis_G3"
    #>   [47] "Trichomonas vaginalis_strain_G3"
    #>   [48] "Helianthus annuus"
    #>   [49] "Schistocerca americana"
    #>   [50] "Coffea arabica"
    #>   [51] "Acipenser ruthenus"
    #>   [52] "Acridium cubense"
    #>   [53] "Schistocerca serialis_cubense"
    #>   [54] "Panicum virgatum"
    #>   [55] "Nicotiana tabacum"
    #>   [56] "Oncorhynchus mykiss"
    #>   [57] "Oncorhynchus nerka_mykiss"
    #>   [58] "Parasalmo mykiss"
    #>   [59] "Salmo mykiss"
    #>   [60] "Gryllus nitens"
    #>   [61] "Schistocerca nitens"
    #>   [62] "Schistocerca vaga"
    #>   [63] "Misgurnus dabryanus"
    #>   [64] "Paramisgurnus dabryanus"
    #>   [65] "Salvia splendens"
    #>   [66] "Carassius carassius"
    #>   [67] "Cyprinus carassius"
    #>   [68] "Vicia villosa"
    #>   [69] "Camellia sinensis"
    #>   [70] "Thea sinensis"
    #>   [71] "Hyperolius riggenbachi"
    #>   [72] "Rappia riggenbachi"
    #>   [73] "Oncorhynchus keta"
    #>   [74] "Salmo keta"
    #>   [75] "Pisum sativum"
    #>   [76] "Salmo salar"
    #>   [77] "Rutidosis leptorhynchoides"
    #>   [78] "Rutidosis leptorrhynchoides"
    #>   [79] "Raphanus sativus"
    #>   [80] "Oncorhynchus kisutch"
    #>   [81] "Oncorhyncus kisutch"
    #>   [82] "Salmo kisatch"
    #>   [83] "Lolium rigidum"
    #>   [84] "Aegilops squarrosa_subsp._squarrosa"
    #>   [85] "Aegilops squarrosa"
    #>   [86] "Aegilops tauschii"
    #>   [87] "Patropyrum tauschii_subsp._tauschii"
    #>   [88] "Patropyrum tauschii"
    #>   [89] "Triticum aegilops"
    #>   [90] "Triticum tauschii"
    #>   [91] "Eleutherodactylus coqui"
    #>   [92] "Salmo trutta"
    #>   [93] "Cryptomeria japonica"
    #>   [94] "Cupressus japonica"
    #>   [95] "Amia calva"
    #>   [96] "Coregonus clupeaformis"
    #>   [97] "Salmo clupeaformis"
    #>   [98] "Oncorhynchus clarkii_lewisi"
    #>   [99] "Oncorhynchus clarki_lewisi"
    #>  [100] "Salar lewisi"
    #>  [101] "Oncorhynchus gorbuscha"
    #>  [102] "Salmo gorbuscha"
    #>  [103] "Cyprinus carpio"
    #>  [104] "Glycine max_subsp._soja"
    #>  [105] "Glycine soja"
    #>  [106] "Salmo fontinalis"
    #>  [107] "Salvelinus fontinalis"
    #>  [108] "Glycine max"
    #>  [109] "Phaseolus max"
    #>  [110] "Pleurodeles waltlii"
    #>  [111] "Pleurodeles waltl"
    #>  [112] "Chenopodium quinoa"
    #>  [113] "Hordeum sativum"
    #>  [114] "Hordeum vulgare_subsp._vulgare"
    #>  [115] "Hordeum vulgare_var._nudum"
    #>  [116] "Hordeum vulgare_var._vulgare"
    #>  [117] "Humulus lupulus"
    #>  [118] "Leuciscus parvus"
    #>  [119] "Pseudorasbora parva"
    #>  [120] "Festuca perennis_(L.)_Columbus_&_J.P.Sm.,_2010"
    #>  [121] "Festuca perennis"
    #>  [122] "Lolium perenne"
    #>  [123] "Lolium vulgare"
    #>  [124] "Gasterosteus pungitius"
    #>  [125] "Pungitius pungitius"
    #>  [126] "Pristiophorus japonicus"
    #>  [127] "Oncorhynchus masou_masou"
    #>  [128] "Salmo masou_masou"
    #>  [129] "Oncorhynchus nerka"
    #>  [130] "Salmo nerka"
    #>  [131] "Crassostrea cucullata"
    #>  [132] "Ostrea cuccullata"
    #>  [133] "Saccostrea cuccullata"
    #>  [134] "Barbus grahami"
    #>  [135] "Sinocyclocheilus grahami"
    #>  [136] "Salmo alpinus"
    #>  [137] "Salvelinus alpinus"
    #>  [138] "Nerophis lumbriciformis"
    #>  [139] "Syngnathus lumbriciformis"
    #>  [140] "Nicotiana sylvestris"
    #>  [141] "Sinocyclocheilus rhinocerous"
    #>  [142] "Nicotiana tomentosiformis"
    #>  [143] "Gossypium arboreum"
    #>  [144] "Brassica oleracea"
    #>  [145] "Malus sylvestris"
    #>  [146] "Pyrus malus_var._sylvestris"
    #>  [147] "Astyanax mexicanus"
    #>  [148] "Tetragonopterus mexicanus"
    #>  [149] "Arachis stenosperma"
    #>  [150] "Prosopis alba"
    #>  [151] "Sinocyclocheilus anshuiensis"
    #>  [152] "Malus communis"
    #>  [153] "Malus domestica"
    #>  [154] "Malus pumila_auct."
    #>  [155] "Malus pumila_var._domestica"
    #>  [156] "Malus sylvestris_var._domestica"
    #>  [157] "Malus x_domestica"
    #>  [158] "Pyrus malus"
    #>  [159] "Pyrus malus_var._domestica"
    #>  [160] "Brassica rapa"
    #>  [161] "Lactuca sativa"
    #>  [162] "Dreissena polymorpha"
    #>  [163] "Mytilus polymorphus"
    #>  [164] "Hydractinia symbiolongicarpus"
    #>  [165] "Triticum urartu"
    #>  [166] "Cornus florida"
    #>  [167] "Hevea brasiliensis"
    #>  [168] "Siphonia brasiliensis"
    #>  [169] "Salvelinus sp._IW2-2015"
    #>  [170] "Oncorhynchus tschawytscha"
    #>  [171] "Oncorhynchus tshawytscha"
    #>  [172] "Salmo tshawytscha"
    #>  [173] "Bombina fusca"
    #>  [174] "Bombinator fuscus"
    #>  [175] "Bufo fuscus"
    #>  [176] "Pelobates fuscus"
    #>  [177] "Rana fusca"
    #>  [178] "Arachis ipaensis"
    #>  [179] "Zea mays"
    #>  [180] "Zea mays_var._japonica"
    #>  [181] "Salmo namaycush"
    #>  [182] "Salvelinus namaycush"
    #>  [183] "Hydra attenuata"
    #>  [184] "Hydra carnea"
    #>  [185] "Hydra littoralis"
    #>  [186] "Hydra magnipapillata"
    #>  [187] "Hydra vulgaris"
    #>  [188] "Lepisosteus oculatus"
    #>  [189] "Mytilus edulis"
    #>  [190] "Arundo australis"
    #>  [191] "Phragmites australis"
    #>  [192] "Phragmites communis"
    #>  [193] "Capsicum annuum"
    #>  [194] "Brienomyrus brachyistius"
    #>  [195] "Marcusenius brachyistius"
    #>  [196] "Ruditapes philippinarum"
    #>  [197] "Ruditapes (Venerupis)_philippinarum"
    #>  [198] "Tapes japonica"
    #>  [199] "Tapes philippinarum"
    #>  [200] "Venerupis japonica"
    #>  [201] "Venerupis philippinarum"
    #>  [202] "Venerupis (Ruditapes)_philippinarum"
    #>  [203] "Venus philippinarum"
    #>  [204] "Convolvulus nil"
    #>  [205] "Ipomoea nil"
    #>  [206] "Pharbitis nil"
    #>  [207] "Lycium barbarum"
    #>  [208] "Olea europaea_subsp._europaea_var._sylvestris"
    #>  [209] "Olea europaea_var._oleaster"
    #>  [210] "Olea europaea_var._sylvestris"
    #>  [211] "Olea europea_subsp._sylvestris"
    #>  [212] "Olea sylvestris"
    #>  [213] "Mytilus trossulus"
    #>  [214] "Alosa sapidissima"
    #>  [215] "Clupea sapidissima"
    #>  [216] "Montipora capricornis"
    #>  [217] "Carpiodes asiaticus"
    #>  [218] "Myxocyprinus asiaticus"
    #>  [219] "Esox malabaricus"
    #>  [220] "Hoplias malabaricus"
    #>  [221] "Macrodon malabaricus"
    #>  [222] "Actinidia eriantha"
    #>  [223] "Gossypium raimondii"
    #>  [224] "Cololabis saira"
    #>  [225] "Scomberesox saira"
    #>  [226] "Catostomus texanus"
    #>  [227] "Xyrauchen texanus"
    #>  [228] "Cambarus clarkii"
    #>  [229] "Procambarus clarkii"
    #>  [230] "Doryrhamphus excisus"
    #>  [231] "Madrepora foliosa"
    #>  [232] "Montipora foliosa"
    #>  [233] "Exopalaemon carinicauda"
    #>  [234] "Palaemon carinicauda"
    #>  [235] "Heptranchias perlo"
    #>  [236] "Squalus perlo"
    #>  [237] "Quercus lobata"
    #>  [238] "Carya illinoensis"
    #>  [239] "Carya illinoinensis"
    #>  [240] "Mercenaria mercenaria"
    #>  [241] "Venus mercenaria"
    #>  [242] "Quercus robur"
    #>  [243] "Durio zibethinus"
    #>  [244] "Acropora copiosa"
    #>  [245] "Acropora muricata"
    #>  [246] "Millepora muricata"
    #>  [247] "Platichthys flesus"
    #>  [248] "Platicthys flesus"
    #>  [249] "Pleuronectes flesus"
    #>  [250] "Haliotis asinina"
    #>  [251] "Alosa pilchardus"
    #>  [252] "Clupea harengus_pilchardus"
    #>  [253] "Clupea pilchardus"
    #>  [254] "Sardina pilchardus"
    #>  [255] "Dendrobates imitator"
    #>  [256] "Ranitomeya imitator"
    #>  [257] "Mya arenaria"
    #>  [258] "Arachis duranensis"
    #>  [259] "Arachis spegazzinii"
    #>  [260] "Pyrus x_bretschneideri"
    #>  [261] "Trifolium pratense"
    #>  [262] "Dasypus fenestratus"
    #>  [263] "Dasypus novemcinctus"
    #>  [264] "Cobitis anguillicaudata"
    #>  [265] "Misgurnus anguillicaudatus"
    #>  [266] "Quercus suber"
    #>  [267] "Scaphiopus bombifrons"
    #>  [268] "Spea bombifrons"
    #>  [269] "Haliotis rufenscens"
    #>  [270] "Haliotis rufescens"
    #>  [271] "Oreochromis nilotica"
    #>  [272] "Oreochromis niloticus"
    #>  [273] "Perca nilotica"
    #>  [274] "Tilapia nilotica"
    #>  [275] "Acropora convexa"
    #>  [276] "Acropora millepora"
    #>  [277] "Acropora singularis"
    #>  [278] "Channa argus"
    #>  [279] "Ophicephalus argus"
    #>  [280] "Ophiocephalus argus"
    #>  [281] "Cebus apella"
    #>  [282] "Sapajus apella"
    #>  [283] "Simia apella"
    #>  [284] "Eucalyptus grandis"
    #>  [285] "Macaca nemestrina"
    #>  [286] "Simia nemestrina"
    #>  [287] "Callithrix jacchus_jacchus"
    #>  [288] "Callithrix jacchus"
    #>  [289] "Simia jacchus"
    #>  [290] "Pyrus balansae"
    #>  [291] "Pyrus communis"
    #>  [292] "Pistacia vera"
    #>  [293] "Pteropus medius"
    #>  [294] "Salvia miltiorhiza"
    #>  [295] "Salvia miltiorrhiza"
    #>  [296] "Daphnia pulicaria"
    #>  [297] "Labrus mixtus"
    #>  [298] "Pongo abelii"
    #>  [299] "Pongo pygmaeus_abelii"
    #>  [300] "Pongo pygmaeus_abeli"
    #>  [301] "Magnolia sinica"
    #>  [302] "Manglietia sinica"
    #>  [303] "Manglietiastrum sinicum"
    #>  [304] "Pachylarnax sinica_(Y.W.Law)_N.H.Xia_&_C.Y.Wu"
    #>  [305] "Lycopersicon esculentum"
    #>  [306] "Lycopersicon esculentum_var._esculentum"
    #>  [307] "Solanum esculentum"
    #>  [308] "Solanum lycopersicum"
    #>  [309] "Solanum lycopersicum_var._humboldtii"
    #>  [310] "Rosa chinensis"
    #>  [311] "Rosa indica_auct.,_non_L."
    #>  [312] "Mytilus californianus"
    #>  [313] "Gorilla gorilla_gorilla"
    #>  [314] "greater Indian_fruit_bat"
    #>  [315] "Pteropus giganteus"
    #>  [316] "Pteropus vampyrus"
    #>  [317] "Vespertilio vampyrus"
    #>  [318] "Chinemys reevesii"
    #>  [319] "Chinemys reevesi"
    #>  [320] "Emys reevesii"
    #>  [321] "Geoclemys reevesii"
    #>  [322] "Geoclemys reevessi"
    #>  [323] "Mauremys reevesii"
    #>  [324] "Mauremys reevesi"
    #>  [325] "Choloepus brasiliensis_Fitzinger_1871"
    #>  [326] "Choloepus brasiliensis"
    #>  [327] "Choloepus didactylus"
    #>  [328] "Bubalus arnee_carabanensis"
    #>  [329] "Bubalus bubalis_carabanesis"
    #>  [330] "Bubalus carabanensis_carabanensis"
    #>  [331] "Bubalus carabanensis"
    #>  [332] "Bubalus kerabau"
    #>  [333] "Lotus corniculatus_var._japonicus"
    #>  [334] "Lotus japonicus"
    #>  [335] "Tupaia belangeri_chinensis"
    #>  [336] "Tupaia chinensis"
    #>  [337] "Clarias gariepinus"
    #>  [338] "Clarias lazera"
    #>  [339] "Silurus gariepinus"
    #>  [340] "Rosa rugosa"
    #>  [341] "Barbus tetrazona"
    #>  [342] "Capoeta tetrazona"
    #>  [343] "Puntigrus tetrazona"
    #>  [344] "Puntius tetrazona"
    #>  [345] "Systomus tetrazona"
    #>  [346] "Lycium ferocissimum"
    #>  [347] "Nicotiana attenuata"
    #>  [348] "Cestracion francisci"
    #>  [349] "Heterodontus francisci"
    #>  [350] "Octodon degus"
    #>  [351] "Sciurus degus"
    #>  [352] "Haliotis rubra"
    #>  [353] "Equus caballus"
    #>  [354] "Equus przewalskii_f._caballus"
    #>  [355] "Equus przewalskii_forma_caballus"
    #>  [356] "Spinacia oleracea"
    #>  [357] "Haliotis cracherodii"
    #>  [358] "Paramecium aurelia_syngen_4"
    #>  [359] "Paramecium tetraurelia"
    #>  [360] "Macaca cynomolgus"
    #>  [361] "Macaca fascicularis"
    #>  [362] "Macaca irus"
    #>  [363] "Simia fascicularis"
    #>  [364] "Salvia hispanica"
    #>  [365] "Medicago truncatula"
    #>  [366] "Crassostrea virginica"
    #>  [367] "Ostrea virginica"
    #>  [368] "Oryza sativa_(japonica_cultivar-group)"
    #>  [369] "Oryza sativa_Japonica_Group"
    #>  [370] "Oryza sativa_subsp._japonica"
    #>  [371] "Felis catus"
    #>  [372] "Felis domesticus"
    #>  [373] "Felis silvestris_catus"
    #>  [374] "Anubis baboon"
    #>  [375] "Papio anubis"
    #>  [376] "Papio cynocephalus_anubis"
    #>  [377] "Papio doguera"
    #>  [378] "Papio hamadryas_anubis"
    #>  [379] "Papio hamadryas_doguera"
    #>  [380] "Simia anubis"
    #>  [381] "Dipodomys merriami"
    #>  [382] "Sorex etruscus"
    #>  [383] "Suncus etruscus"
    #>  [384] "Daucus carota_subsp._sativus"
    #>  [385] "Daucus carota_var._sativus"
    #>  [386] "Mimosa cineraria"
    #>  [387] "Prosopis cineraria"
    #>  [388] "Lepus cuniculus"
    #>  [389] "Oryctolagus cuniculus"
    #>  [390] "Ptychodera erythraea"
    #>  [391] "Ptychodera flava"
    #>  [392] "Nycticebus coucang"
    #>  [393] "Tardigradus coucang"
    #>  [394] "Rhododendron vialii"
    #>  [395] "Nematostella vectensis"
    #>  [396] "Ixodes dammini"
    #>  [397] "Ixodes scapularis"
    #>  [398] "Lupinus angustifolius"
    #>  [399] "Populus nigra"
    #>  [400] "Populus pyramidalis"
    #>  [401] "Littorina saxatilis"
    #>  [402] "Turbo saxatilis"
    #>  [403] "Ipomoea triloba"
    #>  [404] "Pan paniscus"
    #>  [405] "Emiliania huxleyi_CCMP1516"
    #>  [406] "Emiliania huxleyi_CCMP2090"
    #>  [407] "Mangifera indica"
    #>  [408] "Nothobranchius furzeri"
    #>  [409] "Pteropus alecto"
    #>  [410] "Hylobates syndactylus"
    #>  [411] "Simia syndactyla"
    #>  [412] "Symphalangus syndactylus"
    #>  [413] "Rana temporaria"
    #>  [414] "Crassostrea angulata"
    #>  [415] "Gryphaea angulata"
    #>  [416] "Magallana angulata"
    #>  [417] "Etheostoma spectabile"
    #>  [418] "Poecilichthys spectabilis"
    #>  [419] "Macadamia integrifolia"
    #>  [420] "Megalobrama amblycephala"
    #>  [421] "Halichoerus grypus"
    #>  [422] "Phoca grypus"
    #>  [423] "Juglans regia"
    #>  [424] "Kungiselaginella moellendorffii"
    #>  [425] "Selaginella moellendorffii"
    #>  [426] "Selaginella moellendorfii"
    #>  [427] "Pleuronectes platessa"
    #>  [428] "Presbytis francoisi"
    #>  [429] "Trachypithecus francoisi"
    #>  [430] "Diadema antillarum"
    #>  [431] "Tripterygium wilfordii"
    #>  [432] "Dermacentor albipictus"
    #>  [433] "Ixodes albipictus"
    #>  [434] "Aotus nancymaae"
    #>  [435] "Aotus nancymai"
    #>  [436] "Aranea bruennichi"
    #>  [437] "Argiope bruennichi"
    #>  [438] "Rhinichthys klamathensis_goyatoka"
    #>  [439] "Huro salmoides"
    #>  [440] "Labrus salmoides"
    #>  [441] "Labrus salmonides"
    #>  [442] "Micropterus nigricans"
    #>  [443] "Micropterus salmoides"
    #>  [444] "Solanum stenotomum"
    #>  [445] "Heterocephalus glaber"
    #>  [446] "Pongo pygmaeus"
    #>  [447] "Simia pygmaeus"
    #>  [448] "Cavia aperea_porcellus"
    #>  [449] "Cavia cobaya"
    #>  [450] "Cavia porcellus"
    #>  [451] "Mus porcellus"
    #>  [452] "Arius graeffei"
    #>  [453] "Neoarius graeffei"
    #>  [454] "Dendropsophus ebraccatus"
    #>  [455] "Hyla ebraccata"
    #>  [456] "Neosciurus carolinensis"
    #>  [457] "Sciurus carolinensis"
    #>  [458] "Cervus elaphus"
    #>  [459] "Polyodon spathula"
    #>  [460] "Squalus spathula"
    #>  [461] "Gadus chalcogrammus"
    #>  [462] "Theragra chalcogramma"
    #>  [463] "Bos bubalis"
    #>  [464] "Bubalus arnee_bubalis"
    #>  [465] "Bubalus bubalis"
    #>  [466] "Pleuronectes solea"
    #>  [467] "Solea solea"
    #>  [468] "Solea vulgaris"
    #>  [469] "Conger conger"
    #>  [470] "Muraena conger"
    #>  [471] "Mastomys coucha"
    #>  [472] "Praomys coucha"
    #>  [473] "Impatiens glandulifera"
    #>  [474] "Dermacentor andersoni"
    #>  [475] "Felis nebulosa"
    #>  [476] "Neofelis nebulosa"
    #>  [477] "Pteropus egyptiacus"
    #>  [478] "Rousettus aegyptiacus"
    #>  [479] "Rousettus aegypticus"
    #>  [480] "Rousettus egyptiacus"
    #>  [481] "Phoenix dactylifera"
    #>  [482] "Pimephales promelas"
    #>  [483] "Ostrea edulis"
    #>  [484] "Peromyscus maniculatus_bairdii"
    #>  [485] "Populus alba"
    #>  [486] "Trichomycterus rosablanca"
    #>  [487] "Odocoileus virginianus"
    #>  [488] "Petaurus breviceps_papuanus"
    #>  [489] "Petaurus sp._CYF-2022"
    #>  [490] "Cricetus auratus"
    #>  [491] "Golden hamsters"
    #>  [492] "Mesocricetus auratus"
    #>  [493] "Syrian hamsters"
    #>  [494] "Ornithodoros americanus"
    #>  [495] "Ornithodoros turicata_americanus"
    #>  [496] "Ornithodoros turicata"
    #>  [497] "Chromis aureus"
    #>  [498] "Oreochromis aurea"
    #>  [499] "Oreochromis aureus"
    #>  [500] "Dermacentor silvarum"
    #>  [501] "Chanodichthys erythropterus"
    #>  [502] "Cullter erythropterus"
    #>  [503] "Culter erythropterus"
    #>  [504] "Cultrichthys erythropterus"
    #>  [505] "Erythroculter erythropterus"
    #>  [506] "Felis geoffroyi"
    #>  [507] "Leopardus geoffroyi"
    #>  [508] "Oncifelis geoffroyi"
    #>  [509] "Atherina mordax"
    #>  [510] "Osmerus mordax"
    #>  [511] "Entelurus aequoreus"
    #>  [512] "Syngnathus aequoreus"
    #>  [513] "Euphorbia lathyris"
    #>  [514] "Felis yagouaroundi"
    #>  [515] "Herpailurus yagouaroundi"
    #>  [516] "Herpailurus yaguarondi"
    #>  [517] "Puma yagouaroundii"
    #>  [518] "Puma yagouaroundi"
    #>  [519] "Chrysemys bellii"
    #>  [520] "Chrysemys picta_bellii"
    #>  [521] "Chrysemys picta_subsp._bellii"
    #>  [522] "Ovis ammon_aries"
    #>  [523] "Ovis aries"
    #>  [524] "Ovis orientalis_aries"
    #>  [525] "Ovis ovis"
    #>  [526] "Cervus canadensis"
    #>  [527] "Populus diversifolia"
    #>  [528] "Populus euphratica"
    #>  [529] "Cucurbita pepo_subsp._pepo"
    #>  [530] "Cucurbita pepo_var._medullosa"
    #>  [531] "Cucurbita pepo_var._pepo"
    #>  [532] "Emys muticus"
    #>  [533] "Geoclemmys mutica"
    #>  [534] "Mauremys mutica"
    #>  [535] "Coffea eugeniodes"
    #>  [536] "Coffea eugenioides"
    #>  [537] "Suricata suricatta"
    #>  [538] "Viverra suricatta"
    #>  [539] "Hylobates moloch"
    #>  [540] "Simia moloch"
    #>  [541] "Solanum dulcamara"
    #>  [542] "Cucurbita moschata"
    #>  [543] "Clupea encrasicolus"
    #>  [544] "Engraulis encrasicolus"
    #>  [545] "Cucurbita maxima"
    #>  [546] "Macaca thibetana_thibetana"
    #>  [547] "Centropristis striata"
    #>  [548] "Labrus striatus"
    #>  [549] "Cannabis sativa"
    #>  [550] "Bos banteng"
    #>  [551] "Bos javanicus"
    #>  [552] "Bos sondaicus"
    #>  [553] "Panthera onca"
    #>  [554] "Nerophis ophidion"
    #>  [555] "Syngnathus ophidion"
    #>  [556] "Gastrolobium bilobum"
    #>  [557] "Jaculus jaculus"
    #>  [558] "Mus jaculus"
    #>  [559] "Dioscorea cayenensis_subsp._rotundata_(Poir.)_J.Miege,_1968"
    #>  [560] "Dioscorea cayenensis_subsp._rotundata"
    #>  [561] "Dioscorea rotundata"
    #>  [562] "Cercopithecus aethiops_sabaeus"
    #>  [563] "Cercopithecus sabaeus"
    #>  [564] "Cercopithecus sabeus"
    #>  [565] "Chlorocebus aethiops_sabaeus"
    #>  [566] "Chlorocebus aethiops_sabeus"
    #>  [567] "Chlorocebus sabaeus"
    #>  [568] "Chlorocebus sabeus"
    #>  [569] "Simia sabaea"
    #>  [570] "Ovis canadensis"
    #>  [571] "Ostrea echinata"
    #>  [572] "Saccostrea echinata"
    #>  [573] "Sexostrea echinata"
    #>  [574] "Juglans microcarpa_x_Juglans_regia"
    #>  [575] "Marmota monax"
    #>  [576] "Mus monax"
    #>  [577] "Equus caballus_przewalskii"
    #>  [578] "Equus ferus_przewalskii"
    #>  [579] "Equus przewalskii"
    #>  [580] "Pygathrix roxellana"
    #>  [581] "Rhinopithecus roxellana"
    #>  [582] "Semnopithecus roxellana"
    #>  [583] "Callorhinus ursinus"
    #>  [584] "Callorhynus ursius"
    #>  [585] "Phoca ursina"
    #>  [586] "Cricetulus barabensis_griseus"
    #>  [587] "Cricetulus griseus"
    #>  [588] "Elephantulus edwardii"
    #>  [589] "Macroscelides edwardii"
    #>  [590] "Cobitis heteroclita"
    #>  [591] "Fundulus heteroclitus"
    #>  [592] "Neothunnus macropterus"
    #>  [593] "Scomber albacares"
    #>  [594] "Thunnus albacares"
    #>  [595] "Meriones unguiculatus"
    #>  [596] "Telopea speciosissima"
    #>  [597] "Danio aesculapii"
    #>  [598] "Danio sp._'snakeskin'"
    #>  [599] "Danio sp._snakeskin"
    #>  [600] "Apodemus sylvaticus"
    #>  [601] "Mus sylvaticus"
    #>  [602] "Sylvaemus sylvaticus"
    #>  [603] "Populus balsamifera_subsp._trichocarpa"
    #>  [604] "Populus trichocarpa"
    #>  [605] "Cervus dama"
    #>  [606] "Dama dama"
    #>  [607] "Mercurialis ambigua"
    #>  [608] "Mercurialis annua"
    #>  [609] "Eugenia oleosa"
    #>  [610] "Syzygium oleosum"
    #>  [611] "Citellus tridecemlineatus"
    #>  [612] "Ictidomys tridecemlineatus"
    #>  [613] "Sciurus tridecemlineatus"
    #>  [614] "Spermophilus tridecemlineatus"
    #>  [615] "Arctomys flaviventer"
    #>  [616] "Marmota flaviventris"
    #>  [617] "Osmerus eperlanus"
    #>  [618] "Salmo eperlanus"
    #>  [619] "Solanum verrucosum"
    #>  [620] "Felis pardus"
    #>  [621] "Leo pardus"
    #>  [622] "Panthera pardus"
    #>  [623] "Microtus oregoni"
    #>  [624] "Arabidopsis lyrata_subsp._lyrata"
    #>  [625] "Arabis lyrata_subsp._lyrata"
    #>  [626] "Manihot esculenta"
    #>  [627] "Manihot utilissima"
    #>  [628] "Mustela erminea"
    #>  [629] "Dolichos unguiculatus"
    #>  [630] "Phaseolus unguiculatus"
    #>  [631] "Vigna unguiculata"
    #>  [632] "Lycopersicon pennellii_(Correll)_D'Arcy,_1982"
    #>  [633] "Solanum pennellii_Correll,_1958"
    #>  [634] "Solanum pennellii"
    #>  [635] "Panicum viride"
    #>  [636] "Setaria viridis"
    #>  [637] "Bos indicus"
    #>  [638] "Bos primigenius_indicus"
    #>  [639] "Bos taurus_indicus"
    #>  [640] "Gymnostomus macrolepis"
    #>  [641] "Onychostoma macrolepis"
    #>  [642] "Scaphesthes macrolepis"
    #>  [643] "Varicorhinus macrolepis"
    #>  [644] "Varicorhinus (Scaphesthes)_macrolepis"
    #>  [645] "Oryza glaberrima"
    #>  [646] "Phaseolus vulgaris"
    #>  [647] "Pelteobagrus fulvidraco"
    #>  [648] "Pimelodus fulvidraco"
    #>  [649] "Pseudobagrus fulvidraco"
    #>  [650] "Tachysurus fulvidraco"
    #>  [651] "Hylobates concolor_leucogenys"
    #>  [652] "Hylobates concolor_leucogyneus"
    #>  [653] "Hylobates leucogenys_leucogenys"
    #>  [654] "Hylobates leucogenys"
    #>  [655] "Nomascus leucogenys_leucogenys"
    #>  [656] "Nomascus leucogenys"
    #>  [657] "Nomascus leukogenys"
    #>  [658] "Nannospalax ehrenbergi_galili"
    #>  [659] "Nannospalax galili"
    #>  [660] "Spalax galili"
    #>  [661] "Scomber thynnus"
    #>  [662] "Thunnus thynnus"
    #>  [663] "Thunnus maccoyii"
    #>  [664] "Thynnus maccoyii"
    #>  [665] "Equus asinus"
    #>  [666] "Chromis diagramma"
    #>  [667] "Simochromis diagramma"
    #>  [668] "Diplophysa dalaica"
    #>  [669] "Triplophysa dalaica"
    #>  [670] "Felis tigris"
    #>  [671] "Panthera tigris"
    #>  [672] "Echinus purpuratus"
    #>  [673] "Strongylocentrotus purpuratus"
    #>  [674] "Lucioperca lucioperca"
    #>  [675] "Perca lucioperca"
    #>  [676] "Sander lucioperca"
    #>  [677] "Stizostedion lucioperca"
    #>  [678] "Dipodomys spectabilis"
    #>  [679] "Acinonyx jubatus"
    #>  [680] "Felis jubata"
    #>  [681] "Conyza canadensis"
    #>  [682] "Erigeron canadensis"
    #>  [683] "Mustela lutreola"
    #>  [684] "Camelus bactrianus_ferus"
    #>  [685] "Camelus ferus"
    #>  [686] "Aristolochia californica"
    #>  [687] "Crassostrea gigas"
    #>  [688] "Magallana gigas"
    #>  [689] "Ostrea gigas"
    #>  [690] "Cajanus cajan"
    #>  [691] "Dysidea avara"
    #>  [692] "Spongelia avara"
    #>  [693] "Didelphys domestica"
    #>  [694] "Monodelphis domestica"
    #>  [695] "Pygathrix bieti"
    #>  [696] "Rhinopithecus bieti"
    #>  [697] "Saimiri boliviensis"
    #>  [698] "Hesperomys eremicus"
    #>  [699] "Peromyscus eremicus"
    #>  [700] "Arabidopsis salsuginea"
    #>  [701] "Eutrema salsugineum"
    #>  [702] "Hesperis salsuginea"
    #>  [703] "Sisymbrium salsugineum"
    #>  [704] "Stenophragma salsugineum"
    #>  [705] "Thellungiella salsuginea"
    #>  [706] "Thelypodium salsugineum"
    #>  [707] "Coetomys damarensis"
    #>  [708] "Cryptomys damarensis"
    #>  [709] "Fukomys damarensis"
    #>  [710] "Cervus reevesi"
    #>  [711] "Muntiacus reevesi"
    #>  [712] "Limanda limanda"
    #>  [713] "Liopsetta limanda"
    #>  [714] "Pleuronectes limanda"
    #>  [715] "Rhamnus zizyphus"
    #>  [716] "Ziziphus jujuba"
    #>  [717] "Leptonychotes weddellii"
    #>  [718] "Leptonychotes weddelli"
    #>  [719] "Otaria weddellii"
    #>  [720] "Grammomys dolichurus_surdaster"
    #>  [721] "Grammomys surdaster"
    #>  [722] "Thamnomys surdaster"
    #>  [723] "Solanum aracc-papa"
    #>  [724] "Solanum tuberosum"
    #>  [725] "Andropogon sorghum"
    #>  [726] "Holcus bicolor"
    #>  [727] "Sorghum bicolor"
    #>  [728] "Sorghum bicolor_subsp._bicolor"
    #>  [729] "Sorghum nervosum"
    #>  [730] "Sorghum saccharatum"
    #>  [731] "Sorghum vulgare"
    #>  [732] "Madrepora verrucosa"
    #>  [733] "Pocillopora danae"
    #>  [734] "Pocillopora verrucosa"
    #>  [735] "Holocentrus calcarifer"
    #>  [736] "Lates calcarifer"
    #>  [737] "Hippopotamus amphibius_kiboko"
    #>  [738] "Ixodes sanguineus"
    #>  [739] "Rhipicephalus sanguineus"
    #>  [740] "Clupea harengus_harengus"
    #>  [741] "Clupea harengus"
    #>  [742] "Bos indicus_x_Bos_taurus"
    #>  [743] "Bos primigenius_indicus_x_Bos_primigenius_taurus"
    #>  [744] "Bos taurus_indicus_x_Bos_taurus_taurus"
    #>  [745] "Bos taurus_x_Bos_indicus"
    #>  [746] "Chrysochloris asiatica"
    #>  [747] "Talpa asiatica"
    #>  [748] "Bufo bufo"
    #>  [749] "Rana bufo"
    #>  [750] "Pelmatolapia mariae"
    #>  [751] "Tilapia mariae"
    #>  [752] "Maylandia callainos"
    #>  [753] "Maylandia zebra"
    #>  [754] "Metriaclima callainos"
    #>  [755] "Metriaclima zebra"
    #>  [756] "Pseudotropheus callainos"
    #>  [757] "Pseudotropheus sp._'Pseudotropheus_zebra_complex'"
    #>  [758] "Pseudotropheus zebra"
    #>  [759] "Tilapia zebra"
    #>  [760] "Saccopteryx bilineata"
    #>  [761] "Urocryptus bilineatus"
    #>  [762] "Ictalurus punctatus"
    #>  [763] "Silurus punctatus"
    #>  [764] "Trachinotus anak"
    #>  [765] "Antilope dammah"
    #>  [766] "Oryx dammah"
    #>  [767] "Asparagus litoralis"
    #>  [768] "Asparagus officinalis"
    #>  [769] "Amaranthus gangeticus"
    #>  [770] "Amaranthus mangostanus"
    #>  [771] "Amaranthus tricolor"
    #>  [772] "Aequipecten irradians"
    #>  [773] "Argopecten irradians"
    #>  [774] "Pecten irradians"
    #>  [775] "Macrobrachium nipponense"
    #>  [776] "Palaemon nipponense"
    #>  [777] "Pneumatophorus japonicus"
    #>  [778] "Scomber japonicus"
    #>  [779] "Alnus glutinosa"
    #>  [780] "Betula alnus_var._glutinosa"
    #>  [781] "Saccopteryx leptura"
    #>  [782] "Vespertilio lepturus"
    #>  [783] "Lutra lutra"
    #>  [784] "Peromyscus leucopus"
    #>  [785] "Perca fluviatilis"
    #>  [786] "Elephas africanus"
    #>  [787] "Loxodonta africana_africana"
    #>  [788] "Loxodonta africana"
    #>  [789] "Pagothenia bernacchii"
    #>  [790] "Pseudotrematomus bernacchii"
    #>  [791] "Trematomus bernacchii"
    #>  [792] "Trematomus bernacchi"
    #>  [793] "Lipurus cinereus"
    #>  [794] "Phascolarctos cinereus"
    #>  [795] "Anguilla rostrata"
    #>  [796] "Muraena rostrata"
    #>  [797] "Mustela furo"
    #>  [798] "Mustela putorius_furo"
    #>  [799] "Chaetochloa italica"
    #>  [800] "Panicum italicum"
    #>  [801] "Pennisetum macrochaetum"
    #>  [802] "Setaria italica"
    #>  [803] "Setaria viridis_subsp._italica"
    #>  [804] "Elaeis guineensis"
    #>  [805] "Mus rattus"
    #>  [806] "Rattus rattoides"
    #>  [807] "Rattus rattus"
    #>  [808] "Rattus wroughtoni"
    #>  [809] "Acropora digitifera"
    #>  [810] "Madrepora digitifera"
    #>  [811] "Echinops telfairii"
    #>  [812] "Echinops telfairi"
    #>  [813] "Myotis daubentonii"
    #>  [814] "Myotis daubentoni"
    #>  [815] "Vespertilio daubentonii"
    #>  [816] "Limia formosa"
    #>  [817] "Mollienesia formosa"
    #>  [818] "Poecilia formosa"
    #>  [819] "Macrorhinus angustirostris"
    #>  [820] "Mirounga angustirostris"
    #>  [821] "Phyllostomus discolor"
    #>  [822] "Phocoena crassidens"
    #>  [823] "Pseudoorca crassidens"
    #>  [824] "Pseudorca crassidens"
    #>  [825] "Erinaceus europaeus"
    #>  [826] "Hemiscyllium ocellatum"
    #>  [827] "Squalus ocellatus"
    #>  [828] "Microcebus murinus"
    #>  [829] "Peromyscus californicus_insignis"
    #>  [830] "Peromyscus californicus_subsp._insignis"
    #>  [831] "Galago garnettii"
    #>  [832] "Galago garnetti"
    #>  [833] "Otolemur garnettii"
    #>  [834] "Otolicnus garnettii"
    #>  [835] "Arvicanthis niloticus"
    #>  [836] "Mus niloticus"
    #>  [837] "Didelphis ursina"
    #>  [838] "Vombatus ursinus"
    #>  [839] "Phaseolus angularis"
    #>  [840] "Vigna angularis"
    #>  [841] "Haitia acuta"
    #>  [842] "Physa acuta"
    #>  [843] "Physa heterostropha"
    #>  [844] "Physa integra"
    #>  [845] "Physella acuta"
    #>  [846] "Physella heterostropha"
    #>  [847] "Physella integra"
    #>  [848] "Ctenopharyngodon idella"
    #>  [849] "Ctenopharyngodon idellus"
    #>  [850] "Leuciscus idella"
    #>  [851] "Thalassophryne amazonica"
    #>  [852] "Macrobrachium dacqueti_(Sunier,_1925)"
    #>  [853] "Macrobrachium rosenbergii"
    #>  [854] "Palaemon rosenbergii"
    #>  [855] "Cyprinus rohita"
    #>  [856] "Labeo rohita"
    #>  [857] "Talpa occidentalis"
    #>  [858] "Bombina bombina"
    #>  [859] "Rana bombina"
    #>  [860] "Amphibalanus amphitrite"
    #>  [861] "Balanus amphitrite"
    #>  [862] "Cynocephalus volans"
    #>  [863] "Lemur volans"
    #>  [864] "Panicum hallii"
    #>  [865] "Angill angill"
    #>  [866] "Anguilla anguilla_anguilla"
    #>  [867] "Anguilla anguilla"
    #>  [868] "Muraena anguilla"
    #>  [869] "Fringilla domestica"
    #>  [870] "Passer domesticus"
    #>  [871] "Delphinus orca"
    #>  [872] "Orcinus orca"
    #>  [873] "Penaeus bubulus"
    #>  [874] "Penaeus carinatus"
    #>  [875] "Penaeus durbani"
    #>  [876] "Penaeus monodon"
    #>  [877] "Penaeus (Penaeus)_monodon"
    #>  [878] "Didelphis vulpecula"
    #>  [879] "Trichosurus vulpecula"
    #>  [880] "Myotis lucifugus"
    #>  [881] "Vespertilio lucifugus"
    #>  [882] "Brachypodium distachyon"
    #>  [883] "Bromus distachyos"
    #>  [884] "Ailuropoda melanoleuca"
    #>  [885] "Micropterus dolomieu"
    #>  [886] "Micropterus velox"
    #>  [887] "Labrus bergylta"
    #>  [888] "Poecilia mexicana"
    #>  [889] "Manis pentadactyla"
    #>  [890] "Meles meles"
    #>  [891] "Ursus meles"
    #>  [892] "Ornithorhynchus anatinus"
    #>  [893] "Platypus anatinus"
    #>  [894] "Camelus dromedarius"
    #>  [895] "Felis uncia"
    #>  [896] "Panthera uncia"
    #>  [897] "Uncia uncia"
    #>  [898] "Alligator mississippiensis"
    #>  [899] "Crocodilus mississipiensis"
    #>  [900] "Myrmecophaga aculeata"
    #>  [901] "Tachyglossus aculeatus"
    #>  [902] "Pseudochaenichthys georgianus"
    #>  [903] "Colossoma macropomum"
    #>  [904] "Myletes macropomus"
    #>  [905] "Cordylus capensis"
    #>  [906] "Cordylus (Hemicordylus)_capensis"
    #>  [907] "Hemicordylus capensis"
    #>  [908] "Pseudocordylus capensis"
    #>  [909] "Zonurus capensis"
    #>  [910] "Eptesicus fuscus"
    #>  [911] "Vespertilio fuscus"
    #>  [912] "Dromiciops australis"
    #>  [913] "Dromiciops gliroides"
    #>  [914] "Camelus pacos"
    #>  [915] "Lama guanicoe_pacos"
    #>  [916] "Lama pacos"
    #>  [917] "Vicugna pacos"
    #>  [918] "Mollienesia latipinna"
    #>  [919] "Poecilia latipinna"
    #>  [920] "Elephas maximus_indicus"
    #>  [921] "Balaena glacialis"
    #>  [922] "Eubalaena glacialis"
    #>  [923] "Corylus avellana"
    #>  [924] "Ostrea maxima"
    #>  [925] "Pecten maximus"
    #>  [926] "Felis viverrina"
    #>  [927] "Prionailurus viverrinus"
    #>  [928] "Gymnodraco acuticeps"
    #>  [929] "Thalarctos maritimus"
    #>  [930] "Ursus maritimus"
    #>  [931] "Lemur catta"
    #>  [932] "Bodianus pulcher"
    #>  [933] "Labrus pulcher"
    #>  [934] "Semicossyphus pulcher"
    #>  [935] "Lepus capensis_europaeus"
    #>  [936] "Lepus europaeus"
    #>  [937] "Myotis myotis"
    #>  [938] "Vespertilio myotis"
    #>  [939] "Ursus arctos"
    #>  [940] "Vitis riparia"
    #>  [941] "Felis bengalensis"
    #>  [942] "Prionailurus bengalensis"
    #>  [943] "Clethrionomys glareolus"
    #>  [944] "Mus glareolus"
    #>  [945] "Myodes glareolus"
    #>  [946] "Mustela nigripes"
    #>  [947] "Putorius nigripes"
    #>  [948] "Alopex lagopus"
    #>  [949] "Canis lagopus"
    #>  [950] "Vulpes lagopus"
    #>  [951] "Cercocebus atys"
    #>  [952] "Cercocebus torquatus_atys"
    #>  [953] "Simia atys"
    #>  [954] "Lepidosiren annectens"
    #>  [955] "Protopterus annectens"
    #>  [956] "Rhinocryptis annectens"
    #>  [957] "Cerasus avium"
    #>  [958] "Prunus avium"
    #>  [959] "Prunus cerasus_var._avium"
    #>  [960] "Gadus macrocephalus"
    #>  [961] "Hippoglossus olivaceus"
    #>  [962] "Paralichthys olivaceus"
    #>  [963] "Sorex fumeus"
    #>  [964] "Scomber scomber"
    #>  [965] "Scomber scombrus"
    #>  [966] "Beta vulgaris_subsp._vulgaris"
    #>  [967] "Beta vulgaris_subsp._vulgaris_var._altissima"
    #>  [968] "Beta vulgaris_Sugar_Beet_Group"
    #>  [969] "Beta vulgaris_var._altissima"
    #>  [970] "Balaenoptera ricei"
    #>  [971] "Eumetopias jubatus"
    #>  [972] "Phoca jubata"
    #>  [973] "Centruroides sculpturatus"
    #>  [974] "Diceros bicornis_minor"
    #>  [975] "Myotis yumanensis"
    #>  [976] "Vespertilio yumanensis"
    #>  [977] "Cicer arietinum"
    #>  [978] "Cleome hassleriana_Chodat,_1898"
    #>  [979] "Tarenaya hassleriana"
    #>  [980] "Sebastes umbrosus"
    #>  [981] "Sebastichthys umbrosus"
    #>  [982] "Dasyatis sabina"
    #>  [983] "Hypanus sabinus"
    #>  [984] "Trygon sabina"
    #>  [985] "Eriocheir chinensis"
    #>  [986] "Eriocheir japonica_sinensis"
    #>  [987] "Eriocheir sinensis"
    #>  [988] "Lacerta scincoides"
    #>  [989] "Tiliqua scincoides"
    #>  [990] "Cynara cardunculus_subsp._cardunculus"
    #>  [991] "Bos grunniens_mutus"
    #>  [992] "Bos mutus"
    #>  [993] "Poephagus mutus"
    #>  [994] "Acanthopagrus latus"
    #>  [995] "Sparus latus"
    #>  [996] "Xiphophorus hellerii"
    #>  [997] "Xiphophorus helleri"
    #>  [998] "Acanthochromis polyacanthus"
    #>  [999] "Acanthochromis polyacathus"
    #> [1000] "Dascyllus polyacanthus"
    #> [1001] "Mustela vison"
    #> [1002] "Neogale vison"
    #> [1003] "Neovison vison"
    #> [1004] "Lingula anatina"
    #> [1005] "Lingula lingua"
    #> [1006] "Lingula nipponica"
    #> [1007] "Lingula unguis"
    #> [1008] "Glomus irregulare_Blaszk.,_Wubet,_Renker_&_Buscot_2009"
    #> [1009] "Rhizophagus irregularis_(Baszk.,_Wubet,_Renker_&_Buscot)_C._Walker_&_A._Schusler,_2010"
    #> [1010] "Rhizophagus irregularis"
    #> [1011] "Narcine bancroftii"
    #> [1012] "Torpedo bancroftii"
    #> [1013] "Madrepora faveolata"
    #> [1014] "Montastraea faveolata"
    #> [1015] "Montastrea faveolata"
    #> [1016] "Orbicella faveolata"
    #> [1017] "Esox lucius"
    #> [1018] "Austroberyx affinis"
    #> [1019] "Beryx affinis"
    #> [1020] "Centroberyx affinis"
    #> [1021] "Chinchilla lanigera"
    #> [1022] "Chinchilla velligera"
    #> [1023] "Chinchilla villidera"
    #> [1024] "Mirounga leonina"
    #> [1025] "Phoca leonina"
    #> [1026] "Perognathus longimembris_pacificus"
    #> [1027] "Cynocephalus variegatus"
    #> [1028] "Galeopithecus variegatus"
    #> [1029] "Galeopterus variegatus"
    #> [1030] "Desmodus rotundus"
    #> [1031] "Phyllostoma rotundum"
    #> [1032] "Vigna radiata"
    #> [1033] "Characodon multiradiatus"
    #> [1034] "Girardinichthys multiradiatus"
    #> [1035] "Phaseolus calcaratus"
    #> [1036] "Phaseolus chrysanthos"
    #> [1037] "Phaseolus chrysanthus"
    #> [1038] "Vigna calcarata"
    #> [1039] "Vigna umbellata"
    #> [1040] "Balaenoptera acutorostrata"
    #> [1041] "Canis procyonoides"
    #> [1042] "Nyctereutes procyonoides"
    #> [1043] "Amphioxus floridae"
    #> [1044] "Branchiostoma floridae"
    #> [1045] "Moschus berezovskii"
    #> [1046] "Erythranthe guttata"
    #> [1047] "Mimulus guttatus_subsp._guttatus"
    #> [1048] "Mimulus guttatus"
    #> [1049] "Camelus bactrianus"
    #> [1050] "Octopus sinensis"
    #> [1051] "Alexandromys fortis"
    #> [1052] "Microtus fortis"
    #> [1053] "Dendronephthya gigantea"
    #> [1054] "Canis hyaena"
    #> [1055] "Hyaena hyaena"
    #> [1056] "Myxine glutinosa"
    #> [1057] "Physeter catodon"
    #> [1058] "Physeter macrocephalus"
    #> [1059] "Vitis vinifera"
    #> [1060] "Vitis vinifera_subsp._vinifera"
    #> [1061] "Helicophagus hypophthalmus"
    #> [1062] "Pangasianodon hypophthalmus"
    #> [1063] "Pangasius hypophthalmus"
    #> [1064] "Pangasius sutchi"
    #> [1065] "Capsella rubella"
    #> [1066] "Perkinsus marinus_ATCC_50983"
    #> [1067] "Holocentrus leopardus"
    #> [1068] "Plectropomus leopardus"
    #> [1069] "Hippocampus zosterae"
    #> [1070] "Artibeus jamaicensis"
    #> [1071] "Citrus sinensis"
    #> [1072] "Punica granatum"
    #> [1073] "Abrus cyaneus"
    #> [1074] "Abrus precatorius"
    #> [1075] "Polypterus senegalus"
    #> [1076] "Acomys russatus"
    #> [1077] "Mus russatus"
    #> [1078] "Hemibagrus wyckioides"
    #> [1079] "Macrones wyckioides"
    #> [1080] "Mystus wyckioides"
    #> [1081] "Melanotaenia boesemani"
    #> [1082] "Balaenoptera robusta"
    #> [1083] "Eschrichtius gibbosus"
    #> [1084] "Eschrichtius robustus"
    #> [1085] "Sturnira hondurensis"
    #> [1086] "Sturnira ludovici_hondurensis"
    #> [1087] "Amphilophus centrarchus"
    #> [1088] "Archocentrus centrarchus"
    #> [1089] "Cichlasoma centrarchus"
    #> [1090] "Heros centrarchus"
    #> [1091] "Delphinus melas"
    #> [1092] "Globicephala melaena"
    #> [1093] "Globicephala melas"
    #> [1094] "Manis javanica"
    #> [1095] "Phyllostomus hastatus"
    #> [1096] "Vespertilio hastatus"
    #> [1097] "Scyliorhinus canicula"
    #> [1098] "Squalus canicula"
    #> [1099] "Pipistrellus deserti"
    #> [1100] "Pipistrellus kuhlii_deserti"
    #> [1101] "Pipistrellus kuhlii"
    #> [1102] "Pipistrellus kuhli"
    #> [1103] "Vespertilio kuhlii"
    #> [1104] "Silurana tropicalis"
    #> [1105] "Xenopus laevis_tropicalis"
    #> [1106] "Xenopus (Silurana)_tropicalis"
    #> [1107] "Xenopus tropicalis"
    #> [1108] "Solea senegalensis"
    #> [1109] "Branchiostoma lanceolatum"
    #> [1110] "Limax lanceolatus"
    #> [1111] "Mugil cephalotus"
    #> [1112] "Mugil cephalus"
    #> [1113] "Mugil galapagensis"
    #> [1114] "Mugil japonicus"
    #> [1115] "Capra aegagrus_hircus"
    #> [1116] "Capra hircus"
    #> [1117] "Poeciliopsis prolifica"
    #> [1118] "Latimeria chalumnae"
    #> [1119] "Gopherus flavomarginatus"
    #> [1120] "Lontra canadensis"
    #> [1121] "Lutra canadensis"
    #> [1122] "Hesperomys torridus"
    #> [1123] "Onychomys torridus"
    #> [1124] "Boophilus microplus"
    #> [1125] "Rhipicephalus (Boophilus)_microplus"
    #> [1126] "Rhipicephalus microplus"
    #> [1127] "Molossus molossus"
    #> [1128] "Vespertilio molossus"
    #> [1129] "Lagenorhynchus obliquidens"
    #> [1130] "Sagmatias obliquidens"
    #> [1131] "Syngnathus typhle"
    #> [1132] "Delphinus cymodoce"
    #> [1133] "Delphinus truncatus"
    #> [1134] "Tursiops cymodoce"
    #> [1135] "Tursiops truncatus"
    #> [1136] "Antilope sumatraensis"
    #> [1137] "Capricornis sumatraensis"
    #> [1138] "Capricornis sumatrensis"
    #> [1139] "Naemorhedus sumatraensis"
    #> [1140] "Morone flavescens"
    #> [1141] "Perca flavescens"
    #> [1142] "Arvicola nivalis"
    #> [1143] "Chionomys nivalis"
    #> [1144] "Microtus nivalis"
    #> [1145] "Felis rufus"
    #> [1146] "Lynx rufus"
    #> [1147] "Siphostoma scovelli"
    #> [1148] "Syngnathus scovelli"
    #> [1149] "Myotis brandtii"
    #> [1150] "Vespertilio brandtii"
    #> [1151] "Astatotilapia burtoni"
    #> [1152] "Chromis burtoni"
    #> [1153] "Haplochromis burtoni"
    #> [1154] "Sorex araneus"
    #> [1155] "Kogia breviceps"
    #> [1156] "Physeter breviceps"
    #> [1157] "Silurus meridionalis"
    #> [1158] "Silurus soldatovi_meridionalis"
    #> [1159] "Cucumis melo"
    #> [1160] "Anoplopoma fimbria"
    #> [1161] "Gadus fimbria"
    #> [1162] "Lagenorhynchus albirostris"
    #> [1163] "Alosa alosa"
    #> [1164] "Clupea alosa"
    #> [1165] "Chelonia mydas"
    #> [1166] "Testudo mydas"
    #> [1167] "Ctenocephalides felis"
    #> [1168] "Stylophora pistillata"
    #> [1169] "Eulemur rufifrons"
    #> [1170] "Cyrtodiopsis dalmanii"
    #> [1171] "Diopsis dalmanni"
    #> [1172] "Teleopsis dalmanni"
    #> [1173] "Rhagoletis zephyria"
    #> [1174] "Rhodamnia argentea"
    #> [1175] "Gasterosteus aculeatus"
    #> [1176] "Labrus celidotus"
    #> [1177] "Notolabrus celidotus"
    #> [1178] "Budorcas taxicolor"
    #> [1179] "Nelumbo nucifera"
    #> [1180] "Amphiprion ocellaris"
    #> [1181] "Arvicola amphibius"
    #> [1182] "Arvicola terrestris_(Linnaeus,_1758)"
    #> [1183] "Mus amphibius"
    #> [1184] "Daphnia magna"
    #> [1185] "Psammomys obesus"
    #> [1186] "Carlito syrichta"
    #> [1187] "Simia syrichta"
    #> [1188] "Tarsius syrichta"
    #> [1189] "Cyprinodon tularosa"
    #> [1190] "Arvicola princeps"
    #> [1191] "Ochotona princeps"
    #> [1192] "Phytophthora sojae"
    #> [1193] "Phoca vitulina"
    #> [1194] "Coecilia bivitatum"
    #> [1195] "Rhinatrema bivitattum"
    #> [1196] "Rhinatrema bivittatum"
    #> [1197] "Lagomys curzoniae"
    #> [1198] "Ochotona curzonae"
    #> [1199] "Ochotona curzoniae"
    #> [1200] "Litopenaeus vannamei"
    #> [1201] "Penaeus (Litopenaeus)_vannamei"
    #> [1202] "Penaeus vannamei"
    #> [1203] "Clupea cyprinoides"
    #> [1204] "Megalops cyprinoides"
    #> [1205] "Diospyros lotus"
    #> [1206] "Hippoglossus stenolepis"
    #> [1207] "Phacochoerus africanus"
    #> [1208] "Sus africanus"
    #> [1209] "Corythoichthys intestinalis"
    #> [1210] "Syngnatus intestinalis"
    #> [1211] "Mandrillus leucophaeus"
    #> [1212] "Papio leucophaeus"
    #> [1213] "Simia leucophaea"
    #> [1214] "Scylla paramamosain"
    #> [1215] "Lepidosternon floridanum"
    #> [1216] "Rhineura floridana"
    #> [1217] "Delphinus densirostris"
    #> [1218] "Mesoplodon densirostris"
    #> [1219] "Epinephelus fuscoguttatus"
    #> [1220] "Perca summana_fuscoguttata"
    #> [1221] "Asterias miniata"
    #> [1222] "Asterina miniata"
    #> [1223] "Patiria miniata"
    #> [1224] "Lampris incognitus"
    #> [1225] "Monachus schauinslandi"
    #> [1226] "Neomonachus schauinslandi"
    #> [1227] "Hippoglossus hippoglossus"
    #> [1228] "Pleuronectes hippoglossus"
    #> [1229] "Andrographis paniculata"
    #> [1230] "Etheostoma cragini"
    #> [1231] "Perca chuatsi"
    #> [1232] "Siniperca chuatsi"
    #> [1233] "Colobus angolensis_palliatus"
    #> [1234] "Notothenia coriiceps"
    #> [1235] "Hypomesus transpacificus"
    #> [1236] "Clytia hemisphaerica"
    #> [1237] "Clytia languida"
    #> [1238] "Clytia viridicans"
    #> [1239] "Medusa hemisphaerica"
    #> [1240] "Dermochelys coriacea"
    #> [1241] "Testudo coriacea"
    #> [1242] "Bufo bufo_gargarizans"
    #> [1243] "Bufo gargarizans"
    #> [1244] "Bufo japonicus_gargarizans"
    #> [1245] "Equus burchellii_quagga"
    #> [1246] "Equus quagga"
    #> [1247] "Delphinapterus leucas"
    #> [1248] "Delphinus leucas"
    #> [1249] "Fugu flavidus"
    #> [1250] "Takifugu flavidus"
    #> [1251] "Pteronotus mesoamericanus"
    #> [1252] "Pteronotus parnellii_mesoamericanus"
    #> [1253] "Citrus clementina"
    #> [1254] "Citrus deliciosa_x_Citrus_sinensis"
    #> [1255] "Citrus x_clementina"
    #> [1256] "Fugu rubripes"
    #> [1257] "Sphaeroides rubripes"
    #> [1258] "Takifugu rubripes"
    #> [1259] "Tetraodon rubripes"
    #> [1260] "Homarus americanus"
    #> [1261] "Osteoglossum formosum"
    #> [1262] "Scleropages formosus"
    #> [1263] "Larimichthys crocea"
    #> [1264] "Pseudosciaena amblyceps"
    #> [1265] "Pseudosciaena crocea"
    #> [1266] "Sciaena crocea"
    #> [1267] "Fragaria vesca"
    #> [1268] "Folsomia candida"
    #> [1269] "Seriola aureovittata"
    #> [1270] "Seriola lalandi_aureovittata"
    #> [1271] "Helops morio"
    #> [1272] "Zophobas atratus_f._morio"
    #> [1273] "Zophobas morio"
    #> [1274] "Limulus polyphemus"
    #> [1275] "Monoculus polyphemus"
    #> [1276] "Doryrhamphus dactyliophorus"
    #> [1277] "Dunckerocampus dactyliophorus"
    #> [1278] "Syngnathus dactyliophorus"
    #> [1279] "Epinephelus lanceolatus"
    #> [1280] "Holocentrus lanceolatus"
    #> [1281] "Promicrops lanceolatus"
    #> [1282] "Mizuhopecten yessoensis"
    #> [1283] "Patinopecten yessoensis"
    #> [1284] "Patiopecten yessoensis"
    #> [1285] "Pecten yessoensis"
    #> [1286] "Platypoecilus maculatus"
    #> [1287] "Xiphophorus maculatus"
    #> [1288] "Fenneropenaeus indicus"
    #> [1289] "Penaeus (Fenneropenaeus)_indicus"
    #> [1290] "Penaeus indicus"
    #> [1291] "Triplophysa rosa"
    #> [1292] "Pempheris klunzingeri"
    #> [1293] "Antechinus flavipes"
    #> [1294] "Phascogale flavipes"
    #> [1295] "Anolis carolinensis"
    #> [1296] "Delphinus delphis"
    #> [1297] "Anabrus simplex"
    #> [1298] "Apodichthys violaceus"
    #> [1299] "Cebidichthys violaceus"
    #> [1300] "Oryza brachyantha"
    #> [1301] "Emydura macquarii_macquarii"
    #> [1302] "Emys macquaria_macquaria"
    #> [1303] "Tetrahymena thermophila_SB210"
    #> [1304] "Amygdalus communis"
    #> [1305] "Amygdalus dulcis"
    #> [1306] "Prunus amygdalus"
    #> [1307] "Prunus communis"
    #> [1308] "Prunus dulcis"
    #> [1309] "Prunus dulcis_var._sativa"
    #> [1310] "Oryzias latipes"
    #> [1311] "Poecilia latipes"
    #> [1312] "Bagrus vachellii"
    #> [1313] "Pelteobagrus vachellii"
    #> [1314] "Pseudobagrus vachellii"
    #> [1315] "Pseudobagrus vachelli"
    #> [1316] "Tachysurus vachellii"
    #> [1317] "Sarcophilus harrisii"
    #> [1318] "Sarcophilus laniarius_(Owen,_1838)"
    #> [1319] "Sarcophilus laniarius"
    #> [1320] "Ursinus harrisii"
    #> [1321] "Ictalurus furcatus"
    #> [1322] "Pimelodus furcatus"
    #> [1323] "Amphioxus belcheri"
    #> [1324] "Branchiostoma belcheri"
    #> [1325] "Gigantopelta aegis"
    #> [1326] "Echinus variegatus"
    #> [1327] "Lytechinus variegatus"
    #> [1328] "Antennarius striatus"
    #> [1329] "Lophius striatus"
    #> [1330] "Diaphorina citri"
    #> [1331] "Diaphornia citri"
    #> [1332] "Epinephelus moara"
    #> [1333] "Serranus moara"
    #> [1334] "Stegodyphus dumicola"
    #> [1335] "Boleophthalmus pectinirostris"
    #> [1336] "Gobius pectinirostris"
    #> [1337] "Austrofundulus limnaeus"
    #> [1338] "Scypha ciliata"
    #> [1339] "Spongia ciliata"
    #> [1340] "Sycon ciliatum"
    #> [1341] "Pleuronectes maximus"
    #> [1342] "Psetta maxima"
    #> [1343] "Rhombus maximus"
    #> [1344] "Scophthalmus maximus"
    #> [1345] "Sesamum indicum"
    #> [1346] "Sesamum orientale"
    #> [1347] "Clinocottus analis"
    #> [1348] "Oligocottus analis"
    #> [1349] "Necator americanus"
    #> [1350] "Armeniaca mume"
    #> [1351] "Prunus mume"
    #> [1352] "Myotis aurascens"
    #> [1353] "Myotis davidii"
    #> [1354] "Myotis hajastanicus"
    #> [1355] "Vespertilio Davidii"
    #> [1356] "Didelphys agilis"
    #> [1357] "Gracilinanus agilis"
    #> [1358] "Acanthophacelus reticulata"
    #> [1359] "Poecilia (Acanthophacelus)_reticulata"
    #> [1360] "Poecilia latipinna_reticulata"
    #> [1361] "Poecilia reticulata"
    #> [1362] "Armigeres subalbatus"
    #> [1363] "Culex subalbatus"
    #> [1364] "Australorbis glabratus"
    #> [1365] "Biomphalaria glabrata"
    #> [1366] "Planorbis glabratus"
    #> [1367] "Hypudaeus ochrogaster"
    #> [1368] "Microtus ochrogaster"
    #> [1369] "Amygdalus persica"
    #> [1370] "Persica vulgaris"
    #> [1371] "Prunus persica"
    #> [1372] "Prunus persica_var._densa"
    #> [1373] "Xenia sp._Carnegie-2017"
    #> [1374] "Chiloscyllium plagiosum"
    #> [1375] "Scyllium plagiosum"
    #> [1376] "Cheilinus undulatus"
    #> [1377] "Coluber guttatus"
    #> [1378] "Elaphe guttata"
    #> [1379] "Pantherophis guttatus"
    #> [1380] "Phodopus roborovskii"
    #> [1381] "Caenorhabditis remanei"
    #> [1382] "Caenorhabditis vulgaris"
    #> [1383] "Lamprologus brichardi"
    #> [1384] "Neolamprologus brichardi"
    #> [1385] "Eleginops maclovinus"
    #> [1386] "Eleginus maclovinus"
    #> [1387] "Gymnopis unicolor"
    #> [1388] "Microcaecilia unicolor"
    #> [1389] "Rhinatrema unicolor"
    #> [1390] "Sciaena jaculatrix"
    #> [1391] "Toxotes jaculatrix"
    #> [1392] "Emys pileata"
    #> [1393] "Malaclemys terrapin_pileata"
    #> [1394] "Lacerta sicula_raffonei"
    #> [1395] "Podarcis raffoneae"
    #> [1396] "Podarcis raffonei"
    #> [1397] "Podarcis wagleriana_raffonei"
    #> [1398] "Benincasa cerifera"
    #> [1399] "Benincasa hispida"
    #> [1400] "Benincasa pruriens"
    #> [1401] "Cucurbita hispida"
    #> [1402] "Lagenaria siceraria_var._hispida"
    #> [1403] "Dendrobium catenatum"
    #> [1404] "Chaetodon armatus"
    #> [1405] "Enoplosus armatus"
    #> [1406] "Marsupenaeus japonicus"
    #> [1407] "Penaeus japonicus"
    #> [1408] "Penaeus (Marsupenaeus)_japonicus"
    #> [1409] "Penaeus (Melicertus)_japonicus"
    #> [1410] "Chaetodon argus"
    #> [1411] "Scatophagus argus"
    #> [1412] "Anas boschas"
    #> [1413] "Anas domesticus"
    #> [1414] "Anas platyrhynchos_f._domestica"
    #> [1415] "Anas platyrhynchos"
    #> [1416] "Chanos chanos"
    #> [1417] "Mugil chanos"
    #> [1418] "Bison bison_bison"
    #> [1419] "Bos bison_bison"
    #> [1420] "Amblyraja radiata"
    #> [1421] "Raja radiata"
    #> [1422] "Delphinus phocoena"
    #> [1423] "Phocoena phocoena"
    #> [1424] "Phocoenoides phocoena"
    #> [1425] "Amphimedon queenslandica"
    #> [1426] "Hippocampus comes"
    #> [1427] "Hipposideros armiger"
    #> [1428] "Rhinolophus armiger"
    #> [1429] "Cynoglossus (Arelia)_semilaevis"
    #> [1430] "Cynoglossus semilaevis"
    #> [1431] "Alecto japonica"
    #> [1432] "Anneissia japonica"
    #> [1433] "Oxycomanthus japonicus"
    #> [1434] "Ananas comosus"
    #> [1435] "Ananas comosus_var._comosus"
    #> [1436] "Ananas lucidus"
    #> [1437] "Bromelia comosa"
    #> [1438] "Callionymus splendidus"
    #> [1439] "Pterosynchiropus splendidus"
    #> [1440] "Synchiropus splendidus"
    #> [1441] "Neophocaena asiaeorientalis_asiaeorientalis"
    #> [1442] "Pollicipes cornucopia"
    #> [1443] "Pollicipes pollicipes"
    #> [1444] "Pseudoliparis swirei"
    #> [1445] "Blatta americana"
    #> [1446] "Periplaneta americana"
    #> [1447] "Rhincodon typus"
    #> [1448] "Ricinus communis"
    #> [1449] "Ricinus sanguineus"
    #> [1450] "Anomalospiza imberbis"
    #> [1451] "Crithagra imberbis"
    #> [1452] "Phyllopteryx taeniolatus"
    #> [1453] "Syngnatus taeniolatus"
    #> [1454] "Lytechinus pictus"
    #> [1455] "Psammechinus pictus"
    #> [1456] "Brachionichthys hirsutus"
    #> [1457] "Lophius hirsutus"
    #> [1458] "Malania oleifera"
    #> [1459] "Schizoporella aterrima_var._subatra"
    #> [1460] "Watersipora subatra"
    #> [1461] "Heteronota binoei"
    #> [1462] "Heteronotia binoei"
    #> [1463] "Trichomonas foetus"
    #> [1464] "Tritrichomonas foetus"
    #> [1465] "Aedes albopictus"
    #> [1466] "Stegomyia albopicta"
    #> [1467] "Ceratotherium simum_simum"
    #> [1468] "Kryptolebias marmoratus"
    #> [1469] "Rivulus marmoratus"
    #> [1470] "Patella vulgata"
    #> [1471] "Rhagoletis pomonella"
    #> [1472] "Trypanosoma cruzi"
    #> [1473] "Squalus fasciatus"
    #> [1474] "Squalus tigrinus"
    #> [1475] "Stegostoma fasciatum"
    #> [1476] "Stegostoma tigrinum"
    #> [1477] "Cistudo triunguis"
    #> [1478] "Terrapene mexicana_triunguis"
    #> [1479] "Terrapene triunguis"
    #> [1480] "Odobenus rosmarus_divergens"
    #> [1481] "Trichechus divergens"
    #> [1482] "Manatus latirostris"
    #> [1483] "Trichechus manatus_latirostris"
    #> [1484] "Carcharodon carcharias"
    #> [1485] "Squalus carcharias"
    #> [1486] "Macrognathus armatus"
    #> [1487] "Mastacembelus armatus"
    #> [1488] "Theobroma cacao"
    #> [1489] "Diabrotica virgifera_virgifera"
    #> [1490] "Syngnathoides biaculeatus"
    #> [1491] "Syngnathus biaculeatus"
    #> [1492] "Actinia diaphana"
    #> [1493] "Aiptasia pallida"
    #> [1494] "Aiptasia pulchella"
    #> [1495] "Dysactis pallida"
    #> [1496] "Exaiptasia diaphana"
    #> [1497] "Exaiptasia pallida"
    #> [1498] "Syngnathus acus_rubescens"
    #> [1499] "Syngnathus acus"
    #> [1500] "Syngnathus rubescens"
    #> [1501] "Guillardia theta_CCMP2712"
    #> [1502] "Anarrhichthys ocellatus"
    #> [1503] "Caretta caretta"
    #> [1504] "Testudo caretta"
    #> [1505] "Pelodiscus sinensis"
    #> [1506] "Trionyx sinensis"
    #> [1507] "Anas acuta"
    #> [1508] "Xiphias gladius"
    #> [1509] "Cyprinodon variegatus"
    #> [1510] "Alligator sinensis"
    #> [1511] "Morus notabilis"
    #> [1512] "Embiotoca jacksonii"
    #> [1513] "Embiotoca jacksoni"
    #> [1514] "Nymphaea colorata"
    #> [1515] "Lampyris pyralis"
    #> [1516] "Photinus pyralis"
    #> [1517] "Chaetodon trifascialis"
    #> [1518] "Meleagris gallopavo"
    #> [1519] "Pomacea canaliculata"
    #> [1520] "Haplochromis nyererei"
    #> [1521] "Pundamilia nyererei"
    #> [1522] "Dixiphia pipra"
    #> [1523] "Parus pipra"
    #> [1524] "Pipra pipra"
    #> [1525] "Pseudopipra pipra"
    #> [1526] "Caranx dumerili"
    #> [1527] "Seriola dumerili"
    #> [1528] "Macrosteles (Macrosteles)_quadrilineatus"
    #> [1529] "Macrosteles quadrilineatus"
    #> [1530] "Lampetra reissneri"
    #> [1531] "Lethenteron reissneri"
    #> [1532] "Petromyzon reissneri"
    #> [1533] "Enhydra lutris_kenyoni"
    #> [1534] "Fluta alba"
    #> [1535] "Monopterus albus"
    #> [1536] "Muraena alba"
    #> [1537] "Caecilia seraphini"
    #> [1538] "Geotrypetes seraphini"
    #> [1539] "Hypogeophis seraphini"
    #> [1540] "Chaetodon rostratus"
    #> [1541] "Chelmon rostratus"
    #> [1542] "Cucumis sativus"
    #> [1543] "Cyrtodactylus macularius"
    #> [1544] "Eublepharis macularius"
    #> [1545] "Aphelocoma coerulescens"
    #> [1546] "Corvus coerulescens"
    #> [1547] "Felis concolor"
    #> [1548] "Panthera concolor"
    #> [1549] "Puma concolor"
    #> [1550] "Cephalopterus hypostomus"
    #> [1551] "Mobula hypostoma"
    #> [1552] "Cancer chinensis"
    #> [1553] "Fenneropenaeus chinensis"
    #> [1554] "Penaeus chinensis"
    #> [1555] "Pomacentrus partitus"
    #> [1556] "Stegastes partitus"
    #> [1557] "Phascum patens"
    #> [1558] "Physcomitrella patens_subsp._patens"
    #> [1559] "Physcomitrella patens"
    #> [1560] "Physcomitrium patens"
    #> [1561] "Anas jamaicensis"
    #> [1562] "Oxyura jamaicensis"
    #> [1563] "Drosophila miranda"
    #> [1564] "Lottia gigantea"
    #> [1565] "Crotalus tigris"
    #> [1566] "Eurytemora carolleeae"
    #> [1567] "Argentina anserina"
    #> [1568] "Potentilla anserina"
    #> [1569] "Struthio camelus_domesticus"
    #> [1570] "Struthio camelus"
    #> [1571] "Uranotaenia lowii"
    #> [1572] "Cynolebias whitei"
    #> [1573] "Nematolebias whitei"
    #> [1574] "Simpsonichthys whitei"
    #> [1575] "Sceloporus undulatus"
    #> [1576] "Stellio undulatus"
    #> [1577] "Helobdella robusta"
    #> [1578] "Anolis sagrei"
    #> [1579] "Norops sagrei"
    #> [1580] "Styela clava"
    #> [1581] "Manis afer_afer"
    #> [1582] "Orycteropus afer_afer"
    #> [1583] "Leucoraja erinaceus"
    #> [1584] "Raja erinaceus"
    #> [1585] "Phytophthora nicotianae_INRA-310"
    #> [1586] "Brachyistius frenatus"
    #> [1587] "Micrometrus frenatus"
    #> [1588] "Anas olor"
    #> [1589] "Cygnus olor"
    #> [1590] "Lacerta agilis"
    #> [1591] "Phycodurus eques"
    #> [1592] "Phyllopteryx eques"
    #> [1593] "Coluber reginae"
    #> [1594] "Erythrolamprus reginae"
    #> [1595] "Leimadophis reginae"
    #> [1596] "Liophis reginae"
    #> [1597] "Millepora damicornis"
    #> [1598] "Pocillopora caespitosa_laysanensis"
    #> [1599] "Pocillopora damicornis_laysanensis"
    #> [1600] "Pocillopora damicornis"
    #> [1601] "Morone saxatilis"
    #> [1602] "Perca saxatilis"
    #> [1603] "Columba livia_domestica"
    #> [1604] "Columba livia"
    #> [1605] "Miniopterus natalensis"
    #> [1606] "Miniopterus schreibersii_natalensis"
    #> [1607] "Vespertilio natalensis"
    #> [1608] "Buthus vittatus"
    #> [1609] "Centruroides vittatus"
    #> [1610] "Actinia tenebrosa"
    #> [1611] "Neptunus trituberculatus"
    #> [1612] "Portunus (Portunus)_trituberculatus"
    #> [1613] "Portunus trituberculatus"
    #> [1614] "Lacerta vivipara"
    #> [1615] "Zootoca vivipara"
    #> [1616] "Jatropha curcas"
    #> [1617] "Propithecus coquereli"
    #> [1618] "Propithecus verreauxi_coquereli"
    #> [1619] "Amusium balloti"
    #> [1620] "Amusium japonicum_balloti"
    #> [1621] "Pecten balloti"
    #> [1622] "Ylistrum balloti"
    #> [1623] "Emys orbicularis"
    #> [1624] "Testudo orbicularis"
    #> [1625] "Caenorhabditis briggsae"
    #> [1626] "Rhabditis briggsae"
    #> [1627] "Homalodisca coagulata"
    #> [1628] "Homalodisca vitripennis"
    #> [1629] "Tettigonia coagulata"
    #> [1630] "Tettigonia vitripennis"
    #> [1631] "Corticium candelabrum"
    #> [1632] "Python bivittatus"
    #> [1633] "Python molurus_bivittatus"
    #> [1634] "Chrysemys scripta_elegans"
    #> [1635] "Emys elegans"
    #> [1636] "Pseudemys scripta_elegans"
    #> [1637] "Trachemys scripta_elegans"
    #> [1638] "Protobothrops mucrosquamatus"
    #> [1639] "Trigonocephalus mucrosquamatus"
    #> [1640] "Trimeresurus mucrosquamatus"
    #> [1641] "Daphnia pulex"
    #> [1642] "Paramacrobiotus metropolitanus"
    #> [1643] "Lipotes vexillifer"
    #> [1644] "Columba fasciata"
    #> [1645] "Patagioenas fasciata"
    #> [1646] "Petromyzon marinus"
    #> [1647] "Falco albicilla"
    #> [1648] "Haliaeetus albicilla"
    #> [1649] "Poephila guttata"
    #> [1650] "Taeniopygia guttata"
    #> [1651] "Taenopygia guttata"
    #> [1652] "Aplysia californica"
    #> [1653] "Phalaenopsis equestris"
    #> [1654] "Stauroglottis equestris"
    #> [1655] "Palinurus ornatus"
    #> [1656] "Panulirus ornatus"
    #> [1657] "Balanoglossus kowalevskii"
    #> [1658] "Saccoglossus kowalevskii"
    #> [1659] "Saccoglossus kowalevskyi"
    #> [1660] "Momordica charantia"
    #> [1661] "Numida meleagris"
    #> [1662] "Phasianus meleagris"
    #> [1663] "Callorhinchus milii"
    #> [1664] "Halichondria (Halichondria)_panicea"
    #> [1665] "Halichondria panicea"
    #> [1666] "Spongia panicea"
    #> [1667] "Sphaerodactylus townsendi"
    #> [1668] "Achaearanea tepidariorum"
    #> [1669] "Parasteatoda tepidariorum"
    #> [1670] "Theridion tepidariorum"
    #> [1671] "Elgaria multicarinata_webbii"
    #> [1672] "Elgaria multicarinata_webbi"
    #> [1673] "Gerrhonotus webbii"
    #> [1674] "Eutainia elegans"
    #> [1675] "Thamnophis elegans"
    #> [1676] "Corvus hawaiiensis"
    #> [1677] "Manacus candei"
    #> [1678] "Pipra candei"
    #> [1679] "Chamaea fasciata"
    #> [1680] "Parus fasciatus"
    #> [1681] "Pezoporus flaviventris"
    #> [1682] "Pezoporus wallicus_flaviventris_North,_1911"
    #> [1683] "Pezoporus wallicus_flaviventris"
    #> [1684] "Apteryx mantelli"
    #> [1685] "Euleptes europaea"
    #> [1686] "Euleptes europea"
    #> [1687] "Phyllodactylus europaea"
    #> [1688] "Phyllodactylus europaeus"
    #> [1689] "Ptyodactylus caudivolvolus"
    #> [1690] "Megarhinus septentrionalis"
    #> [1691] "Toxorhynchites rutilus_septentrionalis"
    #> [1692] "Altirana parkeri"
    #> [1693] "Nanorana parkeri"
    #> [1694] "Ahaetulla prasina"
    #> [1695] "Dryophis prasinus"
    #> [1696] "Metopolophium dirhodum"
    #> [1697] "Fusarium oxysporum_f._sp._lycopersici_4287"
    #> [1698] "Heteropelma chrysocephalum"
    #> [1699] "Neopelma chrysocephalum"
    #> [1700] "Melanerpes formicivorus"
    #> [1701] "Picus formicivorus"
    #> [1702] "Lathamus discolor"
    #> [1703] "Psittacus discolor"
    #> [1704] "Musca domestica"
    #> [1705] "Acanthopleura japonica"
    #> [1706] "Chiton japonicus"
    #> [1707] "Liolophura japonica"
    #> [1708] "Ascaris longissima"
    #> [1709] "Lineus longissimus"
    #> [1710] "Pristis pectinata"
    #> [1711] "Acinia solidaginis"
    #> [1712] "Eurosta solidaginis"
    #> [1713] "Fringilla melodia_melodia"
    #> [1714] "Melospiza melodia_melodia"
    #> [1715] "Astacus quadricarinatus"
    #> [1716] "Cherax quadricarinatus"
    #> [1717] "Ischnura elegans"
    #> [1718] "Geopsittacus occidentalis"
    #> [1719] "Pezoporus occidentalis"
    #> [1720] "Fringilla chalybeata"
    #> [1721] "Vidua chalybeata"
    #> [1722] "Coturnix coturnix_japanica"
    #> [1723] "Coturnix coturnix_japonica"
    #> [1724] "Coturnix coturnix_Japonicus"
    #> [1725] "Coturnix japonica_japonica"
    #> [1726] "Coturnix japonica"
    #> [1727] "Gekko japonicus"
    #> [1728] "Platydactylus japonicus"
    #> [1729] "Pelecanus carbo"
    #> [1730] "Phalacrocorax carbo"
    #> [1731] "Nilaparvata lugens"
    #> [1732] "Ardea americana"
    #> [1733] "Grus americana"
    #> [1734] "Grus americanus"
    #> [1735] "Aedes camptorhynchus"
    #> [1736] "Culex camptorhynchus"
    #> [1737] "Ochlerotatus camptorhynchus"
    #> [1738] "Ochlerotatus (Ochlerotatus)_camptorhynchus"
    #> [1739] "Harpia harpyja"
    #> [1740] "Vultur harpyja"
    #> [1741] "Pipra filicauda"
    #> [1742] "Herrania umbratica"
    #> [1743] "Ilyonectria robusta"
    #> [1744] "Ramularia robusta"
    #> [1745] "Agelaius tricolor"
    #> [1746] "Icterus tricolor"
    #> [1747] "Cupidonia cupido_pallidicincta"
    #> [1748] "Tympanuchus pallidicinctus"
    #> [1749] "Topomyia yanbarensis"
    #> [1750] "Parus atricapillus"
    #> [1751] "Poecile atricapilla"
    #> [1752] "Poecile atricapillus"
    #> [1753] "Corapipo altera"
    #> [1754] "Candoia aspera"
    #> [1755] "Erebophis aspera"
    #> [1756] "Acyrthosiphon pisum"
    #> [1757] "Acyrthosiphum pisum"
    #> [1758] "Aphis pisum"
    #> [1759] "Saprolegnia parasitica_CBS_223.65"
    #> [1760] "Fringilla macroura"
    #> [1761] "Vidua macroura"
    #> [1762] "Carica papaya"
    #> [1763] "Chiroxiphia lanceolata"
    #> [1764] "Pipra lanceolata"
    #> [1765] "Heliangelus exortis"
    #> [1766] "Trochilus exortis"
    #> [1767] "Euphema bourkii"
    #> [1768] "Neophema bourkii"
    #> [1769] "Neopsephotus bourkii"
    #> [1770] "Octopus bimaculoides"
    #> [1771] "Lagopus muta"
    #> [1772] "Tetrao mutus"
    #> [1773] "Bradysia coprophila"
    #> [1774] "Sciara coprophila"
    #> [1775] "Bucco pusillus"
    #> [1776] "Pogoniulus pusillus"
    #> [1777] "Coluber sirtalis"
    #> [1778] "Thamnophis sirtalis"
    #> [1779] "Falco peregrinus"
    #> [1780] "Falco cherrug"
    #> [1781] "Phytophthora cinnamomi"
    #> [1782] "Leptothorax nylanderi"
    #> [1783] "Temnothorax nylanderi"
    #> [1784] "Burrica mexicana"
    #> [1785] "Carpodacus mexicanus"
    #> [1786] "Fringilla mexicana"
    #> [1787] "Haemorhous mexicanus"
    #> [1788] "Asteracanthion distichum"
    #> [1789] "Asteracanthium distichum"
    #> [1790] "Asterias attenuata"
    #> [1791] "Asterias distichum"
    #> [1792] "Asterias rubens"
    #> [1793] "Asterias stimpsoni"
    #> [1794] "Asterias vulgaris"
    #> [1795] "Fringilla gambellii"
    #> [1796] "Zonotrichia leucophrys_gambelii"
    #> [1797] "Manduca sexta"
    #> [1798] "Sphinx sexta"
    #> [1799] "Pituophis catenifer_annectens"
    #> [1800] "Condylura cristata"
    #> [1801] "Sorex cristatus"
    #> [1802] "Cuculus canorus"
    #> [1803] "Pezoporus wallicus"
    #> [1804] "Aedes aegypti"
    #> [1805] "Aedes (Stegomyia)_aegypti"
    #> [1806] "Culex aegypti"
    #> [1807] "Stegomyia aegypti"
    #> [1808] "Falco naumanni"
    #> [1809] "Corvus kubaryi"
    #> [1810] "Larus tridactylus"
    #> [1811] "Rissa tridactyla"
    #> [1812] "Aphanomyces astaci"
    #> [1813] "Culex (Culex)_pipiens_pallens"
    #> [1814] "Culex pipiens_pallens"
    #> [1815] "Cydia pomonella"
    #> [1816] "Phalaena pomonella"
    #> [1817] "Tenebrio molitor"
    #> [1818] "Accipiter gentilis"
    #> [1819] "Accipiter gentillis"
    #> [1820] "Falco gentilis"
    #> [1821] "Crocodylus porosus"
    #> [1822] "Pterocnemia pennata"
    #> [1823] "Rhea pennata"
    #> [1824] "Amborella trichopoda"
    #> [1825] "Falco biarmicus"
    #> [1826] "Lagopus leucura"
    #> [1827] "Lagopus leucurus"
    #> [1828] "Tetrao leucurus"
    #> [1829] "Falco rusticolus"
    #> [1830] "Chroicocephalus ridibundus"
    #> [1831] "Larus ridibundus"
    #> [1832] "Artemia franciscana"
    #> [1833] "Agaricus tabescens"
    #> [1834] "Armillaria tabescens"
    #> [1835] "Armillariella tabescens"
    #> [1836] "Desarmillaria tabescens"
    #> [1837] "Convoluta roscoffensis"
    #> [1838] "Symsagittifera roscoffensis"
    #> [1839] "Corvus brachyrhynchos"
    #> [1840] "Uloborus diversus"
    #> [1841] "Phytophthora infestans_strain_T30-4"
    #> [1842] "Phytophthora infestans_T30-4"
    #> [1843] "Empidonax traillii"
    #> [1844] "Muscicapa traillii"
    #> [1845] "Bacillus redtenbacheri"
    #> [1846] "Bacillus rossius_redtenbacheri"
    #> [1847] "Motacilla subflava"
    #> [1848] "Prinia subflava"
    #> [1849] "Strix alba"
    #> [1850] "Tyto alba"
    #> [1851] "Parus major"
    #> [1852] "Coccus citri"
    #> [1853] "Phenacoccus citri"
    #> [1854] "Planococcus citri"
    #> [1855] "Caligus salmonis"
    #> [1856] "Lepeophtheirus salmonis_salmonis"
    #> [1857] "Lepeophtheirus salmonis"
    #> [1858] "Fusarium solani"
    #> [1859] "Fusisporium solani"
    #> [1860] "Neocosmospora solani"
    #> [1861] "Muscicapa melanoleuca"
    #> [1862] "Oenanthe hispanica_melanoleuca"
    #> [1863] "Oenanthe melanoleuca"
    #> [1864] "Cuculus curvirostris"
    #> [1865] "Phaenicophaeus curvirostris"
    #> [1866] "Caloenas nicobarica"
    #> [1867] "Columba nicobarica"
    #> [1868] "Gavialis gangeticus"
    #> [1869] "Lacerta gangetica"
    #> [1870] "Daphnia carinata"
    #> [1871] "Aphis gossypii"
    #> [1872] "Ampithoe aztecus"
    #> [1873] "Hyalella azteca"
    #> [1874] "Hyalella knickerbockeri"
    #> [1875] "Colletotrichum lupini"
    #> [1876] "Gloeosporium lupini"
    #> [1877] "Lonchura domestica"
    #> [1878] "Lonchura striata"
    #> [1879] "Loxia striata"
    #> [1880] "Sphaeroforma arctica_JP610"
    #> [1881] "Suillus fuscotomentosus"
    #> [1882] "Mollisia scopiformis"
    #> [1883] "Phialocephala scopiformis"
    #> [1884] "Muscicapa cayanensis"
    #> [1885] "Myiozetetes cayanensis"
    #> [1886] "Hyaloscypha bicolor_E"
    #> [1887] "Melopsittacus undulatus"
    #> [1888] "Psittacus undulatus"
    #> [1889] "Fringilla montana"
    #> [1890] "Passer montanus"
    #> [1891] "Coccinella axyridis"
    #> [1892] "Harmonia axyridis"
    #> [1893] "Aimophila crissalis"
    #> [1894] "Kieneria crissalis"
    #> [1895] "Kieneria crissalis_(Vigors,_1839)"
    #> [1896] "Melozone crissalis"
    #> [1897] "Pipilo crissalis"
    #> [1898] "Pipilo fuscus_crissalis"
    #> [1899] "Molothrus aeneus"
    #> [1900] "Psarocolius aeneus"
    #> [1901] "Conops calcitrans"
    #> [1902] "Stomoxis calcitrans"
    #> [1903] "Stomoxys calcitrans"
    #> [1904] "Anas atrata"
    #> [1905] "Cygnus atratus"
    #> [1906] "Culex fatigans"
    #> [1907] "Culex pipiens_fatigans"
    #> [1908] "Culex pipiens_quinquefasciatus"
    #> [1909] "Culex quinquefasciatus"
    #> [1910] "Drosophila takahashii"
    #> [1911] "Hirundo rustica"
    #> [1912] "Bombyx mori"
    #> [1913] "Phalaena mori"
    #> [1914] "Drosophila suzukii"
    #> [1915] "Leucophenga suzukii"
    #> [1916] "Acanthaster planci"
    #> [1917] "Asterias planci"
    #> [1918] "Molothrus ater"
    #> [1919] "Oriolus ater"
    #> [1920] "Laccaria bicolor_S238N-H82"
    #> [1921] "Anastrepha obliqua"
    #> [1922] "Tephritis obliqua"
    #> [1923] "Grapholitha glycinivorella"
    #> [1924] "Leguminivora glycinivorella"
    #> [1925] "Motacilla atricapilla"
    #> [1926] "Sylvia atricapilla"
    #> [1927] "Ammodromus caudacutus_nelsoni"
    #> [1928] "Ammospiza nelsoni"
    #> [1929] "Nylanderia fulva"
    #> [1930] "Paratrechina fulva"
    #> [1931] "Monocercomonoides exilis"
    #> [1932] "Monocercomonoides sp._PA203"
    #> [1933] "Agelaius phoeniceus"
    #> [1934] "Agelaius phoniceus"
    #> [1935] "Oriolus phoeniceus"
    #> [1936] "Ammodramus caudacutus"
    #> [1937] "Ammospiza caudacuta"
    #> [1938] "Oriolus caudacutus"
    #> [1939] "Colymbus stellatus"
    #> [1940] "Gavia stellata"
    #> [1941] "Musca vetustissima"
    #> [1942] "Euthrips occidentalis"
    #> [1943] "Frankliniella brunnescens"
    #> [1944] "Frankliniella californica"
    #> [1945] "Frankliniella occidentalis_brunnescens"
    #> [1946] "Frankliniella occidentalis"
    #> [1947] "Motacilla alba_alba"
    #> [1948] "Sitophilus oryzae"
    #> [1949] "Corvus cornix_cornix"
    #> [1950] "Fringilla canaria"
    #> [1951] "Serinus canaria"
    #> [1952] "Serinus canarius"
    #> [1953] "Drosophila subpulchrella"
    #> [1954] "Chlamydomonas reinhardtii"
    #> [1955] "Chlamydomonas smithii"
    #> [1956] "Puccinia striiformis_f._sp._tritici"
    #> [1957] "Colius striatus"
    #> [1958] "Heterorhabditis bacteriophora"
    #> [1959] "Anopheles gambiae"
    #> [1960] "Arabidopsis thaliana"
    #> [1961] "Bos taurus"
    #> [1962] "Canis familiaris"
    #> [1963] "Gallus gallus"
    #> [1964] "Pan troglodytes"
    #> [1965] "Escherichia coli"
    #> [1966] "Drosophila melanogaster"
    #> [1967] "Homo sapiens"
    #> [1968] "Mus musculus"
    #> [1969] "Sus scrofa"
    #> [1970] "Rattus norvegicus"
    #> [1971] "Macaca mulatta"
    #> [1972] "Caenorhabditis elegans"
    #> [1973] "Xenopus laevis"
    #> [1974] "Saccharomyces cerevisiae"
    #> [1975] "Danio rerio"

To enable gene ontology analysis, one must use a SpliceWiz reference with prepared GO annotations for the specified organism. To view the gene ontology annotation for a given SpliceWiz reference:

    ref_path <- file.path(tempdir(), "Reference")
    ontology <- viewGO(ref_path)
    head(ontology)
    #>           gene_id      go_id evidence
    #> 1 ENSG00000121410 GO:0002764      IBA
    #> 2 ENSG00000121410 GO:0005576      HDA
    #> 3 ENSG00000121410 GO:0005576      IDA
    #> 4 ENSG00000121410 GO:0005576      IEA
    #> 5 ENSG00000121410 GO:0005576      TAS
    #> 6 ENSG00000121410 GO:0005615      HDA
    #>                                        go_term ontology gene_name
    #> 1 immune response-regulating signaling pathway       BP      <NA>
    #> 2                         extracellular region       CC      <NA>
    #> 3                         extracellular region       CC      <NA>
    #> 4                         extracellular region       CC      <NA>
    #> 5                         extracellular region       CC      <NA>
    #> 6                          extracellular space       CC      <NA>

Note that `gene_name`s are not available for our example reference because there are only 7 genes in the example reference. Nevertheless, the GO annotation is complete and relies on Ensembl `gene_id`s for matching.

For simple gene over-representation analysis, we use the `goGenes` function. As an example, to analyse for enriched biological functions of the first 1000 genes in the reference:

    allGenes <- sort(unique(ontology$gene_id))
    exampleGeneID <- allGenes[1:1000]
    exampleBkgdID <- allGenes

    go_byGenes <- goGenes(
        enrichedGenes = exampleGeneID,
        universeGenes = exampleBkgdID,
        ontologyRef = ontology
    )

To visualize the top gene ontology categories of the above analysis:

    plotGO(go_byGenes, filter_n_terms = 12)

Of course, we wish to perform GO analysis on the top differential events in our analysis:

    res_edgeR <- ASE_edgeR(
        se = se.filtered,
        test_factor = "condition",
        test_nom = "B",
        test_denom = "A"
    )
    #> Jan 28 08:22:32 AM Performing edgeR contrast for included / excluded counts separately
    #> Jan 28 08:22:33 AM Performing edgeR contrast for included / excluded counts together

    go_byASE <- goASE(
      enrichedEventNames = res_edgeR$EventName[1:10],
      universeEventNames = NULL,
      se = se
    )
    head(go_byASE)
    #>         go_id                                                   go_term
    #>        <char>                                                    <char>
    #> 1: GO:0045892        negative regulation of DNA-templated transcription
    #> 2: GO:0048026     positive regulation of mRNA splicing, via spliceosome
    #> 3: GO:0000122 negative regulation of transcription by RNA polymerase II
    #> 4: GO:0000375           RNA splicing, via transesterification reactions
    #> 5: GO:0000423                                                 mitophagy
    #> 6: GO:0001510                                           RNA methylation
    #>         pval      padj foldEnrichment overlap  size
    #>        <num>     <num>          <num>   <int> <int>
    #> 1: 0.4761905 0.8280255              1       2     2
    #> 2: 0.4761905 0.8280255              1       2     2
    #> 3: 0.7142857 0.8280255              1       1     1
    #> 4: 0.7142857 0.8280255              1       1     1
    #> 5: 0.7142857 0.8280255              1       1     1
    #> 6: 0.7142857 0.8280255              1       1     1
    #>                       overlapGenes expected
    #>                             <list>    <num>
    #> 1: ENSG00000161547,ENSG00000141510        2
    #> 2: ENSG00000136527,ENSG00000164548        2
    #> 3:                 ENSG00000141510        1
    #> 4:                 ENSG00000136527        1
    #> 5:                 ENSG00000141510        1
    #> 6:                 ENSG00000130305        1

In most cases, users will wish to use the set of genes represented in the background ASEs as the background genes. This is because some genes do not have alternative splicing events, most often because they are intronless genes!

To perform GO analysis using background genes from analysed ASEs:

    go_byASE <- goASE(
      enrichedEventNames = res_edgeR$EventName[1:10],
      universeEventNames = res_edgeR$EventName,
      se = se
    )

### Heatmaps

Heatmaps are useful for visualizing differential expression of individual samples, as well as potential patterns of expression.

First, obtain a matrix of PSI values:

    # Create a matrix of values of the top 10 differentially expressed events:
    mat <- makeMatrix(
        se.filtered,
        event_list = res_edgeR$EventName[1:10],
        method = "PSI"
    )

How does `makeMatrix()` work?

`makeMatrix()` provides a matrix of PSI values from the given `NxtSE` object. The parameters `event_list` and `sample_list` allows subsetting for ASEs and/or samples, respectively.

The parameter `method` accepts 3 options:

- `"PSI"` : outputs raw PSI values
- `"logit"` : outputs logit PSI values
- `"Z-score"` : outputs Z-score transformed PSI values

Also, `makeMatrix()` facilitates exclusion of low confidence PSI values. These can occur when counts of both isoforms are too low. Setting the `depth_threshold` (default `10`) will set samples with total isoform count below this value to be converted to `NA`.

Splicing events (ASEs) with too many `NA` values are filtered out. Setting the parameter `na.percent.max` (default `0.1`) means any ASE with the proportion of `NA` above this threshold will be removed from the final matrix.

Plot this matrix of values in a heatmap:

    library(pheatmap)

    anno_col_df <- as.data.frame(colData(se.filtered))
    anno_col_df <- anno_col_df[, 1, drop=FALSE]

    pheatmap(mat, annotation_col = anno_col_df)

Using the GUI

Navigate to `Display`, then `Heatmap` in the menu side bar. After relaxing the event filters as per the prior sections, a heatmap will be automatically generated:

Heatmap - GUI

The heatmap can be customized as follows:

1. Again, the filtering panel is available to filter the number of events by significance threshold, rank, or by highlighted events, as explained in the previous sections. Highlighted events are particularly useful for heatmaps as users can (if they want) cherry-pick events of interest
2. After above filtering, an additional filter by gene ontology category can be performed. GO analysis must first be performed, and the top enriched categories are listed here
3. Samples can be annotated by one or more annotation categories
4. Samples can be sorted by the chosen annotation category
5. If (4) is selected, whether the sort order should be ascendeng or descending
6. The maximum number of rows of the heatmap to display
7. Whether the heatmap values are raw PSI, logit-transformed PSI, or Z-score transformed values
8. Users can customize their heatmap color palettes from this list
9. A static plot (using the pheatmap R package) will be saved to PDF

## SpliceWiz Coverage Plots

Coverage plots visualize RNA-seq coverage in individual samples. SpliceWiz uses its coverage normalization algorithm to visualize group differences in PSIs.

What are SpliceWiz coverage plots and how are they generated?

SpliceWiz produces RNA-seq coverage plots of analysed samples. Coverage data is compiled simultaneous to the IR and junction quantitation performed by `processBAM()`. This data is saved in “COV” files, which is a BGZF compressed and indexed file. COV files show compression and performance gains over BigWig files.

Additionally, SpliceWiz visualizes plots group-averaged coverages, based on user-defined experimental conditions. This is a powerful tool to illustrate group-specific differential splicing or IR. SpliceWiz does this by normalising the coverage depths of each sample based on transcript depth at the splice junction / intron of interest. By doing so, the coverage depths of constitutively expressed flanking exons are normalised to unity. As a result, the intron depths reflect the fraction of transcripts with retained introns and can be compared across samples.

### Coverage plots of individual samples

First, lets obtain a list of differential events with delta PSI > 5%:

    res_edgeR <- ASE_edgeR(
        se = se.filtered,
        test_factor = "condition",
        test_nom = "B",
        test_denom = "A"
    )
    #> Jan 28 08:22:35 AM Performing edgeR contrast for included / excluded counts separately
    #> Jan 28 08:22:36 AM Performing edgeR contrast for included / excluded counts together

    res_edgeR.filtered <- res_edgeR[res_edgeR$abs_deltaPSI > 0.05,]
    res_edgeR.filtered$EventName[1]
    #> [1] "NSUN5/ENST00000252594_Intron2/clean"

We can see here the top differential event belongs to NSUN5. The first step to plotting this event is to create a data object that contains the requisite data for the gene NSUN5:

    dataObj <- getCoverageData(se, Gene = "NSUN5", tracks = colnames(se))

This step retrieves all coverage and junction data for NSUN5 (and surrounding genes).

Next, we need to create event-specific data for the IR event in NSUN5 intron 2.

    plotObj <- getPlotObject(dataObj, Event = res_edgeR.filtered$EventName[1])

This step normalizes the coverage and junction data from the viewpoint of NSUN5 intron 2.

The final step is to generate the plot:

    plotView(
        plotObj,
        centerByEvent = TRUE, # whether the plot should be centered at the `Event`
        trackList = list(1,2,3,4,5,6),
        plotJunctions = TRUE
    )

This plots all 6 individual coverage plots, each in its own track.

Why are the tracks referred to using numbers

In the covPlotObject which is returned by the above function, each “track” is a sample. These can be viewed using the `tracks()` function:

    tracks(plotObj)
    #> [1] "02H003" "02H025" "02H026" "02H033" "02H043" "02H046"

For convenience, users have the option of referring to tracks by their actual names, or by numbers. So, in the above example, the two parameters below are equivalent:

- `trackList = list(1,2)`
- `trackList = list(“02H003”, “02H025”)

### Normalized Coverage plots of individual samples

To plot “normalized” coverage plots, where coverage is normalized to transcript depth (i.e. sum of all transcripts = 1), set `normalizeCoverage = TRUE`. We can also include multiple samples in each trace, so lets stack all samples in the same condition in the same trace:

    plotView(
        plotObj,
        centerByEvent = TRUE,
        trackList = list(c(1,2,3), c(4,5,6)),
        # Each list element contains a vector of track id's

        normalizeCoverage = TRUE
    )

NB: junction (sashimi) arcs are not plotted in tracks with more than 1 trace (to avoid cluttering)

### Group Coverage plots

To plot group coverage plots, first we need to generate a new `covPlotObject`. This is because the previous `covPlotObject` was generated on the basis of each track being an individual sample. To generate a plot object where each track represents a condition:

    plotObj_group <- getPlotObject(
        dataObj,
        Event = res_edgeR.filtered$EventName[1],
        condition = "condition",
        tracks = c("A", "B")
    )

    # NB:
    # when `condition` is not specified, tracks are assumed to be the same samples
    # as that of the covDataObject
    # when `condition` is specified, tracks must refer to the condition categories
    # that are desired for the final plot

Note that there are several scenarios where a new covPlotObject is required:

- When plotting normalized coverages using a different normalization ASE,
- When plotting by a different condition or different tracks,
- When plotting on a different strand (default is `*` - unstranded)

To generate the group coverage plot, with the two conditions on the same track:

    plotView(
        plotObj_group,
        centerByEvent = TRUE,
        trackList = list(c("A", "B"))
    )

### Coverage plots using exon windows

Sometimes, we are interested in the differential coverage of exons but not of the intervening introns. Given introns are often much longer than exons, it is useful to plot by the exons of interest.

For example, to plot the skipped casette exon in TRA2B:

    dataObj <- getCoverageData(se, Gene = "TRA2B", tracks = colnames(se))

    plotObj <- getPlotObject(
        dataObj,
        Event = "SE:TRA2B-206-exon2;TRA2B-205-int1",
        condition = "condition", tracks = c("A", "B")
    )

    plotView(
        plotObj,
        centerByEvent = TRUE,
        trackList = list(c(1,2)),
        filterByEventTranscripts = TRUE
    )

NB: setting `filterByEventTranscripts = TRUE` means only transcripts involved in the specified splicing event are plotted in the annotation

Note that the involved exons are in only a small area of the coverage plot. To zoom in on the exons, we first have to plot an “exon view” so the exons are labelled, and at the same time return their coordinates:

    gr <- plotView(
        plotObj,
        centerByEvent = TRUE,
        trackList = list(c(1,2)),
        filterByEventTranscripts = TRUE,
        showExonRanges = TRUE
    )

By setting the parameter `showExonRanges = TRUE`, the `plotView` function shows a plot with exons and their names in the annotation track, and returns a GRanges object, with ranges named by their corresponding exon names:

    names(gr)
    #> [1] "TRA2B-205-E3" "TRA2B-206-E4" "TRA2B-206-E3" "TRA2B-206-E2" "TRA2B-206-E1"
    #> [6] "TRA2B-205-E2" "TRA2B-213-E2" "TRA2B-213-E1" "TRA2B-205-E1"

We can see in the above figure that he exons of interest are `c("TRA2B-206-E1", "TRA2B-206-E2", "TRA2B-206-E3")`. To plot these in an “exons view” coverage plot:

    plotView(
        plotObj,
        centerByEvent = TRUE,
        trackList = list(c(1,2)),
        filterByEventTranscripts = TRUE,
        plotRanges = gr[c("TRA2B-206-E1", "TRA2B-206-E2", "TRA2B-206-E3")]
    )

### Using the GUI

The main coverage plot interface is as follows

Coverage Plots Main Panel - GUI

The top bar contains controls to locate the genomic loci of interest:

1. Genes - locate by the specified gene
2. Events - locate by the specified alternate splicing event. The list of events can be modified by the right-hand controls in the top bar
3. Coordinates - locate by the specified chromosome and start/end coordinate
4. Zoom in or out (each step by a factor of 3)
5. Strand - view coverage by strand-specific (+/-) or non-specific (*) modes
6. Select events either by all events in differential analysis (which can be filtered using the html-table column filters), user-highlighted events (using volcano/scatter plots), or by gene ontology category. If using gene-ontology category, an extra drop-down box will appear allowing users to specify from the top gene ontology categories from prior GO analysis
7. Limit the number of events displayed in the Event drop-down box (2)

In the plot control panel on the left hand side of the main plot area:

8. Select which alternative splicing event that should be normalized against. This is critical when plotting normalized coverages (14) or plotting by condition (9)
9. Select whether to plot by individual samples, or specify the condition to plot group-plots. See the next section for condition-specific controls.
10. The track list table allows users to specify track ID’s for one or more of the specified controls. The left hand column displays available sample names (if plotting by individual samples), or condition categories (if a condition is specified)
11. Interactive plots can be slow to render because of too many data points. Resolution (the number of data points across the main display) can be controlled using this slider.
12. For group plots, variance of each group can be displayed either as standard deviation (SD), standard error of the mean (SEM), 95% confidence interval (95% CI) or none.
13. Whether junction (sashimi) arcs should be plotted. Note that junction arcs will be disabled if there are multiple traces on the same track
14. When plotting individual samples, whether raw or normalized coverages should be displayed. Junction counts will also be normalized (they are automatically normalized in group coverage plots)
15. Whether to display isoforms belonging to the included / excluded isoform described in the selected normalizing alternative splicing event
16. Whether transcripts should be condensed by gene. This is useful if there are too many transcripts cluttering the display.
17. If selected, brings up a transcript table where users can select 1 or more transcripts to display in the annotation track.
18. If selected, converts the annotation track into an exons display track with named exons. A table will pop up allowing users to select 2 or more exon ranges. Selecting these exons will generate a static exons-only coverage plot.

The main plot (19) is a plotly-based interactive plot. Users can zoom in to a genomic loci of interest using the zoom tool.

There are several options that appear if a specific condition is set:

Group Coverage Plots - GUI

1. Note that the track list table now shows condition categories instead of names of samples
2. Difference of normalized coverage between conditions can be objectively measured. Users have the option to use the Student’s T-test to measure difference in normalized coverage between replicates of a pair of conditions
3. Two drop-down boxes allowing users to select a pair of conditions to assess difference in normalized coverage

As mentioned, when the “Exon Plot mode” is selected, an exons table is displayed where users can select one or more exon ranges can be selected, as shown below:

Generating Exon Coverage (Static) Plots - GUI

Selecting 2 or more exon ranges will trigger (after a 3 second delay) a static exon-window coverage plot to be generated.

Note that at the bottom of the left hand panel, users can save the interactive (top) plot, or the static exon-window coverage (bottom) plot to PDF as ggplot- based figures.

# SessionInfo

    sessionInfo()
    #> R version 4.5.2 (2025-10-31)
    #> Platform: x86_64-pc-linux-gnu
    #> Running under: Ubuntu 24.04.3 LTS
    #>
    #> Matrix products: default
    #> BLAS:   /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3
    #> LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.26.so;  LAPACK version 3.12.0
    #>
    #> locale:
    #>  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C
    #>  [3] LC_TIME=en_US.UTF-8        LC_COLLATE=C
    #>  [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8
    #>  [7] LC_PAPER=en_US.UTF-8       LC_NAME=C
    #>  [9] LC_ADDRESS=C               LC_TELEPHONE=C
    #> [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
    #>
    #> time zone: Etc/UTC
    #> tzcode source: system (glibc)
    #>
    #> attached base packages:
    #> [1] splines   stats4    stats     graphics  grDevices utils     datasets
    #> [8] methods   base
    #>
    #> other attached packages:
    #>  [1] pheatmap_1.0.13             ggplot2_4.0.1
    #>  [3] DESeq2_1.50.2               SummarizedExperiment_1.40.0
    #>  [5] Biobase_2.70.0              MatrixGenerics_1.22.0
    #>  [7] matrixStats_1.5.0           GenomicRanges_1.62.1
    #>  [9] Seqinfo_1.0.0               IRanges_2.44.0
    #> [11] S4Vectors_0.48.0            DoubleExpSeq_1.1
    #> [13] edgeR_4.8.2                 limma_3.66.0
    #> [15] fstcore_0.10.0              AnnotationHub_4.0.0
    #> [17] BiocFileCache_3.0.0         dbplyr_2.5.1
    #> [19] BiocGenerics_0.56.0         generics_0.1.4
    #> [21] SpliceWiz_1.12.0            NxtIRFdata_1.16.0
    #> [23] rmarkdown_2.30
    #>
    #> loaded via a namespace (and not attached):
    #>   [1] later_1.4.5               BiocIO_1.20.0
    #>   [3] bitops_1.0-9              filelock_1.0.3
    #>   [5] tibble_3.3.1              R.oo_1.27.1
    #>   [7] XML_3.99-0.20             lifecycle_1.0.5
    #>   [9] httr2_1.2.2               lattice_0.22-7
    #>  [11] dendextend_1.19.1         magrittr_2.0.4
    #>  [13] plotly_4.12.0             sass_0.4.10
    #>  [15] jquerylib_0.1.4           yaml_2.3.12
    #>  [17] httpuv_1.6.16             otel_0.2.0
    #>  [19] cowplot_1.2.0             DBI_1.2.3
    #>  [21] buildtools_1.0.0          RColorBrewer_1.1-3
    #>  [23] abind_1.4-8               rvest_1.0.5
    #>  [25] purrr_1.2.1               R.utils_2.13.0
    #>  [27] RCurl_1.98-1.17           rappdirs_0.3.4
    #>  [29] seriation_1.5.8           maketools_1.3.2
    #>  [31] genefilter_1.92.0         annotate_1.88.0
    #>  [33] DelayedMatrixStats_1.32.0 codetools_0.2-20
    #>  [35] DelayedArray_0.36.0       DT_0.34.0
    #>  [37] xml2_1.5.2                tidyselect_1.2.1
    #>  [39] UCSC.utils_1.6.1          farver_2.1.2
    #>  [41] rhandsontable_0.3.8       viridis_0.6.5
    #>  [43] TSP_1.2.6                 shinyWidgets_0.9.0
    #>  [45] webshot_0.5.5             GenomicAlignments_1.46.0
    #>  [47] jsonlite_2.0.0            fst_0.9.8
    #>  [49] survival_3.8-6            iterators_1.0.14
    #>  [51] foreach_1.5.2             tools_4.5.2
    #>  [53] progress_1.2.3            Rcpp_1.1.1
    #>  [55] glue_1.8.0                gridExtra_2.3
    #>  [57] SparseArray_1.10.8        xfun_0.56
    #>  [59] GenomeInfoDb_1.46.2       dplyr_1.1.4
    #>  [61] ca_0.71.1                 HDF5Array_1.38.0
    #>  [63] numDeriv_2016.8-1.1       shinydashboard_0.7.3
    #>  [65] withr_3.0.2               BiocManager_1.30.27
    #>  [67] fastmap_1.2.0             rhdf5filters_1.22.0
    #>  [69] digest_0.6.39             R6_2.6.1
    #>  [71] mime_0.13                 GO.db_3.22.0
    #>  [73] RSQLite_2.4.5             cigarillo_1.0.0
    #>  [75] R.methodsS3_1.8.2         h5mread_1.2.1
    #>  [77] tidyr_1.3.2               data.table_1.18.0
    #>  [79] rtracklayer_1.70.1        prettyunits_1.2.0
    #>  [81] httr_1.4.7                htmlwidgets_1.6.4
    #>  [83] S4Arrays_1.10.1           pkgconfig_2.0.3
    #>  [85] gtable_0.3.6              blob_1.3.0
    #>  [87] registry_0.5-1            S7_0.2.1
    #>  [89] XVector_0.50.0            sys_3.4.3
    #>  [91] htmltools_0.5.9           fgsea_1.36.2
    #>  [93] scales_1.4.0              ompBAM_1.14.0
    #>  [95] png_0.1-8                 knitr_1.51
    #>  [97] rjson_0.2.23              curl_7.0.0
    #>  [99] cachem_1.1.0              rhdf5_2.54.1
    #> [101] BiocVersion_3.22.0        parallel_4.5.2
    #> [103] AnnotationDbi_1.72.0      restfulr_0.0.16
    #> [105] pillar_1.11.1             grid_4.5.2
    #> [107] vctrs_0.7.1               promises_1.5.0
    #> [109] shinyFiles_0.9.3          xtable_1.8-4
    #> [111] evaluate_1.0.5            locfit_1.5-9.12
    #> [113] cli_3.6.5                 compiler_4.5.2
    #> [115] Rsamtools_2.26.0          rlang_1.1.7
    #> [117] crayon_1.5.3              heatmaply_1.6.0
    #> [119] labeling_0.4.3            fs_1.6.6
    #> [121] stringi_1.8.7             viridisLite_0.4.2
    #> [123] BiocParallel_1.44.0       assertthat_0.2.1
    #> [125] Biostrings_2.78.0         lazyeval_0.2.2
    #> [127] Matrix_1.7-4              ExperimentHub_3.0.0
    #> [129] BSgenome_1.78.0           hms_1.1.4
    #> [131] patchwork_1.3.2           sparseMatrixStats_1.22.0
    #> [133] bit64_4.6.0-1             Rhdf5lib_1.32.0
    #> [135] KEGGREST_1.50.0           statmod_1.5.1
    #> [137] shiny_1.12.1              memoise_2.0.1
    #> [139] bslib_0.10.0              fastmatch_1.1-8
    #> [141] bit_4.6.0