Ë
    S²jé  ã                   óü  — U d dl Z d dlZd dlmZ  e j                  e«      Zej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  ej                  iZeeej                      eej"                     f   ed<   ej                  ej                  ej                  ej                  fZdedeej"                     dz  fd„Z	 	 ddej                   dej                   d	ed
edeej"                  ej0                  f   dz  f
d„Zdej                   dej                   d
edej                   fd„Zy)é    N)ÚFloorDivÚ_MIRROR_REL_OPÚtypeÚreturnc                 ó,   — t         j                  | «      S ©N)r   Úget)r   s    úW/var/www/html/ia-enhanced/venv/lib/python3.12/site-packages/torch/utils/_sympy/solve.pyÚmirror_rel_opr      s   € Ü×Ñ˜dÓ#Ð#ó    ÚexprÚthingÚtrialsÚfloordiv_inequalityc                 ó  — t        t        | «      «      }t        | t        j                  «      r|€ t
        j                  dt        | «      «       y | j                  j                  |«      }| j                  j                  |«      }|r|rt
        j                  d|| «       y g }|r|j                  | «       |r,|j                   || j                  | j                  «      «       |D ]¢  }|€Œt        |t        j                  «      st        d«      ‚t        |«      D ]  }	t        |||¬«      }
|
|k(  r n|
}Œ t        |t        j                  «      sŒm|j                  |k(  sŒ}t
        j                  d| |«       ||j                  fc S  y )Nz$expression with unsupported type: %sz0thing (%s) found in both sides of expression: %szexpected sympy.Rel)r   zsolved: %s ---> %s)r   r   Ú
isinstanceÚsympyÚRelÚlogÚdebugÚlhsÚhasÚrhsÚappendÚAssertionErrorÚrangeÚ_try_isolate_lhs)r   r   r   r   ÚmirrorÚlhs_has_thingÚrhs_has_thingÚexpressionsÚeÚ_Útrials              r
   Ú	try_solver%   (   sT  € ô œ4 ›:Ó&€Fô
 �dœEŸI™IÔ&¨&¨.Ü�	‰	Ð8¼$¸t»*ÔEØà—H‘H—L‘L Ó'€MØ—H‘H—L‘L Ó'€Mñ
 ™Ü�	‰	ÐDÀeÈTÔRØð €Kñ Ø×Ñ˜4Ô ÙØ×Ñ™6 $§(¡(¨D¯H©HÓ5Ô6àò ˆØˆ9Øä˜!œUŸY™YÔ'Ü Ð!5Ó6Ð6ä�v“ò 	ˆAÜ$ Q¨ÐCVÔWˆEà˜ŠzÙØ‰Að	ô �aœŸ™Õ#¨¯©°«Ü�I‰IÐ*¨D°!Ô4Ø�a—e‘e�8ŠOð#ð& r   r"   c                 ó 	  ‡— t        | «      }t        | t        j                  «      rqt        | j                  t        j
                  «      r(t        ˆfd„| j                  j                  D «       «      nd} || j                  |z
  | j                  |z
  «      } t        | t        j                  «      rît        | j                  t        j                  «      rÊ| j                  \  }}t        j                  |j                  D �cg c]  }|j                  ‰«      rŒ|‘Œ c}Ž }t        | t        «      r|j                  �ct        | t        «      s|j                  sG||z  }||z  }t        | t        «      r|j                  rt        |«      }|€t        d«      ‚ |||«      } |�rÖt        | t        j                  «      �r»t        | j                  t         «      �r | j                  j"                  j$                  �r| j                  j&                  �rht        | t        j(                  «      rt| j                  j                  \  }	}
t        j*                  t        j,                  |	| j                  |
z  «      t        j.                  |	| j                  dz   |
z  «      «      S t        | t        j0                  «      rt| j                  j                  \  }	}
t        j2                  t        j.                  |	| j                  |
z  «      t        j,                  |	| j                  dz   |
z  «      «      S t        | t        j4                  t        j,                  f«      r|t        | t        j,                  «      r| j                  n| j                  dz   }t        j,                  | j                  j                  d   || j                  j                  d   z  «      S t        | t        j.                  t        j6                  f«      r|t        | t        j.                  «      r| j                  n| j                  dz   }t        j.                  | j                  j                  d   || j                  j                  d   z  «      S | S c c}w )Nc              3   óF   •K  — | ]  }|j                  ‰«      rŒ|–— Œ y ­wr   )r   )Ú.0Úar   s     €r
   ú	<genexpr>z#_try_isolate_lhs.<locals>.<genexpr>i   s   øè ø€ Ò:�a¨Q¯U©U°5­\”Ñ:ùs   ƒ!š!r   zexpected op to be not Noneé   )r   r   r   r   r   ÚAddÚsumÚargsr   ÚMulr   ÚINEQUALITY_TYPESÚis_negativeÚis_zeror   r   r   ÚdivisorÚis_positiveÚ
