Ë
    #´˜j¡  ã                   óR   — d Z ddlmZmZ ddlmZmZ  G d„ dej                  «      Zy)z:
Optional fixer to transform set() calls to set literals.
é    )Ú
fixer_baseÚpytree)ÚtokenÚsymsc                   ó   — e Zd ZdZdZdZd„ Zy)ÚFixSetLiteralTaj  power< 'set' trailer< '('
                     (atom=atom< '[' (items=listmaker< any ((',' any)* [',']) >
                                |
                                single=any) ']' >
                     |
                     atom< '(' items=testlist_gexp< any ((',' any)* [',']) > ')' >
                     )
                     ')' > >
              c                 ó  — |j                  d«      }|rGt        j                  t        j                  |j                  «       g«      }|j                  |«       |}n|d   }t        j                  t        j                  d«      g}|j                  d„ |j                  D «       «       |j                  t        j                  t        j                  d«      «       |j                  j                  |d   _        t        j                  t        j                   |«      }|j                  |_        t#        |j                  «      dk(  r=|j                  d   }|j%                  «        |j                  |j                  d   _        |S )	NÚsingleÚitemsÚ{c              3   ó<   K  — | ]  }|j                  «       –— Œ y ­w)N)Úclone)Ú.0Úns     ú/lib/python3.12/lib2to3/fixes/fix_set_literal.pyÚ	<genexpr>z*FixSetLiteral.transform.<locals>.<genexpr>'   s   è ø€ Ð9©. Q�q—w‘w—y©.ùs   ‚Ú}éÿÿÿÿé   é   )Úgetr   ÚNoder   Ú	listmakerr   ÚreplaceÚLeafr   ÚLBRACEÚextendÚchildrenÚappendÚRBRACEÚnext_siblingÚprefixÚdictsetmakerÚlenÚremove)	ÚselfÚnodeÚresultsr
   Úfaker   ÚliteralÚmakerr   s	            r   Ú	transformzFixSetLiteral.transform   s  € Ø—‘˜XÓ&ˆÙä—;‘;œtŸ~™~°·±³Ð/?Ó@ˆDØ�N‰N˜4Ô Ø‰Eà˜GÑ$ˆEô —;‘;œuŸ|™|¨SÓ1Ð2ˆØ�‰Ñ9¨%¯.ª.Ó9Ô9Ø�‰”v—{‘{¤5§<¡<°Ó5Ô6à"×/Ñ/×6Ñ6ˆ�‰ÔÜ—‘œD×-Ñ-¨wÓ7ˆØ—{‘{ˆŒô ˆu�~‰~Ó !Ò#Ø—‘˜qÑ!ˆAØ�H‰HŒJØ()¯©ˆE�N‰N˜2ÑÔ%ð ˆó    N)Ú__name__Ú
__module__Ú__qualname__ÚBM_compatibleÚexplicitÚPATTERNr,   © r-   r   r   r      s   „ à€MØ€Hð€Gór-   r   N)	Ú__doc__Úlib2to3r   r   Úlib2to3.fixer_utilr   r   ÚBaseFixr   r4   r-   r   Ú<module>r9      s$   ðñ÷ 'ß *ô)�J×&Ñ&õ )r-   