diagonalizations