*2.2. Bioinformatics Pipeline*

We used the software package PHYLUCE v1.5.0 [61] and associated tools to trim, assemble, and align our sequenced reads. We performed quality trimming on raw reads using Illumiprocessor v2.0.6 [62], a Python wrapper for Trimmomatic v0.36 [63]. We then assembled the trimmed reads with Trinity v1.6 [64] as implemented in PHYLUCE. After assembly, we created two separate taxon sets for later analyses: one containing all samples (*n* = 63, "large dataset"), the other with one sample per species (*n* = 37, "small dataset"). The purpose of the small dataset was to increase computational e fficiency for divergence time estimation. After mapping assembled contigs to UCE loci using PHYLUCE, we retained 2733 loci for the large dataset and 2639 for the small one. We performed individual alignments on each locus using MUSCLE v3.8.31 [65] as implemented in PHYLUCE. We filtered for matrix incompleteness by only retaining loci present in 60% or more of taxa and performed additional filtering by calculating the number of parsimony-informative sites (PIS) with PHYLOCH v1.5-5 [66], implemented in a custom R script, and retaining only loci with 10 < PIS < 120. Our upper limit on PIS was to filter out outlier loci, while our lower limit was to filter out relatively uninformative loci. After both filtering steps, for the large dataset we retained 1719 of the original 2733 loci, and for the small dataset we retained 1706 of the original 2639 loci. This study was conducted in accordance with the Institutional Animal Care and Use Committee of Southern Illinois University (Protocol number: 18-009, Animal Assurance number: D16-00044).
