handle the empty-list case. Awkwardly.