K i+ddlZddlmZddlmZddlmZddlmZm Z GddZ ejdejd ejd ejd ejd ejd ejdejdejdejdejdejdejdejdejddZ ejdZ difdZy)Nproduct)Sum)sympify)cossinc6eZdZdZdZdZdZdZdZdZ y) MaximaHelpersc"|jSNexpandexprs Z/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/sympy/parsing/maxima.py maxima_expandzMaximaHelpers.maxima_expand s{{}c"|jSr )evalfrs r maxima_floatzMaximaHelpers.maxima_float szz|rc&|jdS)NT)trigr rs rmaxima_trigexpandzMaximaHelpers.maxima_trigexpands{{{%%rc<t||||fjSr )rdoita1a2a3a4s r maxima_sumzMaximaHelpers.maxima_sums2B|$))++rc t||||fSr rrs rmaxima_productzMaximaHelpers.maxima_productsrBB<((rcdt|z SN)rrs r maxima_csczMaximaHelpers.maxima_cscT{rcdt|z Sr%)rrs r maxima_seczMaximaHelpers.maxima_secr(rN) __name__ __module__ __qualname__rrrr!r#r'r*rrr r s%&,)rr z%piz%ez%iz\^z\binf\bz\bminf\bz \bminus\bz \bexpand\bz \bfloat\bz \btrigexpandz\bsum\bz \bproduct\bz \bratsimp\bz\bcsc\bz\bsec\b)piEIz**ooz-ooz'-'rrrr!r#cancelr'r*z ^\s*(\w+)\s*:c|j}|jd}tjD]\}}|j ||}d}t j |}|r2|jd}||jdj}tjj}|j|t||}|r|r|||<|S)Nz; r&)locals)striprstripsub_dictitemssubvar_namesearchgroupendr __dict__copyupdater) strglobals name_dictkv assign_var var_matchdctobjs r parse_maximarK3s ))+C **T C 1eeAsmJ$I__Q' )--/"#))+  % % 'CJJy #c "Cg!  Jr)resympy.concrete.productsrsympy.concrete.summationsrsympy.core.sympifyr(sympy.functions.elementary.trigonometricrrr compiler8r;rKr.rrrRs +)&?. "**V  E  E  "**U  "**Z 2::k " 2::l #RZZ .BJJ|,#O4"**Z( bjj0bjj("**Z("**Z( $ 2::& '#br