§
    Ì²Åj  ã                  ó|   — d dl mZ d dlmZ  ed¬¦  «         G d„ d¦  «        ¦   «         Zdd„Zdd„Zdd„Zdd„ZdS )é    )Úannotations)Ú	dataclassT)Úfrozenc                  óz   — e Zd ZU ded<   ded<   ded<   ded<   ded<   edd„¦   «         Zedd„¦   «         Zdd„ZdS )ÚSelectiveBuildOperatorÚstrÚnameÚboolÚis_root_operatorÚis_used_for_trainingÚinclude_all_overloadsútuple[str, ...] | NoneÚ_debug_infoÚop_nameÚop_infoúdict[str, object]Úreturnc           
     óø  — h d£}t          t          |                     ¦   «         ¦  «        |z
  ¦  «        dk    rWt          d                     d                     t          |                     ¦   «         ¦  «        |z
  ¦  «        ¦  «        ¦  «        ‚d|v r| |d         k    sJ ‚|                     dd¦  «        }t          |t          ¦  «        sJ ‚|                     dd¦  «        }t          |t          ¦  «        sJ ‚|                     d	d¦  «        }t          |t          ¦  «        sJ ‚d }d
|v r8|d
         }t          |t          ¦  «        sJ ‚t          d„ |D ¦   «         ¦  «        }t          | ||||¬¦  «        S )N>   r	   Ú
debug_infor   r   r   r   z!Got unexpected top level keys: {}ú,r	   r   Tr   r   r   c              3  ó4   K  — | ]}t          |¦  «        V — Œd S ©N)r   )Ú.0Úxs     úRC:\Projects\Historical\venv\Lib\site-packages\torchgen/selective_build/operator.pyú	<genexpr>z8SelectiveBuildOperator.from_yaml_dict.<locals>.<genexpr>W   s(   è è € Ð7Ð7¨!�s 1™vœvÐ7Ð7Ð7Ð7Ð7Ð7ó    ©r	   r   r   r   r   )ÚlenÚsetÚkeysÚ	ExceptionÚformatÚjoinÚgetÚ
isinstancer
   ÚlistÚtupler   )r   r   Úallowed_keysr   r   r   r   Údi_lists           r   Úfrom_yaml_dictz%SelectiveBuildOperator.from_yaml_dict4   sž  € ð
ð 
ð 
ˆõ �s�7—<’<‘>”>Ñ"Ô" \Ñ1Ñ2Ô2°QÒ6Ð6ÝØ3×:Ò:Ø—H’H�S §¢¡¤Ñ0Ô0°<Ñ?Ñ@Ô@ñô ñô ð ð �WÐÐØ˜g fœoÒ-Ð-Ð-Ð-à"Ÿ;š;Ð'9¸4Ñ@Ô@ÐÝÐ*­DÑ1Ô1Ð1Ð1Ð1à&Ÿ{š{Ð+AÀ4ÑHÔHÐÝÐ.µÑ5Ô5Ð5Ð5Ð5à '§¢Ð,CÀTÑ JÔ JÐÝÐ/µÑ6Ô6Ð6Ð6Ð6à-1ˆ
Ø˜7Ð"Ð"Ø˜lÔ+ˆGÝ˜g¥tÑ,Ô,Ð,Ð,Ð,ÝÐ7Ð7¨wÐ7Ñ7Ô7Ñ7Ô7ˆJå%ØØ-Ø!5Ø"7Ø"ð
ñ 
ô 
ð 	
r   c                ó*   — t          | dddd ¬¦  «        S )NTr   )r   )r	   s    r   Ú*from_legacy_operator_name_without_overloadzASelectiveBuildOperator.from_legacy_operator_name_without_overloada   s*   € õ &ØØ!Ø!%Ø"&Øð
ñ 
ô 
ð 	
r   c                óR   — | j         | j        | j        dœ}| j        �
| j        |d<   |S )N)r   r   r   r   )r   r   r   r   )ÚselfÚrets     r   Úto_dictzSelectiveBuildOperator.to_dictm   s=   € à $Ô 5Ø$(Ô$=Ø%)Ô%?ð"
ð "
ˆð
 ÔÐ'Ø $Ô 0ˆC�Ñàˆ
r   N)r   r   r   r   r   r   )r	   r   r   r   )r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__annotations__Ústaticmethodr+   r-   r1   © r   r   r   r      s¬   € € € € € € ð €I€I�Ið ÐÐÑð ÐÐÑð  ÐÐÑð (Ð'Ð'Ñ'àð*
ð *
ð *
ñ „\ð*
ðX ð	
ð 	
ð 	
ñ „\ð	
ð	ð 	ð 	ð 	ð 	ð 	r   r   Úlhsr   Úrhsr   c                óT   — | €|€d S t          t          | pd|pdz   ¦  «        ¦  «        S )Nr7   )r(   r    ©r8   r9   s     r   Úmerge_debug_infor<   y   s5   € ð
 €{�s�{Øˆtå•�c�i˜R C I¨2Ñ.Ñ/Ô/Ñ0Ô0Ð0r   c           
     ót  — t          | j        ¦  «        t          |j        ¦  «        k    r:t          dt          | j        ¦  «        › dt          |j        ¦  «        › d�¦  «        ‚t          | j        | j        p|j        | j        p|j        | j        p|j        t          | j        |j        ¦  «        ¬¦  «        S )Nz8Expected both arguments to have the same name, but got 'z' and 'z	' insteadr   )	r   r	   r"   r   r   r   r   r<   r   r;   s     r   Úcombine_operatorsr>   „   s¹   € õ ˆ3Œ8�}„}�˜CœH™œÒ%Ð%ÝØuÅsÈ3Ì8Á}Ä}ÐuÐuÕ]`ÐadÔaiÑ]jÔ]jÐuÐuÐuñ
ô 
ð 	
õ "ØŒXð Ô-ÐE°Ô1Eð !Ô5ÐQ¸Ô9QØ!Ô7ÐT¸3Ô;TÝ$ S¤_°c´oÑFÔFðñ ô ð r   ú!dict[str, SelectiveBuildOperator]c                óÞ   — i }t          |                      ¦   «         ¦  «        t          |                     ¦   «         ¦  «        z   D ]&\  }}|}||v rt          ||         |¦  «        }|||<   Œ'|S r   )r'   Úitemsr>   )r8   r9   Ú	operatorsr   ÚopÚnew_ops         r   Úmerge_operator_dictsrE   ›   sx   € ð 46€IÝ˜CŸIšI™KœKÑ(Ô(­4°·	²	±´Ñ+<Ô+<Ñ<ð $ð $‰ˆ�ØˆØ�iÐÐÝ& y°Ô'9¸2Ñ>Ô>ˆFà#ˆ	�'ÑÐàÐr   r   r   c                ó8   — |                       d¦  «        d         S )Nú.r   )Úsplit)r   s    r   Ústrip_operator_overload_namerI   ª   s   € Ø�=Š=˜ÑÔ˜aÔ Ð r   N)r8   r   r9   r   r   r   )r8   r   r9   r   r   r   )r8   r?   r9   r?   r   r?   )r   r   r   r   )	Ú
__future__r   Údataclassesr   r   r<   r>   rE   rI   r7   r   r   ú<module>rL      sÎ   ðØ "Ð "Ð "Ð "Ð "Ð "à !Ð !Ð !Ð !Ð !Ð !ð €�$ÐÑÔðið ið ið ið iñ iô iñ ÔðiðX1ð 1ð 1ð 1ðð ð ð ð.ð ð ð ð!ð !ð !ð !ð !ð !r   