took out uneeded generic bound