Added full sparse matrix support