group model and validation