refactor groups
resolve conflicts