Generalizing things I should have generalized eons ago