{'fraction_non_alphanumeric': 0.02729479038531866, 'fraction_numerical': 0.05176368895242528, 'mean_word_length': 4.868123293015997, 'pattern_counts': {'":': 0, '<': 2, '<?xml version=': 0, '>': 5, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
MetaPro: A scalable and reproducible data processing and analysis pipeline for metatranscriptomic investigation of microbial communities

Background Whole microbiome RNASeq (metatranscriptomics) has emerged as a powerful technology to functionally interrogate microbial communities. A key challenge is how best to process, analyze and interpret these complex datasets. In a typical application, a single metatranscriptomic dataset may comprise from tens to hundreds of millions of sequence reads. These reads must first be processed and filtered for low quality and potential contaminants, before being annotated with taxonomic and functional labels and subsequently collated to generate global bacterial gene expression profiles. Results Here we present MetaPro, a flexible, massively scalable metatranscriptomic data analysis pipeline that is cross-platform compatible through its implementation within a Docker framework. MetaPro starts with raw sequence read input (single end or paired end reads) and processes them through a tiered series of filtering, assembly and annotation steps. In addition to yielding a final list of bacterial genes and their relative expression, MetaPro delivers a taxonomic breakdown based on the consensus of complementary prediction algorithms, together with a focused breakdown of enzymes, readily visualized through the Cytoscape network visualization tool. We benchmark the performance of MetaPro against two current state of the art pipelines and demonstrate improved performance and functionality. Conclusion MetaPro represents an effective integrated solution for the processing and analysis of metatranscriptomic datasets. Its modular architecture allows new algorithms to be deployed as they are developed, ensuring its longevity. To aid user uptake of the pipeline, MetaPro, together with an established tutorial that has been developed for educational purposes is made freely available at https://github.com/ParkinsonLab/MetaPro. The software is freely available under the GNU general public license v3.

and demonstrate improved performance and functionality. 48 49 Conclusion 50 MetaPro represents an effective integrated solution for the processing and analysis of 51 metatranscriptomic datasets. Its modular architecture allows new algorithms to be deployed as 52 they are developed, ensuring its longevity. To aid user uptake of the pipeline, MetaPro, together 53 with an established tutorial that has been developed for educational purposes is made freely 54 available at https://github.com/ParkinsonLab/MetaPro. The software is freely available under the 55 GNU general public license v3. in FASTQ format and first trims and filters for low quality sequences, known host sequences, 120 adaptors, vectors, and both rRNA and tRNA sequences. This results in a set of reads of putative 121 mRNA origin. Previous analyses have demonstrated improved annotation efficiency through 122 assembling reads into longer contigs 29 . Here we apply rnaSPAdes 30 , a transcriptomic assembler 123 within the SPAdes toolkit. Since contigs may feature multiple genes, we subsequently apply 124 MetaGeneMark 31 to annotate putative genes for each assembled contig. The putative genes and 125 unassembled mRNA reads then undergo three separate multistage processes to annotate: 1) gene 126 identities; 2) taxonomic origin; and 3) enzymatic function. 127 For gene annotations, MetaPro applies a tiered set of sequence similarity searches, 128 starting with the fastest and least sensitive, BWA 16,32 , followed by pBLAT 33 , then DIAMOND 34 . 129 The former two tools rely on a non-redundant database of genome sequences, ChocoPhlAn 26 , 130 while DIAMOND utilizes the NCBI non-redundant (NR) protein database 35  Centrifuge 40 , two high-performance short read taxonomic classifiers. These latter classifiers use 138 the NR protein and NCBI nucleotide databases 35 , respectively. Predictions from all sources are 139 combined within a consensus framework to derive a single taxonomic assignment to each 140 contig/read using WeVote 41 141 Since we expect MetaPro will be typically deployed on cluster computing environments 142 that feature limitations in memory and/or processing time requirements, MetaPro has been 143 designed to protect against potential points of failure through implementation of intermediate, 144 human-readable, output files that serve as checkpoints. To allow users to readily swap in custom 145 programs and databases to replace currently deployed tools and otherwise extend and modify the 146 pipeline as they see fit, MetaPro is written in Python 3. Further, since ease of installation and use 147 often represent significant barriers to software adoption, MetaPro minimizes software 148 dependencies through the use of the Docker software deployment infrastructure 27 . Docker 149 6 simplifies the task of distributing pipelines by combining all the tools used by MetaPro in a 150 single image resulting in uncomplicated, single-step installation and deployment independent of 151 computing architecture. Furthermore, MetaPro is fully compatible with Singularity 28 , a secure 152 containerization software based on Docker, that is frequently employed in cluster computing 153 environments. 154 155

Comparisons of MetaPro performance relative to other pipelines 156
Datasets for benchmarking 157 We benchmarked the performance of MetaPro and two other state-of-the-art 158 metatranscriptomics pipelines, SAMSA2 23 and HUMAnN3 26 , using three complementary 159 datasets ( Table 1; Supplemental Table 1). These comprise: 12 samples obtained from the 160 cecum and colon of 5 germ free, non-obese diabetic (NOD) mice inoculated with Altered 161 Schaedler Flora (ASF) 42 bacteria; 5 samples obtained during a 29 day fermentation of kimchi 43 at 162 days 7, 13, 18, 25, and 29; and 8 samples obtained during the maturation of an in vitro oral 163 biofilm cultured from a complex human oral microbiome 44 at the 6, 9, 11, 13, 15, 17, 21, and 24 164 hour time points. The ASF consortium represents a standardized collection of 8 bacteria used in 165 studies of the mouse gut microbiome. The availability of their genome sequence 13 provides an 166 effective gold standard to benchmark pipeline performance. Similarly, genome sequence data is 167 available for the five species of lactic acid bacteria that, together, dominate over 97% of the 168 kimchi fermentation datasets. Lastly, the human oral microbiome dataset represents putative 169 mRNA reads from a highly complex microbial community encompassing over 700 bacterial 170 taxa, many of which have yet to be cultured. A gold standard is not available for this dataset. 171 However, the intention of analysis of the human oral microbiome dataset was to assess the 172 performance of the three pipelines on a dataset exhibiting similar complexity to microbial 173 communities typically associated, for example, with human health. The performance of each 174 pipeline was assessed against each of these datasets to assess the following metrics: read 175 filtering, gene annotation, taxonomic assignments and enzyme function assignments. 176 177

Read Filtering 178
Sequence processing pipelines require the filtering of input read sequences based on the 179 sequence quality and potential contamination. For metatranscriptomics, sources of contamination 7 include sequence adaptors, reads of host origin and RNA reads derived from non-mRNA 181 sources. Identification and removal of these reads is important to both reduce downstream 182 processing time as well as to avoid potentially incorrect inferences of data generated by the 183 pipeline. We therefore examined the performance of each pipeline to filter reads from each of the 184 benchmark datasets ( Table 1) Due to the methodological differences discussed above, the three pipelines analysed here 210 each generated differing numbers of putative mRNA reads (Supplemental Table 1). When 211 8 analyzing the NOD mouse dataset, MetaPro, SAMSA2, and HUMAnN3 predicted that an 212 average of 24.0 ± 15.6%, 39.3 ± 11.5%, and 80.0 ± 8.3%, respectively, of the total reads in the 213 sample as being of putative mRNA origin. The significantly higher proportion of predicted 214 mRNA reads in these samples by HUMAnN3 likely represent insufficient filtering of low-quality 215 or host-associated reads. When analyzing the kimchi fermentation dataset, MetaPro predicted 216 that an average of 32.2 ± 12% of the total reads in the sample were putative mRNA while 217 SAMSA2 and HUMAnN3 predicted 72.5 ± 3.9% and 89.3 ± 1.2%, respectively. Like the NOD 218 mouse dataset, the high proportion of predicted mRNA reads by SAMSA2 and HUMAnN3 219 likely represent instances of insufficient filtering. Lastly, when analyzing the human oral biofilm 220 dataset, which had low quality and putative rRNA reads prefiltered 44 , all three pipelines 221 predicted that nearly all of the sample consisted of putative mRNA reads. MetaPro, SAMSA2, 222 and HUMAnN3 predicted 97.5 ± 1.1%, 99.0 ± 0.4%, and 100.0 ± 0.01% putative mRNA, 223 respectively. 224 These differences in annotation counts reflects the way in which each pipeline handles 225 their data. SAMSA2 separates the unmerged reads but only annotates the merged reads. This 226 results in far fewer putative reads when compared to MetaPro or HUMAnN3. HUMAnN3 does 227 not merge its reads, but when presented with paired-ended data, treats the forward, and reverse 228 reads as two concatenated sets. Thus, HUMAnN3 has the most putative reads of the pipelines. 229 MetaPro attempts to merge pairs of reads, and subsequently attempts to assemble merged pairs, 230 as well as unmerged singletons into contigs. Contigs, merged pairs and unmerged singletons are 231 subsequently subject to annotation. For read accounting purposes, MetaPro considers the two 232 reads associated with a pair as a single sequence (i.e. both reads are assumed to have originated 233 from the same transcript). Note, for unmerged pairs of reads, this results in each read undergoing 234 annotation independently, but with the pair ultimately receiving only a single annotation. 235

236
Assigning Reads to Genes 237 The ability to assign a short read to a gene is a critical step towards functional and 238 taxonomic profiling of metagenomic and metatranscriptomic datasets. Here we assessed the 239 ability of each pipeline to assign reads of putative mRNA origin to individual transcripts. For the 240 NOD mouse and Kimchi datasets, we were interested in comparing each tools ability to map 241 reads to genes associated with the taxa known to be present in these datasets. While MetaPro and 242 9 SAMSA2 assign reads to distinct genes and proteins, HUMAnN3 reports only on the basis of 243 gene families as defined by UniRef90 50 . This is reflected in the reports of unique transcripts 244 identified in the datasets (Table 1 and Supplemental Table 1 HUMAnN3 pipeline to map reads to individual genes and proteins. Reads mapping to genes 253 from multiple taxa were allocated equally to each taxon (with the relative contribution of that 254 read assigned to each taxon being a proportion of the number of taxa the read mapped to). Reads 255 that were not subsequently aligned (and reported) to a UniRef90 gene family were removed. 256 From each pipelines mappings, we compared the number of putative mRNA reads 257 annotated by each pipeline to genes and/or proteins associated with the 8 ASF (NOD mouse 258 datasets) and 5 lactic acid bacteria (kimchi datasets) known to be present in each sample ( Figure  259 2). To establish a gold standard for each sample, we used BWA 32 to perform sequence similarity 260 searches of reads from each sample against a database comprising only the genomes of either the 261 8 ASF bacteria or the 5 lactic acid bacteria. While we note that sequence data for all 8 ASF and 5 262 lactic acid bacteria were present in databases used by each pipeline, we expect that the 263 considerably greater taxonomic representation of sequences in these databases would result in 264 false positive taxonomic assignments. 265 Across the 12 NOD mouse samples, our BWA-based benchmarking annotated a total of 266 8.6 million reads to genomes of the 8 ASF bacteria (Figure 2A and Supplemental Table 2). In 267 contrast to the number of reads annotated to be of putative mRNA origin, MetaPro was able to 268 annotate more reads to a known gene/protein (4.25 million) compared to SAMSA2 (1.49 269 million) or HUMAnN3 (1.47 million) (Supplemental Tables 1 and 2). Furthermore, MetaPro 270 also annotated a greater number and proportion of these reads to one of the 8 ASF bacteria (1.45 271 million reads, 34.1%), compared to both SAMSA2 (179,000 reads, 12%) and HUMAnN3 272 (177,000 reads, 12%). A majority of the reads annotated to ASF bacteria by SAMSA2 and 273 HUMAnN3 were associated with Clostridium ASF356. However, Parabacteroides ASF519, the 274 most prevalent species in the samples as defined by the gold standard (66.2% ± 6.5% of reads), 275 was absent from the HUMAnN3 results and represented by only 7,053 reads across all 12 276 samples annotated by SAMSA2. Instead, it appears that both pipelines erroneously assign many 277 reads to transcripts derived from a closely related species, Parabaceteroides goldsteinii. In 278 contrast, MetaPro identified 581,849 reads aligning to Parabacteroides ASF519 in all 12 279 samples. Furthermore, HUMAnN3 failed to assign any reads for sample SRR1828965 and was 280 unable to assign reads to transcripts associated with Clostridium ASF502, Eubacterium 281 plexicaudatum ASF492, Firmicutes ASF500, and Lactobacillus ASF360. MetaPro and SAMSA2 282 also exhibited poor annotation rates for these taxa, although we note that the version of 283 ChocoPhlAn that MetaPro used in these analyses did not contain Firmicutes ASF500. 284 Across the 5 kimchi fermentation samples, BWA-based benchmarking annotated a total 285 of 49.6 million reads to genomes of the 5 lactic acid bacteria ( Figure 2B and Supplemental 286 Table 3). Similar to the NOD mouse samples, MetaPro was able to annotate more reads to a 287 known gene/protein (19.6 million) compared to SAMSA2 (20.2 million) or HUMAnN3 (18.5 288 million) (Supplemental Tables 1 and 3). Furthermore, MetaPro also annotated more of these 289 reads to one of the 5 lactic acid bacteria (22.2 million reads, 75%), compared to both SAMSA2 290 (11.3 million reads, 56%) and HUMAnN3 (15.2 million reads, 82%). Interestingly, sample 291 SRR443366 proved challenging to identify 3 of the 5 lactic acid bacteria: Weissella koreensis, 292 Leuconostic carnosum, and Leuconostic gelidum, relative to other samples. Few reads were 293 annotated to these taxa by both MetaPro and SAMSA2, and no reads were annotated to these 294 taxa by HUMAnN3. 295 From these analyses, we found that MetaPro outperforms SAMSA2 and HUMAnN3 in 296 terms of assigning putative mRNA reads to the appropriate taxon of origin. For HUMAnN3, the 297 limited ability to assign reads to appropriate taxa may reflect the pipelines reliance on paired 298 metagenomic data and the use of MetaPhlAn3 51 to identify taxa likely associated with the dataset 299 being processed. This allows the use of smaller, more targeted, reference databases for sequence 300 similarity searches, greatly reducing runtime. However, this strategy may be compromised if the 301 taxa have not previously been well sampled, potentially explaining the inability of HUMAnN3 to 302 annotate any reads for sample SRR1828965. 303 11 We note that HUMAnN3 was recently developed to supersede a previous version, 304 HUMAnN2. Comparisons reveal these two versions generally yield similar results 305 (Supplemental Figure 1; Supplemental Tables 1-3). However, for the NOD mouse datasets, 306 HUMAnN3 assigned more reads to Clostridium ASF356 over its predecessor, while HUMAnN2, 307 unlike HUMAnN3, was able to assign at least some reads in sample SRR1828965. For the 308 kimchi datasets, HUMAnN3 was able to assign more reads to Leuconostoc gelidum, and 309 Leuconostoc carnosum and, unlike HUMAnN2, was able to assign reads in sample SRR443366. 310 We suggest these differences in the ability to assign reads to the two datasets, SRR1828965 and 311 SRR443366 may be related to the different versions of MetaPhlAn used be each pipeline to 312 generate targeted reference databases. 313 Overall, we found that MetaPro best reflected the gold standard assignments, although as 314 for the other pipelines, MetaPro assigned many reads to sequences from other taxa not expected 315 in the samples. While this highlights the need to improve gene annotation methods, we 316 nonetheless note that such sequences represent potential homologs of genes encoded by the 317 expected taxa and are thus likely to be functionally informative. 318 319

Inferring Accurate Taxonomic Ranks 320
In the previous section we benchmarked each pipelines ability to map putative mRNA 321 reads to transcripts of genes encoded by the genomes of bacterial taxa known to comprise the 322 datasets. However, determining the taxonomic composition of a sample to elucidate taxa 323 responsible for providing critical functions remains a challenge in metatranscriptomic analysis. 324 MetaPro features an additional stage for taxonomic assignment to more accurately assign 325 taxonomic classification to putative mRNA reads. MetaPro utilizes input from the short-read 326 classifiers Kaiju and Centrifuge 40 , together with the inferred taxonomy from gene annotations 327 derived from the initial tiered set of sequence similarity searchers, to determine the taxonomic 328 composition of a sample. The taxonomic output from the short-read classifiers and the gene 329 annotation stage are combined into a single consensus taxonomic classification using 330 WEVOTE 41 in order to increase the precision of classification. WEVOTE considers the 331 taxonomic predictions from the two short-read classifiers, as well as the gene annotations, using 332 a simplified variant of the NCBI taxonomy tree structure and selects the highest confidence 333 taxonomic classification based on the output from individual approaches. WEVOTE produces a 334 consensus classification depending on the pattern of taxonomic classification produced by the 335 three predictors. HUMAnN3 utilizes MetaPhlAn3 52 for taxonomic profiling based on clade-336 specific marker genes in the sample whereas SAMSA2 solely utilizes the curated taxonomic 337 annotations present in the RefSeq database to determine read classification. 338 To assess the performance of each pipeline, we compared the total number of reads that 339 were correctly annotated to specific taxonomic ranks, from species to phylum, within the 8 ASF 340 and 5 lactic acid bacteria for the NOD mouse and kimchi fermentation datasets (Figure 3). For 341 the mouse NOD mouse datasets 15 , MetaPro can annotate an average of 55.7 ± 9.2% of reads 342 across all samples, 49.9 ± 8.5% down to the species level, and 2.7 ± 0.4% to the genus level. The 343 remaining 3.1 ± 1.5% of reads were annotated to the rank of family or higher. SAMSA2 344 annotated 8.1 ± 6.5% of each sample, with 0.2 ± 8.5% down to the species level and 6.3 ± 5.7% 345 to the genus level, while HUMAnN3 annotated an average of 5.6 ± 6.7% reads to each sample 346 only to the species level. HUMAnN3 defaults to reporting on species-level taxa. 347 For the Kimchi set, MetaPro can annotate average of 85.8 ± 8.5% of putative reads across 348 all samples, 76.3 ± 7.8% down to the species level, and 7.6 ± 2.3% down to the genus level. The 349 remaining 1.9 ± 0.9% of the reads annotated to the rank of family or higher. SAMSA2 annotated 350 an average of 13.4 ± 7.6% across all kimchi samples, with 5.2 ± 3.5% to the species level, and 351 6.59 ± 4.40% to the genus level. The remaining 1.6 ± 0.3% annotate to a taxon of family or 352 higher. HUMAnN3 annotated an average of 11.7 ± 5.7% reads to the species level, and only to 353 the species level. 354 In addition to the NOD mouse and kimchi fermentation datasets, we were also interested 355 in examining the performance of the pipelines on classifying more complex datasets derived 356 from human oral microbiomes. (Figure 3C). These datasets comprise 8 samples and provide 357 more complex data to further assess the performance of the three tools, with the caveat that we 358 do not know what taxa are present in these samples. MetaPro annotated an average of 93% ± 1% 359 of the data, leaving 7% ± 1% unable to be identified SAMSA2 was able to annotate an average 360 of 80% ± 1.9% of its putative reads, with 20% ± 1.9% of the reads unclassified to any known 361 taxa. HUMAnN3 annotated an average of 63.8% ± 2.6% of its putative reads, leaving 36.1 ± 362 2.6% unmapped. Of MetaPro's putative reads, an average of 75.6 ± 3.2% were identified down 363 to the species level, and 14% ± 2.8% of the reads were annotated to the genus taxa. SAMSA2 364 13 annotated an average of 65% ± 1.5% of its putative reads to a species, and 13% ± 0.5% of those 365 reads to a genus. HUMAnN3 annotated all 64.8 ± 2.6% of its putative reads to a species. 366 Overall, we found that MetaPro's ensemble approach to taxonomic annotation 367 consistently outperformed the approaches employed by SAMSA2 and HUMAnN3, although we 368 did note a performance improvement for HUMAnN3 over HUMAnN2 (Supplemental Figure  369 2). was designed to perform comparative analyses between two datasets. HUMAnN3 was primarily 458 designed primarily for the analysis of metagenomic data, reporting gene family abundances, but 459 also accepts metatranscriptomic data. We compared the execution of the MetaPro, SAMSA2, 460 and HUMAnN3 pipelines across all 25 datasets using one computing node equipped with 20 461 Intel Skylake 2-core-CPU, 202GB RAM, running CentOS 7. Each pipeline differs significantly 462 in their completion times ( respectively. With the exception of the oral biofilm datasets, MetaPro requires a longer execution 470 time than the other pipelines, with, for example roughly 30% of runtime dedicated to the initial 471 cleaning step, which includes rRNA removal (Figure 1) in metatranscriptomic analysis, we provide an established tutorial that has been developed with 542 non-specialists in mind. Currently, the only major limitation to metatranscriptomic analysis using 543 the MetaPro pipeline is speed of execution relative to existing tools. However, we consider speed 544 to be secondary to accuracy. We are currently developing novel methods to enhance pipeline 545 performance in terms of speed without compromising accuracy of the results. 546

MetaPro Workflow 549
The MetaPro workflow is involves a series of steps which first filters, then annotates the 550 sequence data. In initial preprocessing steps, MetaPro identifies and removes low-quality reads 551 and adapters, as well as reads belonging to the host and other potential contaminants. Next reads 552 associated with non-coding RNAmoieties (e.g. rRNAs and tRNAs) are filtered. The remaining, 553 putative mRNA reads are subsequently into contigs, prior to annotation. After this pre-554 processing, MetaPro begins the annotation process by identifying which genes the reads belong 555 to, using sequence aligners. Once complete, the pipeline attempts to assign the taxonomy of each 556 read while also attempting to annotate enzymatic functions to each gene. Finally, MetaPro 557 summarizes the details of its analysis into a series of output files (Figure 1). 558 559

Sequence Preprocessing 560
MetaPro first identifies and removes segments of reads associated with adapters and low-561 quality bases at the 3' end using AdapterRemoval v2.1.7 68 . The number of threads used is set to 562 the maximum allowable number of cores the computing environment provides. This is 563 automatically detected by MetaPro. The trimqualities flag is used, which trims the 5'/ 3' termini 564 of reads with the quality scores of up to the AdapterRemoval default quality minimum of 2. 565 Other settings rely on default values. If the data is paired-end, the reads are merged using 566 VSEARCH v2.7.1 69 with the flag -fastq_mergepairs. The data is then processed using a custom 567 script, taking the reads that still have a forward and reverse pairing that meet the quality 568 thresholds. Reads that meet the quality thresholds but missing their paired counterpart are 569 grouped into a collection of 'singletons'. Low-quality reads that do not meet the quality 570 thresholds are removed using the -fastq_filter of VSEARCH v2.7.1 with the default error 571 threshold score. Next MetaPro provides the user with an option for filtering contaminant 572 sequences and sequences derived from any host organism that might be associated with the 573 sample (for example if the sample was collected from a mouse or human intestinal sample). This 574 is defined through a configuration option set by the user before launching the pipeline. 575 To identify sequence artifacts arising from library preparation, MetaPro utilizes the 576 UniVec_Core dataset comprising known sequencing vectors, sequencing adapters, linkers, and 577 PCR Primers derived from the NCBI UniVec_Core Database 35 . Host organism sequences to be 578 filtered are provided as a single FASTA formatted file by the user and identified through 579 20 sequence similarity searches using BWA 0.7.17 32 and pBLAT 2.0 33 . Due to pBLAT's inability to 580 support paired-end data, MetaPro further sorts the reads with internal logic. If either one of a pair 581 of reads matches a sequence in the contaminants file, both reads are filtered from downstream 582 analysis. This behaviour can be toggled to a more permissive rule where pairs are retained if 583 either one of the pair does not match a sequence in the contaminants file. 584 Having identified and removed low quality and contaminating reads, MetaPro next filters 585 for reads of rRNA origin. In a typical RNA extract, 90% or more of reads can be of rRNA 586 Gene Annotation 608 Following the data preprocessing stages, the MetaPro pipeline attempts to annotate the 609 putative mRNA transcripts (putative genes derived from MetaGeneMark and unassembled 610 21 singletons) to known genes. To achieve this MetaPro uses a three-step process to annotate the 611 putative mRNA transcripts to genes. The first step uses BWA 0.7.17 32 to identify sequence 612 similarity matches to genes in the ChocoPhlAn database 26 . We consider a high confidence 613 annotation at this step to be a match with over 90% sequence identity over 90% of the read 614 length. Next, pBLAT 2.0 33 is used on unmatched transcripts to identify less stringent sequence 615 similarity matches to genes in the ChocoPhlAn database using a cut-off of >85% sequence 616 identity over at least 65% of the length of the putative mRNA transcript, with a match score of 617 >60. Finally, any unmatched putative mRNA transcripts are processed by DIAMOND 0.9.19 34 to 618 identify significant sequence similarity matches to sequences collated by the NCBI non-619 redundant protein database (NR). As for pBLAT, we apply a cut-off of >85% sequence identity 620 over at least 65% of the length of the putative mRNA transcript, with a match score of >60. In 621 situations where a putative mRNA transcript is annotated to multiple genes or proteins, the 622 match-quality score is used to resolve the ambiguity. For transcripts aligned by BWA, the match 623 quality score is the alignment score, under the heading "AS". In pBLAT and DIAMOND, the 624 match quality score is the bitscore. If a transcript is aligned to multiple different genes or 625 proteins, the highest score among the alignments is selected. In cases where there is a tie in the 626 match quality score, the first result is taken for annotation purposes. The results from each step 627 of this annotation process are compiled into a human readable mapping of genes to the sequences 628 in the dataset annotated to them for use in subsequent stages. Genes identified from the searches 629 of the ChocoPhlAn database are translated into proteins for downstream enzyme annotation. 630 As for the rRNA filtering step, to make better use of parallel computing, MetaPro splits 631 the data into smaller chunks comprising 50,000 sequences. Only when all BWA searches have 632 been performed will the process move to pBLAT and likewise, only when all pBLAT searches 633 have been performed will the process more to DIAMOND. could not be assigned using DETECT, enzymatic functions that are consistently assigned by both 643 DIAMOND and PRIAM. This process may assign multiple ECs per transcript. Proteins with 644 multiple EC assignments are further filtered to include only ECs that have been observed to co-645 occur in the Swiss-Prot database. MetaPro exports two EC reports; low-quality and high-quality. 646 Both EC reports will contain all results from DETECT together with the intersection of 647 predictions from PRIAM and DIAMOND, with an e-value cut-off of <1e-5 for the low-quality 648 report, and an e-value cut-off of <1e-10, together with a PRIAM probability score of >=0.5 for 649 the high quality report.    The NOD mouse datasets were generated from gut samples from mice inoculated with a defined 976 microbial consortium (Altered Schaedler Flora (ASF); 42 ). In addition to the 8 taxa associated 977 with ASF, reads were also assigned to Parabacteroides goldsteinii, a close relative of 978 Parabacteroides ASF519 (see legend  Kimchi, and (C) Human Oral Biofilm data. In addition to displaying ECs unique or shared 996 between MetaPro and the other two tools, also shown are ECs, predicted by HUMAnN3 and 997 SAMSA2 to occur in combination with another EC, in the same transcript, with no supporting 998 evidence that such a combination has been previously observed (as defined through Swiss-Prot 999 annotations). Further, for HUMAnN3, we show the number of EC assignments that occur in 1000 combinations of greater than 2 ECs.