public void setCell(int cellX, int cellY, char mark) {
        if (cellX < 0 | cellX >= FIELD_SIZE | cellY < 0 | cellY >= FIELD_SIZE) {
            System.out.println("Для ввода допустимы лишь 'x' и '0', а также координаты должны быть в диапазоне 1-3 включительно! Начните заново!");
            eraseField();
            return;
        }

        if ((field[cellX][cellY] != DEFAULT_CELL_VALUE) & mark != ' ') {
            System.out.println("Это поле уже помечено, введите другие координаты.");
            showField();
            return;
        }

        if (lastInput != DEFAULT_CELL_VALUE){
            if (lastInput == mark) {
                System.out.println("Этот игрок уже ходил, сейчас должен ходить другой игрок.");
                showField();
                return;
            }
        }

        if (mark == FIRST_PLAYER_MARK) {
            field[cellX][cellY] = 'X';
        } else if (mark == '0') {
            field[cellX][cellY] = '0';
        }

        if (mark != ' ') {
            lastInput = mark;
            lastCells.add(new Cell(cellX, cellY, lastInput));
        } else {
            field[cellX][cellY] = ' ';
        }
        showField();
    }