fixed diagonal now, but OMG IT WORKS