from itertools import count, cycle, repeat

# Errors
zip()
zip(range(3))
zip("a", "b")
zip("a", "b", *zip("c"))
zip(zip("a"), strict=False)
zip(zip("a", strict=True))

# OK
zip(range(3), strict=True)
zip("a", "b", strict=False)
zip("a", "b", "c", strict=True)

# OK (infinite iterators).
zip([1, 2, 3], cycle("ABCDEF"))
zip([1, 2, 3], count())
zip([1, 2, 3], repeat(1))
zip([1, 2, 3], repeat(1, None))
zip([1, 2, 3], repeat(1, times=None))

# Errors (limited iterators).
zip([1, 2, 3], repeat(1, 1))
zip([1, 2, 3], repeat(1, times=4))

436c551a1709d432f692a60469f2ac6607daf68f
<mask token>

<mask token>
zip()
zip(range(3))
zip('a', 'b')
zip('a', 'b', *zip('c'))
zip(zip('a'), strict=False)
zip(zip('a', strict=True))
zip(range(3), strict=True)
zip('a', 'b', strict=False)
zip('a', 'b', 'c', strict=True)
zip([1, 2, 3], cycle('ABCDEF'))
zip([1, 2, 3], count())
zip([1, 2, 3], repeat(1))
zip([1, 2, 3], repeat(1, None))
zip([1, 2, 3], repeat(1, times=None))
zip([1, 2, 3], repeat(1, 1))
zip([1, 2, 3], repeat(1, times=4))

from itertools import count, cycle, repeat
zip()
zip(range(3))
zip('a', 'b')
zip('a', 'b', *zip('c'))
zip(zip('a'), strict=False)
zip(zip('a', strict=True))
zip(range(3), strict=True)
zip('a', 'b', strict=False)
zip('a', 'b', 'c', strict=True)
zip([1, 2, 3], cycle('ABCDEF'))
zip([1, 2, 3], count())
zip([1, 2, 3], repeat(1))
zip([1, 2, 3], repeat(1, None))
zip([1, 2, 3], repeat(1, times=None))
zip([1, 2, 3], repeat(1, 1))
zip([1, 2, 3], repeat(1, times=4))

from itertools import count, cycle, repeat

# Errors
zip()
zip(range(3))
zip("a", "b")
zip("a", "b", *zip("c"))
zip(zip("a"), strict=False)
zip(zip("a", strict=True))

# OK
zip(range(3), strict=True)
zip("a", "b", strict=False)
zip("a", "b", "c", strict=True)

# OK (infinite iterators).
zip([1, 2, 3], cycle("ABCDEF"))
zip([1, 2, 3], count())
zip([1, 2, 3], repeat(1))
zip([1, 2, 3], repeat(1, None))
zip([1, 2, 3], repeat(1, times=None))

# Errors (limited iterators).
zip([1, 2, 3], repeat(1, 1))
zip([1, 2, 3], repeat(1, times=4))
