added user_visible_modes