Clusters were annotated based on expression of known marker genes, including CD3G, CD3D, CD3E, CD2 (T cells), CD8A, GZMA (CD8+ T cells), CD4, FOXP3 (CD4+ T cells/Tregs), KLRC1, KLRC3 (NK cells), CD19, CD79A (B cells), SLAMF7, IGKC (Plasma cells), FCGR2A, CSF1R (Macrophages), FLT3 (Dendritic cells), CLEC4C (Plasmacytoid Dendritic cells), COL1A2 (Fibroblasts), MCAM, MYLK (Myofibroblasts), FAP, PDPN (CAFs), EPCAM, TP63 (Malignant cells), PECAM1, VWF (Endothelial cells), PMEL, MLANA (Melanocytes). Clusters were also confirmed by identifying differentially expressed marker genes for each cluster and comparing to known cell type marker genes. Finally, we downloaded bulk RNA-seq count data from sorted immune cell populations from Calderon et al., 20186 (link) and compared bulk gene expression to pseudo-bulk expression profiles from single cell clusters. UMI counts were summed for all cells in each cluster to generate pseudo-bulk profiles. Gene counts from aggregated single-cell and bulk data were then normalized and depth corrected using variance stabilizing transformation in DESeq2 (version 1.18.1). Genes with a coefficient of variation greater than 20% across bulk RNA-seq datasets were used to calculate the Pearson correlation between bulk datasets and pseudo-bulk profiles.