handling multiplicity more uniformly