is_integerÚEqÚAndÚGeÚLtÚNeÚOrÚGtÚLe)r"   r   r   ÚopÚlhs_not_thingr   r   r)   ÚotherÚ	numeratorÚdenominatorÚquotients    `          r
   r   r   a   s   ø€ ô 
ˆa‹€Bä�!”U—Y‘YÔô ˜!Ÿ%™%¤§¡Ô+ô Ó:˜1Ÿ5™5Ÿ:™:Ô:Ô:àð 	ñ
 ˆq�u‰u�}Ñ$ a§e¡e¨mÑ&;Ó<ˆô �!”U—Y‘YÔ¤J¨q¯u©u´e·i±iÔ$@Ø—6‘6‰ˆˆSÜ—	‘	 s§x¡xÖD !°q·u±u¸Uµ|šAÒDÐEˆô
 ˜1Ô.Ô/°E×4EÑ4EÐ4MÜ˜1Ô.Ô/°C·K²Kð ˜‘+ˆCØ˜‘+ˆCô ˜!Ô-Ô.°5×3DÒ3DÜ" 2Ó&�àˆzÜ$Ð%AÓBÐBÙ�3˜“ˆAò 	Ü�qœ%Ÿ)™)Õ$Ü�q—u‘uœhÕ'Ø�E‰E�M‰M×%Ó%Ø�E‰E×Óô �aœŸ™Ô"Ø%&§U¡U§Z¡ZÑ"ˆI�{Ü—9‘9Ü—‘˜ Q§U¡U¨[Ñ%8Ó:Ü—‘˜ a§e¡e¨a¡i°;Ñ%>Ó@óð ô �aœŸ™Ô"Ø%&§U¡U§Z¡ZÑ"ˆI�{Ü—8‘8Ü—‘˜ Q§U¡U¨[Ñ%8Ó:Ü—‘˜ a§e¡e¨a¡i°;Ñ%>Ó@óð ô �aœ%Ÿ(™(¤E§H¡HÐ-Ô.Ü *¨1¬e¯h©hÔ 7�q—u’u¸a¿e¹eÀa¹iˆHÜ—8‘8˜AŸE™EŸJ™J q™M¨H°q·u±u·z±zÀ!±}Ñ,DÓFÐFô �aœ%Ÿ(™(¤E§H¡HÐ-Ô.Ü *¨1¬e¯h©hÔ 7�q—u’u¸a¿e¹eÀa¹iˆHÜ—8‘8˜AŸE™EŸJ™J q™M¨H°q·u±u·z±zÀ!±}Ñ,DÓFÐFà€HùòC Es   ÄQ;ÄQ;)é   T)Úloggingr   Útorch.utils._sympy.functionsr   Ú	getLoggerÚ__name__r   r6   r:   r8   r=   r<   r9   r   Údictr   ÚBasicr   Ú__annotations__r0   r   ÚintÚboolÚtupleÚExprr%   r   © r   r
   ú<module>rQ      sm  ðÜ ã å 1ð €g×Ñ˜Ó!€ð 
‡H�Hˆe�h‰hØ	‡H�Hˆe�h‰hØ	‡H�Hˆe�h‰hØ	‡H�Hˆe�h‰hØ	‡H�Hˆe�h‰hØ	‡H�Hˆe�h‰hð<€��T˜%Ÿ+™+Ñ&¨¨U¯Y©Y©Ð7Ñ8ó ð —H‘H˜eŸh™h¨¯©°%·(±(Ð;Ð ð$˜ð $  e§i¡i¡°4Ñ!7ó $ð* Ø $ñ	6Ø
�+‰+ð6à�;‰;ð6ð ð6ð ð	6ð
 ˆ5�9‰9�e—j‘jÐ Ñ! DÑ(ó6ðrRØ‡{�{ðRØ Ÿ;™;ðRØ=AðRà
‡[�[ôRr   