
    Wj                       d Z ddlmZ ddlZddlZddlZddlmZmZ ddl	m
Z
 erddlmZ  ed          Zd)dZd*dZ eddg          Zg dZ e
ej                  d+d            Z e
ej                  d,d            Z e
ej                  d-d            Z e
ej                  d+d            Z e
ej                  d,d             Z e
ej                  d.d!            Z e
ej                  d-d"            Z e
ej                  d-d#            Z e
ej                  dd$d%d&            Z e
ej                  d/d'            Z e
ej                  d/d(            ZdS )0z
Python polyfills for heapq
    )annotationsN)TYPE_CHECKINGTypeVar   )substitute_in_graph)
ModuleType_Tnamesset[str]returndict[str, ModuleType]c                    i }t          d | D                       }t          t          j                  D ]=}|| v s|                    |          r"t          j                            |          ||<   >|S )Nc              3      K   | ]	}|d z   V  
dS ).N ).0names     b/home/longshao/multi-rider-rag/.venv/lib/python3.11/site-packages/torch/_dynamo/polyfills/heapq.py	<genexpr>z+_save_and_remove_modules.<locals>.<genexpr>   s&      22DTCZ222222    )tuplelistsysmodules
startswithpop)r
   orig_modulesprefixesmodnames       r   _save_and_remove_modulesr       sy    L22E22222H$$ = =ew11(;;$'KOOG$<$<L!r   r   strblocked	list[str]r   c                >   | h|}t          |          }|D ]}d t          j        |<   	 t          j        |           t          |           t          j                            |           S # t          |           t          j                            |           w xY wN)r    r   r   	importlibimport_moduleupdate)r   r"   r
   r   r   s        r   import_fresh_moduler)   !   s     GE+E22L $ $#G)&t,, '''<(((( 	!'''<((((s   A, ,0Bheapq_heapq)r"   )_heapify_max_heappop_max_heapreplace_maxheapifyheappopheappushheappushpopheapreplacemergenlargest	nsmallestheaplist[_T]Nonec               6    t                               |           S r%   )py_heapqr,   r7   s    r   r,   r,   C         &&&r   c                6    t                               |           S r%   )r;   r-   r<   s    r   r-   r-   H   r=   r   itemc                8    t                               | |          S r%   )r;   r.   r7   r?   s     r   r.   r.   M   s    $$T4000r   c               6    t                               |           S r%   )r;   r/   r<   s    r   r/   r/   R       D!!!r   c               6    t                               |           S r%   )r;   r0   r<   s    r   r0   r0   W   rC   r   c                8    t                               | |          S r%   )r;   r1   rA   s     r   r1   r1   \   s    T4(((r   c                8    t                               | |          S r%   )r;   r2   rA   s     r   r2   r2   a       d+++r   c                8    t                               | |          S r%   )r;   r3   rA   s     r   r3   r3   f   rG   r   Fkeyreversec                &    t          j        || |dS )NrI   )r;   r4   )rJ   rK   	iterabless      r   r4   r4   k   s    >9#w????r   c                <    t                               | ||          S N)rJ   )r;   r5   niterablerJ   s      r   r5   r5   p   s    Qc222r   c                <    t                               | ||          S rO   )r;   r6   rP   s      r   r6   r6   u   s    as333r   )r
   r   r   r   )r   r!   r"   r#   r   r   )r7   r8   r   r9   )r7   r8   r   r	   )r7   r8   r?   r	   r   r	   )r7   r8   r?   r	   r   r9   r%   )__doc__
__future__r   r*   r&   r   typingr   r   
decoratorsr   typesr   r	   r    r)   r;   __all__r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r   r   r   <module>rZ      s     # " " " " "      



 ) ) ) ) ) ) ) ) , , , , , ,  !       WT]]
   ) ) ) )  w
;;;   U'((' ' ' )(' U'((' ' ' )(' U+,,1 1 1 -,1 U]##" " " $#" U]##" " " $#" U^$$) ) ) %$) U&'', , , (', U&'', , , (', U[!! @ @ @ @ "!@ U^$$3 3 3 %$3 U_%%4 4 4 &%4 4 4r   