finished groups framwork