refactor FileGroup