
    "g                     n    d dl Z  G d de j                        Z G d d e j                  dd            Zy)    Nc                   (     e Zd ZdZ fdZd Z xZS )FreezableDefaultDicta!  
    Often it is desirable to prevent the mutation of
    a default dict after its initial construction, such
    as to prevent mutation during iteration.

    >>> dd = FreezableDefaultDict(list)
    >>> dd[0].append('1')
    >>> dd.freeze()
    >>> dd[1]
    []
    >>> len(dd)
    1
    c                 :     t        | dt        |         |      S )N_frozen)getattrsuper__missing__)selfkey	__class__s     T/var/www/openai/venv/lib/python3.12/site-packages/importlib_metadata/_collections.pyr	   z FreezableDefaultDict.__missing__   s    <wtY(;<SAA    c                       fd _         y )Nc                 $    j                         S )N)default_factory)r   r
   s    r   <lambda>z-FreezableDefaultDict.freeze.<locals>.<lambda>   s    4#7#7#9r   )r   )r
   s   `r   freezezFreezableDefaultDict.freeze   s
    9r   )__name__
__module____qualname____doc__r	   r   __classcell__)r   s   @r   r   r      s    B:r   r   c                       e Zd Zed        Zy)Pairc           	      \     | t        t        j                  |j                  dd             S )N=   )mapstrstripsplit)clstexts     r   parsez
Pair.parse   s#    C		4::c1#5677r   N)r   r   r   classmethodr$    r   r   r   r      s    8 8r   r   z
name value)collectionsdefaultdictr   
namedtupler   r&   r   r   <module>r*      s6    :;22 :,8!;!!&,7 8r   