added one_of method to get rid of a common pattern