Changes to make more general.