make groupId optional