more sparsity stuff