K iddlmZddlmZmZeddZedZedZedZedZ ed Z ed Z ed Z ed Z y ))xrange)defun defun_wrappedc|Dcgc]}|j|}}|Dcgc]}|j|}}g}g}g}g}|D]'}||g|j|j|)|D]'}||g|j|j|)t|t|kr |jSt|t|kDr|r|Dcgc])}|xr|d|j zzxs||j z+}}|Dcgc])}|xr|d|j zzxs||j z+}}|j |j||z||z|jzS|jS|j} |j} | dz|_ |rX|j} |j} | d| | zz|jd| z z|jd| z z z} |rX|D]}| |j|z} |D]}| |j|z}  | |_ | Scc}wcc}wcc}wcc}w#| |_ wxYw)Nr) convertisnpintappendlenzeroepssign gammaprodinfoneprecpopgamma) ctxab_infsignx poles_num poles_den regular_num regular_denporigijs a/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/mpmath/functions/factorials.pyrrsD!"#AQ#A#!"#AQ#A#IIKK Bi(Q8??BB Bi(Q8??BB 9~I&sxx 9~I& ;DEa$q!CGG)}1#'' 1EAE;DEa$q!CGG)}1#'' 1EAE88CMM!K-+ FG#''Q Q77N A 88D "9 A A "!syy1~- !A#> >A/Aa399Q</a//Aa399Q</a/ 2IC $#FE"s)H?I.I .IA#I>6I IcL|j|}|j|}|j|r||}}|j|r||jk(r|j|s{||jk(r |j S|dkDr |j S|j|r |j S|dkr-|j|j||jzS|j S|j||d|jz}|j||g|gS)Nrr) r isinfr_imninfnanrisintrrfaddrr)rryxys r$betar0)s AA AA yy|!1 yy| < CHH}ww1uxxyy|ww1uxx ! -77ww !QQsxxZ (B ==!Q" &&c|j|dd|jz}|j|dd|jz}|j||d|jz}|j|g||gSNrrr'r-rfsubr)rnkn1k1nk1s r$binomialr;=sm !QQsxxZ (B !QQsxxZ (B ((2qqz( *C =="Cy ))r1cl|j||d|jz}|j|g|gS)Nrr')r-rr)rrr6xns r$rfr>Ds3 !QQsxxZ (B =="s ##r1c|j|dd|jz}|j|j||d|jzdd|jz}|j|g|gSr3r4)rrr6x1xn1s r$ffrBIsf !QQsxxZ (B ((388Aqqz82AAchhJ( GC =="u %%r1c|j|r||jk(r|S|jSd|dz z|jdz |j |dz dz zz|j |dz dzzS)Nrr)r(rr+picospir)rrs r$fac2rGOsm yy| <Hww qs8SVVAX#))A,q.!!34 4SYYqs1u5E EEr1c|j|r||jk(r|S|jS|j|r|S|j |s9|j |dkr%|j |j |r|dzSt|dkDr1|xjd|jt|dzz c_|j||j krd|z }d|jz}|jd|z}|j|jzdz |j|jz|dzzdz z ||jd|z zz|j|jd|z|z z }|j!d|z |j#|z||zz }|j%|r|j |}|S|jdzdz}d}t||ks|j|dkr=||j'|z}|dz }t||kr(|j|dkr=|dz}|j)ddz }||j|j*z}|||jd|jzzdz z }||dzdz |j)ddz z |j|zz }|d|dzzdz z}|dzx} } t-d|dzD]L} |j/d| zdzd| z| dzz| zz } t| |j0krn | | z} || z }N||j#|zS)Nr&rr rD)r(rr+isnanr)_rer,absdpslogrerEexpjpir#lnpolylogbarnesgexp _is_real_typermpfglaisherr bernoullir) rzwpi2uvNGsz2kz2r7ts r$rUrUWs yy| <Hww yy| GGAJCGGAJ!O #''!*0Es  1vz 1SWWSVA&&& vvayCGG8 aCh JJqsO EE#&&LOceeCFFl1a4/1 1AcffQqSkM A EE#++a# #C ' ( KK! SWWQZ 'Q .   Q  A 1 qA A a&1*q A  SYYq\ Q a&1*q A FA  2 A A3771SVV8  Q A!Q$q&B  **A1a4MA!tOC" Aqs^ MM!A#a% AaC1IcM 2 q6CGG   r  Q  SWWQZ<r1c*|j|dzS)Nr)rU)rr[s r$superfacrgs ;;qs r1c||jk(r|St|dkDr(dt|jt|dz}nd}|xj|z c_|j |s|j |dkru|j|j |rUt|j|}|j| dz }|dzdzdzr| }|j|r|dzS|S|dz}|j||j|z}|xj|zc_||j|z S)NrIrDrr&ry)rrNintrPrr)rMr,rQhyperfac_is_complex_typerVloggammarU)rr[extrar6hzp1r_s r$rjrjs CGG| 1vz#cggc!fQ'((HHH 771:#''!*q.SYYswwqz-B q N LL!A  qS1H>A    "r6M A#C #,,s##$AHHH s{{3 r1N)F) libmp.backendr functionsrrrr0r;r>rBrGrUrgrjr1r$rss"+""H''&** $$&& FF..`  4r1