refactoru list controller