I don't think you want to get rid of the mode management here.