from typing import Iterable


def intersection(sets: Iterable[set]):
    """Intersection of sets"""
    try:
        s = next(sets := iter(sets))
    except StopIteration:
        return set()
    else:
        s = set(s)
    for x in sets:
        s.intersection_update(x)
    return s