working, but checkMate is incomplete.