+
     Bi                         RR lt R # )Nc                    \        V 4      p\        W14      p \        V4      pRP                  WE4      pT;'       g    \        V4      h  \         d     T# i ; i)a  If *iterable* has only one item, return it.
If it has zero items, return *default*.
If it has more than one item, raise the exception given by *too_long*,
which is ``ValueError`` by default.
>>> only([], default='missing')
'missing'
>>> only([1])
1
>>> only([1, 2])  # doctest: +IGNORE_EXCEPTION_DETAIL
Traceback (most recent call last):
...
ValueError: Expected exactly one item in iterable, but got 1, 2,
 and perhaps more.'
>>> only([1, 2], too_long=TypeError)  # doctest: +IGNORE_EXCEPTION_DETAIL
Traceback (most recent call last):
...
TypeError
Note that :func:`only` attempts to advance *iterable* twice to ensure there
is only one item.  See :func:`spy` or :func:`peekable` to check
iterable contents less destructively.
zLExpected exactly one item in iterable, but got {!r}, {!r}, and perhaps more.)iternextformat
ValueErrorStopIteration)iterabledefaulttoo_longitfirst_valuesecond_valuemsgs   &&&    5/usr/lib/python3.14/importlib/resources/_itertools.pyonlyr      si    , 
hBr#K	*Bx
  &{ A 	 ))*S/)   s   A	 	AA)NN)r        r   <module>r      s
   $r   