recursive reveal working (but revealing diagonals which it shouldn't be)