private string CheckForStalemate(string board) { if (GameHistory.Count > 1) { List <char[]> lastTwoMoves = GameHistory .Skip(GameHistory.Count - 2) .Select(m => m.ToCharArray()) .ToList() ; char[] lastMove = lastTwoMoves.First(); char[] thisMove = lastTwoMoves.Last(); //50 Move Rule string result = Stalemate_50MoveRule(lastMove, thisMove); if (result != "GameOn") { return(result); } //Solitary King vs too few pieces. result = Stalemate_TooFewPieces(thisMove); if (result != "GameOn") { return(result); } } ; return("GameOn"); }