working on fixing diagonals again
diagonals functional