refactor deep.generalModes