refactor ul