checkmate almost working