Ë
    S²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y)é    )Úannotations)Ú	dataclassT)Úfrozenc                  ó€   — 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y)ÚSelectiveBuildOperatorÚstrÚnameÚboolÚis_root_operatorÚis_used_for_trainingÚinclude_all_overloadsútuple[str, ...] | NoneÚ_debug_infoc           
     ó  — h d£}t        t        |j                  «       «      |z
  «      dkD  rCt        dj	                  dj                  t        |j                  «       «      |z
  «      «      «      ‚d|v r| |d   k7  rt        d| › d|d   › �«      ‚|j                  dd	«      }t        |t        «      st        d
t        |«      › �«      ‚|j                  dd	«      }t        |t        «      st        dt        |«      › �«      ‚|j                  dd	«      }t        |t        «      st        dt        |«      › �«      ‚d }d|v r>|d   }t        |t        «      st        dt        |«      › �«      ‚t        d„ |D «       «      }t        | ||||¬«      S )N>   r	   Ú
debug_infor   r   r   r   z!Got unexpected top level keys: {}ú,r	   zop_name mismatch: z != r   Tz,Expected 'is_root_operator' to be bool, got r   z0Expected 'is_used_for_training' to be bool, got r   z1Expected 'include_all_overloads' to be bool, got r   z&Expected 'debug_info' to be list, got c              3  ó2   K  — | ]  }t        |«      –— Œ y ­w©N)r   )Ú.0Úxs     ú`/var/www/html/ia-enhanced/venv/lib/python3.12/site-packages/torchgen/selective_build/operator.pyú	<genexpr>z8SelectiveBuildOperator.from_yaml_dict.<locals>.<genexpr>f   s   è ø€ Ò7¨!œs 1ŸvÑ7ùs   ‚©r	   r   r   r   r   )ÚlenÚsetÚkeysÚ	ExceptionÚformatÚjoinÚAssertionErrorÚgetÚ
isinstancer
   ÚtypeÚlistÚtupler   )Úop_nameÚop_infoÚallowed_keysr   r   r   r   Údi_lists           r   Úfrom_yaml_dictz%SelectiveBuildOperator.from_yaml_dict4   sº  € ò
ˆô Œs�7—<‘<“>Ó" \Ñ1Ó2°QÒ6ÜØ3×:Ñ:Ø—H‘HœS §¡£Ó0°<Ñ?Ó@óóð ð �WÑØ˜' &™/Ò)Ü$Ø(¨¨	°°g¸f±oÐ5FÐGóð ð #Ÿ;™;Ð'9¸4Ó@ÐÜÐ*¬DÔ1Ü Ø>¼tÐDTÓ?UÐ>VÐWóð ð  'Ÿ{™{Ð+AÀ4ÓHÐÜÐ.´Ô5Ü ØBÄ4ÐH\ÓC]ÐB^Ð_óð ð !(§¡Ð,CÀTÓ JÐÜÐ/´Ô6Ü ØCÄDÐI^ÓD_ÐC`Ðaóð ð .2ˆ
Ø˜7Ñ"Ø˜lÑ+ˆGÜ˜g¤tÔ,Ü$Ø<¼TÀ'»]¸OÐLóð ô Ñ7¨wÔ7Ó7ˆJä%ØØ-Ø!5Ø"7Ø"ô
ð 	
ó    c                ó"   — t        | dddd ¬«      S )NTr   )r   )r	   s    r   Ú*from_legacy_operator_name_without_overloadzASelectiveBuildOperator.from_legacy_operator_name_without_overloadp   s    € ô &ØØ!Ø!%Ø"&Øô
ð 	
r+   c                ó„   — | j                   | j                  | j                  dœ}| j                  �| j                  |d<   |S )N)r   r   r   r   )r   r   r   r   )ÚselfÚrets     r   Úto_dictzSelectiveBuildOperator.to_dict|   sG   € à $× 5Ñ 5Ø$(×$=Ñ$=Ø%)×%?Ñ%?ñ"
ˆð
 ×ÑÐ'Ø $× 0Ñ 0ˆC�Ñàˆ
r+   N)r&   r   r'   údict[str, object]Úreturnr   )r	   r   r3   r   )r3   r2   )Ú__name__Ú
__module__Ú__qualname__Ú__annotations__Ústaticmethodr*   r-   r1   © r+   r   r   r      s}   … ð ƒIð Óð Óð  Óð (Ó'àð9
Øð9
Ø0ð9
à	ò9
ó ð9
ðv ð	
Øð	
à	ò	
ó ð	
ô	r+   r   c                óJ   — | €|€y t        t        | xs d|xs dz   «      «      S )Nr9   )r%   r   ©ÚlhsÚrhss     r   Úmerge_debug_infor>   ˆ   s-   € ð
 €{�s�{Øä”�c’i˜R C¢I¨2Ñ.Ó/Ó0Ð0r+   c           
     óÈ  — t        | j                  «      t        |j                  «      k7  r8t        dt        | j                  «      › dt        |j                  «      › d�«      ‚t        | j                  | j                  xs |j                  | j
                  xs |j
                  | j                  xs |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‰8ƒ}œ˜CŸH™H›Ò%ÜØFÄsÈ3Ï8É8Ã}ÀoÐU\Ô]`Ðad×aiÑaiÓ]jÐ\kÐktÐuó
ð 	
ô "Ø�X‰Xð ×-Ñ-ÒE°×1EÑ1Eð !×5Ñ5ÒQ¸×9QÑ9QØ!×7Ñ7ÒT¸3×;TÑ;TÜ$ S§_¡_°c·o±oÓFôð r+   c                ó´   — i }t        | j                  «       «      t        |j                  «       «      z   D ]  \  }}|}||v rt        ||   |«      }|||<   Œ! |S r   )r$   Úitemsr@   )r<   r=   Ú	operatorsr&   ÚopÚnew_ops         r   Úmerge_operator_dictsrF   ª   sg   € ð 46€IÜ˜CŸI™I›KÓ(¬4°·	±	³Ó+<Ñ<ò $‰ˆ�ØˆØ�iÑÜ& y°Ñ'9¸2Ó>ˆFà#ˆ	�'Òð$ð Ðr+   c                ó.   — | j                  dd¬«      d   S )Nú.é   )Úmaxsplitr   )Úsplit)r&   s    r   Ústrip_operator_overload_namerL   ¹   s   € Ø�=‰=˜ qˆ=Ó)¨!Ñ,Ð,r+   N)r<   r   r=   r   r3   r   )r<   r   r=   r   r3   r   )r<   ú!dict[str, SelectiveBuildOperator]r=   rM   r3   rM   )r&   r   r3   r   )	Ú
__future__r   Údataclassesr   r   r>   r@   rF   rL   r9   r+   r   ú<module>rP      s�   ðÝ "å !ñ �$Ô÷xð xó ðxðv1Ø	ð1à	ð1ð ó1ðØ	ðØ&<ðàóð.Ø	*ðà	*ðð 'óô-r+   