version with group sparsity