from typing import Counter


def exotic_count(winner, second, third, forth, do_exotics=True):
    """  Given counters for winner, second place etc, create counters for win,place,show and exotics
    """
    win = Counter(winner)
    place = Counter(second)
    place.update(win)
    show = Counter(third)
    show.update(place)
    top4 = Counter(forth)
    top4.update(show)
    if do_exotics:
        exacta = Counter(zip(winner, second))
        trifecta = Counter(zip(winner, second, third))
        pick4 = Counter(zip(winner,second,third,forth))
    else:
        exacta, trifecta, pick4 = None, None, None
    return {"win": win, "exacta": exacta, "trifecta": trifecta, "place": place, "show": show,"top4":top4,"pick4":pick4}