def zipped_x_o_value_to_character(tup):
    """
    Converts a tuple of booleans indicating placement of x or o markers, and returns a character representation.
    :param tup: A tuple of a boolean, indicating if an x is placed, a second boolean, indicating if an o is placed.
    :return:    One of three characters, 'X', 'O', or '.' the last indicating an empty spot.
    """
    x_placed, o_placed = tup
    assert not (x_placed and o_placed)
    if x_placed:
        return 'X'
    if o_placed:
        return 'O'

    return '.'