rempve explicit dependency on DiagonalMatrix