ó
    ‹*£hŸ  ã                   ó`   • S r SSKJr  SSKJrJr  \4S jr\4S jr\4S jr\4S jr	\4S jr
g	)
zStrategies to Traverse a Tree.é    )Ú	basic_fns)ÚchainÚdo_onec                 ó(   ^ ^• [        T UU 4S j5      $ )z;Apply a rule down a tree running it on the top nodes first.c                 ó<   >• [        [        TT5      T5      " U 5      $ ©N©ÚsallÚtop_down©ÚexprÚfnsÚrules    €€ÚV/home/mande/repo/quber/.venv/lib/python3.13/site-packages/sympy/strategies/traverse.pyÚ<lambda>Útop_down.<locals>.<lambda>   s   ø€ ¤D¬°$¸Ó)<¸cÔ$BÀ4Ô$Hó    ©r   ©r   r   s   ``r   r   r      s   ù€ ä�ÕHÓIÐIr   c                 ó(   ^ ^• [        UU 4S jT 5      $ )z>Apply a rule down a tree running it on the bottom nodes first.c                 ó<   >• [        [        TT5      T5      " U 5      $ r   ©r
   Ú	bottom_upr   s    €€r   r   Úbottom_up.<locals>.<lambda>   s   ø€ œd¤9¨T°3Ó#7¸Ô=¸dÔCr   r   r   s   ``r   r   r      s   ù€ äÕCÀTÓJÐJr   c                 ó(   ^ ^• [        T UU 4S j5      $ )z+Apply a rule down a tree - stop on success.c                 ó<   >• [        [        TT5      T5      " U 5      $ r   r	   r   s    €€r   r   Útop_down_once.<locals>.<lambda>   s   ø€ ¤T¬(°4¸Ó*=¸sÔ%CÀDÔ%Ir   ©r   r   s   ``r   Útop_down_oncer      s   ù€ ä�$ÕIÓJÐJr   c                 ó(   ^ ^• [        UU 4S jT 5      $ )z)Apply a rule up a tree - stop on success.c                 ó<   >• [        [        TT5      T5      " U 5      $ r   r   r   s    €€r   r   Ú bottom_up_once.<locals>.<lambda>   s   ø€ œt¤I¨d°CÓ$8¸#Ô>¸tÔDr   r   r   s   ``r   Úbottom_up_oncer#      s   ù€ äÕDÀdÓKÐKr   c                 óZ   ^ ^^^^• [        UR                  S5      u  mmmmUUUUU 4S jnU$ )z#Strategic all - apply rule to args.)ÚopÚnewÚchildrenÚleafc                 ód   >• T" U 5      (       a  U $ [        TT" U 5      5      nT" T" U 5      /UQ76 $ r   )Úmap)r   Úargsr'   r(   r&   r%   r   s     €€€€€r   Úall_rlÚsall.<locals>.all_rl   s5   ø€ Ù��:‰:ØˆKä�t™X d›^Ó,ˆDÙ‘r˜$“xÐ' $Ò'Ð'r   )r*   Úget)r   r   r,   r'   r(   r&   r%   s   `  @@@@r   r
   r
      s.   ü€ ä! #§'¡'Ð+LÓMÑ€BˆˆX�t÷(ñ (ð €Mr   N)Ú__doc__Úsympy.strategies.utilr   Úsympy.strategies.corer   r   r   r   r   r#   r
   © r   r   Ú<module>r3      sD   ðÙ $Ý +ß /ð !ô Jð
 "ô Kð
 &ô Kð
 'ô Lð
 õ r   