it should probably be a `Set` instead