Ë
    øÿæi%  ã                   ó\   — d dl Z d dlmZ d dlmZmZmZ dZ G d„ d«      Zd„ Z	d„ Z
d	„ Zd
„ Zy)é    N)ÚEinopsError)ÚAnonymousAxisÚParsedExpressionÚ	_ellipsiszAlex Rogozhnikovc                   ó   — e Zd Zdefd„Zd„ Zy)ÚAnonymousAxisPlaceholderÚvaluec                 óJ   — || _         t        | j                   t        «      sJ ‚y ©N)r	   Ú
isinstanceÚint)Úselfr	   s     ún/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/einops/tests/test_parsing.pyÚ__init__z!AnonymousAxisPlaceholder.__init__
   s   € ØˆŒ
Ü˜$Ÿ*™*¤cÔ*Ð*Ñ*ó    c                 óX   — t        |t        «      xr | j                  |j                  k(  S r   )r   r   r	   )r   Úothers     r   Ú__eq__zAnonymousAxisPlaceholder.__eq__   s!   € Ü˜%¤Ó/ÒM°D·J±JÀ%Ç+Á+Ñ4MÐMr   N)Ú__name__Ú
__module__Ú__qualname__r   r   r   © r   r   r   r   	   s   „ ð+˜có +óNr   r   c                  ó´   — t        d«      t        d«      }} | |k7  sJ ‚t        d«      t        d«      }}| |k(  r||k(  sJ ‚| |k7  r||k7  sJ ‚| d|g|d|gk(  sJ ‚y )NÚ2é   é   )r   r   )ÚaÚbÚcÚds       r   Útest_anonymous_axesr!      st   € Ü˜Óœ}¨SÓ1€q€AØ�Š6€Mˆ6Ü# AÓ&Ô(@ÀÓ(C€q€AØ�Š6�a˜1’fÐÐØ�Š6�a˜1’fÐÐØˆq�!ˆ9˜˜A˜q˜	Ò!Ð!Ñ!r   c                  ó”   — dD ]  } t        j                  | «      rŒJ ‚ dddddddt        fD ]  } t        j                  | «      sŒJ ‚ y )	N)r   r   ÚhÚdxÚh1ÚzzÚi9123ÚsomelongnameÚAlexÚ	camelCaseÚu_n_d_e_r_scoreÚunreasonablyLongAxisNameÚ Ú2bÚ12Ú_startWithUnderscoreÚendWithUnderscore_Ú_z...)r   Úcheck_axis_namer   )Únames    r   Útest_elementary_axis_namer5      sZ   € óˆô  ×/Ñ/°Õ5Ð5Ð5ðð  �T˜4Ð!7Ð9MÈsÐTYÔ[dÓeˆÜ#×3Ñ3°DÕ9Ð9Ð9ñ fr   c                  ó:  — t        d«       t        j                  t        «      5  t        d«       d d d «       t        j                  t        «      5  t        d«       d d d «       t        j                  t        «      5  t        d«       d d d «       t        d«       t        j                  t        «      5  t        d«       d d d «       t        j                  t        «      5  t        d«       d d d «       t        j                  t        «      5  t        d«       d d d «       t        j                  t        «      5  t        d	«       d d d «       t        d
«       t        j                  t        «      5  t        d«       d d d «       t        j                  t        «      5  t        d«       d d d «       t        j                  t        «      5  t        d«       d d d «       t        j                  t        «      5  t        d«       d d d «       y # 1 sw Y   �ŒãxY w# 1 sw Y   �ŒÃxY w# 1 sw Y   �Œ£xY w# 1 sw Y   �ŒxxY w# 1 sw Y   �ŒXxY w# 1 sw Y   �Œ8xY w# 1 sw Y   �ŒxY w# 1 sw Y   ŒìxY w# 1 sw Y   ŒËxY w# 1 sw Y   ŒªxY w# 1 sw Y   y xY w)Nz... a b c dz... a b c d ...z... a b c (d ...)z(... a) b c (d ...)z(a) b c (d ...)z(a)) b c (d ...)z(a b c (d ...)z(a) (()) b c (d ...)z(a) ((b c) (d ...))u&   camelCase under_scored cApiTaLs ÃŸ ...Ú1aÚ_prez...prezpre...)r   ÚpytestÚraisesr   r   r   r   Útest_invalid_expressionsr;   0   s�  € ä�]Ô#Ü	�‰”{Õ	#ÜÐ*Ô+÷ 
$ä	�‰”{Õ	#ÜÐ,Ô-÷ 
$ä	�‰”{Õ	#ÜÐ.Ô/÷ 
$ô Ð&Ô'Ü	�‰”{Õ	#ÜÐ+Ô,÷ 
$ä	�‰”{Õ	#ÜÐ)Ô*÷ 
$ä	�‰”{Õ	#ÜÐ/Ô0÷ 
$ä	�‰”{Õ	#ÜÐ.Ô/÷ 
$ô Ð=Ô>Ü	�‰”{Õ	#Ü˜Ô÷ 
$ä	�‰”{Õ	#Ü˜Ô ÷ 
$ä	�‰”{Õ	#Ü˜Ô"÷ 
$ä	�‰”{Õ	#Ü˜Ô"÷ 
$Ð	#÷5 
$Ñ	#úç	#Ñ	#úç	#Ñ	#ú÷
 
$Ñ	#úç	#Ñ	#úç	#Ñ	#úç	#Ñ	#ú÷
 
$Ð	#úç	#Ð	#úç	#Ð	#úç	#Ð	#úsƒ   ¥HÁHÁ?H,Â7H9Ã$IÄIÄ>I Å6I-Æ#I9ÇJÇ=JÈHÈH)È,H6È9IÉIÉIÉ I*É-I6É9JÊJÊJc            	      óâ  — t        d«      } | j                  h d£k(  sJ ‚| j                  dgdgdgdggk(  sJ ‚| j                  rJ ‚| j                  rJ ‚t        d«      } | j                  t        «       k(  sJ ‚| j                  g g g g gk(  sJ ‚| j                  rJ ‚| j                  rJ ‚t        d«      } | j                  t        «       k(  sJ ‚| j                  g g g g gk(  sJ ‚| j                  rJ ‚| j                  rJ ‚t        }t        d	«      } t        | j                  «      d
k(  r)| j                  D �ch c]  }|j                  ’Œ c}h d£k(  sJ ‚| j                   |d«      g |d
«       |d«      ggk(  sJ ‚| j                  sJ ‚| j                  rJ ‚t        d«      } t        | j                  «      dk(  r)| j                  D �ch c]  }|j                  ’Œ c}ddhk(  sJ ‚| j                   |d«      gg  |d«      gg gk(  sJ ‚t        d«      } t        | j                  «      dk(  sJ ‚| j                  j                  dt        ddh«      j                  «       dk(  sJ ‚| j                  dgt        dg |d«      gd |d«      ggk(  sJ ‚| j                  sJ ‚| j                  sJ ‚| j                  rJ ‚t        d«      } t        | j                  «      dk(  sJ ‚| j                  j                  dt        ddh«      j                  «       dk(  sJ ‚| j                  dt        d |d«      gdg |d«      ggk(  sJ ‚| j                  sJ ‚| j                  sJ ‚| j                  sJ ‚y c c}w c c}w )Nza1  b1   c1    d1>   Úa1Úb1Úc1Úd1r=   r>   r?   r@   z() () () ()z1 1 1 ()z5 (3 4)r   >   r   é   é   rB   rA   z5 1 (1 4) 1r   zname1 ... a1 12 (name2 14)é   Úname1Úname2é   é   z(name1 ... a1 12) name2 14)r   ÚidentifiersÚcompositionÚhas_non_unitary_anonymous_axesÚhas_ellipsisÚsetr   Úlenr	   Ú
differencer   Ú__len__Úhas_ellipsis_parenthesized)ÚparsedÚaapÚis      r   Útest_parse_expressionrT   Q   s   € ÜÐ1Ó2€FØ×ÑÒ!9Ò9Ð9Ð9Ø×Ñ 4 &¨4¨&°4°&¸4¸&Ð!AÒAÐAÐAØ×4Ò4Ð4Ð4Ø×"Ò"Ð"Ð"ä˜mÓ,€FØ×Ñ¤£Ò&Ð&Ð&Ø×Ñ " b¨"¨bÐ!1Ò1Ð1Ð1Ø×4Ò4Ð4Ð4Ø×"Ò"Ð"Ð"ä˜jÓ)€FØ×Ñ¤£Ò&Ð&Ð&Ø×Ñ " b¨"¨bÐ!1Ò1Ð1Ð1Ø×4Ò4Ð4Ð4Ø×"Ò"Ð"Ð"ä
"€Cä˜iÓ(€FÜˆv×!Ñ!Ó" aÒ'¸f×>PÒ>PÓ,QÑ>P¸¨Q¯W«WÐ>PÑ,QÒU^Ò,^Ð^Ð^Ø×Ñ¡3 q£6 (©S°«V±S¸³VÐ,<Ð!=Ò=Ð=Ð=Ø×0Ò0Ð0Ð0Ø×"Ò"Ð"Ð"ä˜mÓ,€FÜˆv×!Ñ!Ó" aÒ'¸f×>PÒ>PÓ,QÑ>P¸¨Q¯W«WÐ>PÑ,QÐVWÐYZÐU[Ò,[Ð[Ð[Ø×Ñ¡3 q£6 (¨B±°Q³°¸"Ð!=Ò=Ð=Ð=äÐ:Ó;€FÜˆv×!Ñ!Ó" aÒ'Ð'Ð'Ø×Ñ×(Ñ(¨'´9¸dÀGÐ)LÓM×UÑUÓWÐ[\Ò\Ð\Ð\Ø×Ñ 7 )¬Y¸¸ÁÀRÃÀ	ÈGÑUXÐY[ÓU\ÐK]Ð!^Ò^Ð^Ð^Ø×0Ò0Ð0Ð0Ø×ÒÐÐØ×0Ò0Ð0Ð0äÐ:Ó;€FÜˆv×!Ñ!Ó" aÒ'Ð'Ð'Ø×Ñ×(Ñ(¨'´9¸dÀGÐ)LÓM×UÑUÓWÐ[\Ò\Ð\Ð\Ø×Ñ 7¬I°t¹SÀ»WÐ"EÈÀyÑSVÐWYÓSZÐR[Ð!\Ò\Ð\Ð\Ø×0Ò0Ð0Ð0Ø×ÒÐÐØ×,Ò,Ð,Ñ,ùò/ -Rùò -Rs   Ä5M'ÇM,)r9   Úeinopsr   Úeinops.parsingr   r   r   Ú
__author__r   r!   r5   r;   rT   r   r   r   Ú<module>rX      s7   ðÛ å ß EÑ Eà€
÷Nñ Nò"ò:ò*#óB--r   