L iIUddlmZddlZddlmZddlZddlZddlZddl Z ddl Z ddl m Z ddlmZe j j#dZe j j#dZdZded<ej,d Z d; dd ZGd dej6ZGddZd?d@dZd?d@dZdAdZ dAdZ!dBdZ"dCdZ# dDdZ$ d; dEdZ% d? dFdZ& d? dGdZ'dHdZ(dHdZ)dHdZ*dIdJdZ+dIdJdZ,dIdJd Z- dKd!Z. dL dMd"Z/Gd#d$Z0dNd%Z1dOd&Z2 dI dPd'Z3e j j#drerd(d)l4m5Z5dQd*Z6eZ7d+ed,<dRdSd-ZndQd.Z6 dTd/Z5dUd0Z8dOd1Z9 dVd2Z:e:d3e+Z;e:d4e,Z<e:d5e-Z=e(e)e*d6Z>d7ed8<e+e,e-d6Z?d9ed:<y)W) annotationsN) TracebackTypeWeakKeyDictionarycygwinwinz't.Callable[[t.TextIO], t.TextIO] | Noneauto_wrap_for_ansiz\033\[[;?0-9]*[a-zA-Z]cF| t|}|d}t|||d||S)NreplaceT)line_bufferingforce_readableforce_writable)get_best_encoding_NonClosingTextIOWrapper)streamencodingerrorsr rs S/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/click/_compat.py_make_text_streamrs=$V, ~ #%%  cf tj|jdk(S#t$rYywxYw)z$Checks if a given encoding is ascii.asciiF)codecslookupname LookupError)rs ris_ascii_encodingr(s3}}X&++w66 s !$ 00cdt|ddxstj}t|ry|S)z1Returns the default stream encoding if not found.rNzutf-8)getattrsysgetdefaultencodingr)rrvs rrr0s. T * Fc.D.D.FB IrcPeZdZ d dfd ZddZddZxZS)rc tjtjt|||x|_}t ||||fi|yN)tcastBinaryIO _FixupStream_streamsuper__init__)selfrrrr rextra __class__s rr,z!_NonClosingTextIOWrapper.__init__9sF!" JJ V^^L!   v 6;U;rcD |jy#t$rYywxYwr%)detach Exceptionr-s r__del__z _NonClosingTextIOWrapper.__del__Gs"  KKM   s  c6|jjSr%)r*isattyr3s rr6z_NonClosingTextIOWrapper.isattyMs||""$$rFF)r t.BinaryIOr str | Nonerr9r boolrr:r.t.AnyreturnNone)r<r=r<r:)__name__ __module__ __qualname__r,r4r6 __classcell__)r/s@rrr8s^ %$ < < < <  <  < <  < %rrcPeZdZdZ d d dZd dZd dZd dZd dZd dZ y)r)aQThe new io interface needs more from streams than streams traditionally implement. As such, this fix-up code is necessary in some circumstances. The forcing of readable and writable flags are there because some tools put badly patched objects on sys (one such offender are certain version of jupyter notebook). c.||_||_||_yr%)r*_force_readable_force_writable)r-rr rs rr,z_FixupStream.__init__\s  --rc.t|j|Sr%)rr*r-rs r __getattr__z_FixupStream.__getattr__fst||T**rct|jdd}| tjt||S|jj |S)Nread1)rr*r&r'bytesread)r-sizefs rrKz_FixupStream.read1isC DLL'4 0 =66%4) )||  &&rc|jryt|jdd}|tjt |S |jj dy#t$rYywxYw)NTreadablerF)rErr*r&r'r:rMr2r-xs rrQz_FixupStream.readableqsh    DLL*d 3 =66$$ $  LL  a   sA## A/.A/c<|jryt|jdd}|tjt |S |jj dy#t$r/ |jj dYy#t$rYYywxYwwxYw)NTwritablerF)rFrr*r&r'r:writer2rRs rrUz_FixupStream.writable}s    DLL*d 3 =66$$ $  LL  s #     ""3'   s*A## B-B  BBBBct|jdd}|tjt|S |jj |jj y#t$rYywxYw)NseekableFT)rr*r&r'r:seektellr2rRs rrXz_FixupStream.seekablesi DLL*d 3 =66$$ $  LL  dll//1 2  s3A.. A:9A:Nr7)rr8r r:rr:rstrr<r;)rNintr<rLr>) r?r@rA__doc__r,rIrKrQrUrXrrr)r)RsI %$ ... .+'  rr)cd t|jdtS#t$r|cYSwxYwNr) isinstancerMrLr2rdefaults r_is_binary_readerres0&++a.%00 s ! //c |jdy#t$r( |jdYy#t$rYnwxYw|cYSwxYw)NrFT)rVr2rcs r_is_binary_writerrhsT S    LL     s% A1 =A=AAct|dr$tjtj|St |dd}|0t|dr$tjtj|SyNFbufferT)rer&r'r(rrbufs r_find_binary_readerrnZ 'vvajj&)) &(D )C ,S$7vvajj#&& rct|dr$tjtj|St |dd}|0t|dr$tjtj|Syrj)rhr&r'r(rrls r_find_binary_writerrqrorc6tt|ddxsdS)z3A stream is misconfigured if its encoding is ASCII.rNr)rrrs r_stream_is_misconfiguredrts WVZ>I' JJrc>t||d}||k(xs |duxr|duS)zA stream attribute is compatible if it is equal to the desired value or the desired value is unset and the attribute has a value. N)r)rattrvalue stream_values r_is_compat_stream_attrrys0 64.L 5 PUd]%O|47OPrc:t|d|xr t|d|S)zcCheck if a stream's encoding and errors attributes are compatible with the desired values. rr)ry)rrrs r_is_compatible_text_streamr{s) " H  ; 6 :;rc"||dr%tjtj|}nNtjtj|}t |||r| t |s|S||}||S|}|d}t |||||S)NFr )r r)r&r'r(TextIOr{rtr) text_streamrr is_binary find_binaryr r binary_readerpossible_binary_readers r_force_correct_text_streamrse$qzz;7 ffQXX{3  &k8V D  !9+!F "-[!9 " ) . ~ %%  rc4t|||tt|S)Nr )rrern) text_readerrrr s r_force_correct_text_readerr# &%  rc4t|||tt|S)Nr)rrhrq) text_writerrrrs r_force_correct_text_writerr,rrcRttj}| td|S)Nz6Was not able to determine binary stream for sys.stdin.)rnr stdin RuntimeError)readers rget_binary_stdinr<s&  +F ~STT MrcRttj}| td|S)Nz7Was not able to determine binary stream for sys.stdout.)rqr stdoutrwriters rget_binary_stdoutrC&  ,F ~TUU MrcRttj}| td|S)Nz7Was not able to determine binary stream for sys.stderr.)rqr stderrrrs rget_binary_stderrrJrrczttj||}||Sttj||dS)NTr)_get_windows_console_streamr rrrrr"s rget_text_stdinrQs4 $SYY& AB ~ %cii6RV WWrczttj||}||Sttj||dSNTr)rr rrrs rget_text_stdoutrX4 $SZZ6 BB ~ %cjj(FSW XXrczttj||}||Sttj||dSr)rr rrrs rget_text_stderrr_rrc@d|vr t||St||||S)z?Handles not passing ``encoding`` and ``errors`` in binary mode.brr)open)filemoderrs r _wrap_io_openrfs) d{D$ dXf ==rcdv}tj|}tj|dk(rNtfddDr|r t dfSt ||dfS|r t dfSt||dfS|st|||dfSdvr td d vr td d vr td ddl }ddl } tj|j}tjtj ztj"z} |r| t%tddz} tj&j)tj&j+|d|j-dd} tj.| | |dn|} |tj>| |t| ||} tA| | tj&jC|}tEjFtDjHtDjJ|dfS#t$rd}YKwxYw#t$r} | j|j0k(stj2dk(rv| j|j4k(r]tj&j7| j8r4tj:| j8tj<rYd} ~ d} ~ wwxYw)Nr-c3&K|]}|v ywr%r_).0mrs r zopen_stream..s2QqDy2s)warSFrTrzAppending to an existing file is not supported, because that would involve an expensive `copy`-operation to a temporary file. Open the file in normal `w`-mode and copy explicitly if that's what you're after.rSz&Use the `overwrite`-parameter instead.rz,Atomic writes only make sense with `w`-mode.rO_BINARYz.__atomic-writel08xint)&osfspathfsdecodeanyrrrrr ValueErrorerrnorandomstatst_modeOSErrorO_RDWRO_CREATO_EXCLrpathjoindirname randrangerEEXISTrEACCESisdirfilenameaccessW_OKchmod _AtomicFilerealpathr&r'IOAny)rrrratomicbinaryrrpermflags tmp_filenamefderOafs ` r open_streamrssyD[Fyy"H {{8# 2/2 2(*E11"HVDeK K #%u, ,x?FF XtXv>DD d{ ,   d{ABB $GHH 778,44 II "RYY .E  Z++ ww|| GGOOH %f..w7< =  ut|eNB   t$b$&1A Q bgg&6&6x&@ AB 66!$$quu+r "D ((?   ww%,,&4GGu||+GGMM!**-IIajj"''2  s1 H%H7% H43H47 K(BK#"K##K(c`eZdZd dZed dZd d dZd dZddZ ddZ d dZ y)rc<||_||_||_d|_yNF)_f _tmp_filename_real_filenameclosed)r-rOr real_filenames rr,z_AtomicFile.__init__s )+ rc|jSr%)rr3s rrz_AtomicFile.names"""rc|jry|jjtj|j |j d|_y)NT)rrcloserr rr)r-deletes rrz_AtomicFile.closes: ;;    4%%t':':; rc.t|j|Sr%)rrrHs rrIz_AtomicFile.__getattr__stww%%rc|Sr%r_r3s r __enter__z_AtomicFile.__enter__s rc,|j|duy)N)r)r)r-exc_type exc_valuetbs r__exit__z_AtomicFile.__exit__s ($. /rc,t|jSr%)reprrr3s r__repr__z_AtomicFile.__repr__sDGG}rN)rO t.IO[t.Any]rr\rr\r<r=r<r\F)rr:r<r=r[)r<r)rztype[BaseException] | NonerzBaseException | NonerzTracebackType | Noner<r=) r?r@rAr,propertyrrrIrrrr_rrrrsZ ##&0,0(0 ! 0  0rrc.tjd|S)Nrg)_ansi_resub)rws r strip_ansirs <<E ""rct|ttfr#|j}t|ttfr#|jj j dS)Nz ipykernel.)rbr)rr*r/r@ startswithrss r_is_jupyter_kernel_outputrsL Vl,DE F Vl,DE F    & & 1 1, ??rcd|,|tj}t| xr t| S| Sr%)r rr6r)rcolors rshould_strip_ansirs: } >YYF&>!K*CF*K&KK9r)rc*ddl}|jSra)localegetpreferredencoding)rs r_get_argv_encodingrs**,,rz'cabc.MutableMapping[t.TextIO, t.TextIO]_ansi_stream_wrapperscj tj|}||Sddl}t ||}|j ||t jt jj}|jdfd }||_ |t|<|S#t$rd}YwxYw#t$rY|SwxYw)zbSupport ANSI color and style codes on Windows by wrapping a stream with colorama. Nr)stripcR |S#t$rjwxYwr%) BaseException reset_all)s_write ansi_wrappers r _safe_writez'auto_wrap_for_ansi.._safe_writes0 ay   &&( s &)r r\r<r]) rgetr2coloramar AnsiToWin32r&r'r}rrV) rrcachedrrr"rr rs @@rr r s *..v6F  M!&%0++F%+@ VVAHHl11 2  ,. !& ) 7 F 0    s#B B% B"!B"% B21B2cdttjddxstjS)Nr)rr rgetfilesystemencodingr_rrrr/s#syy*d3Rs7P7P7RRrcyr%r_)rOrrs rrr2src*tt|Sr%)lenr)rSs rterm_lenr8s z!} rcB |jS#t$rYywxYwr)r6r2rss rr6r6<s%}} s  c0tdfd }|S)Nc}|y j|}||S} ||<|S#t$rd}Y wxYw#t$rY|SwxYwr%)rr2)rr"cachesrc_func wrapper_funcs rfuncz&_make_cached_stream_func..funcIs{ > 6"B >I ^ E&M  B     s1A ?? AA)r<t.TextIO | Noner)rrr rs`` @r_make_cached_stream_funcr"Cs6G5HE& Krc"tjSr%)r rr_rrr$_s syyrc"tjSr%)r rr_rrr$r$`  rc"tjSr%)r rr_rrr$r$ar&r)rrrz-cabc.Mapping[str, t.Callable[[], t.BinaryIO]]binary_streamszAcabc.Mapping[str, t.Callable[[str | None, str | None], t.TextIO]] text_streamsr7) rr8rr9rr9r r:rr:r<t.TextIO)rr\r<r:)rrr<r\r)rrrdr:r<r:)rrr<zt.BinaryIO | None)rr*r<r:)rr*rvr\rwr9r<r:)rr*rr9rr9r<r:)r~rrr9rr9rz%t.Callable[[t.IO[t.Any], bool], bool]rz,t.Callable[[t.IO[t.Any]], t.BinaryIO | None]r r:rr:r<r*) rrrr9rr9r r:r<r*) rrrr9rr9rr:r<r*)r<r8)NN)rr9rr9r<r*) rzstr | os.PathLike[str] | intrr\rr9rr9r<r)rNstrictF) rzstr | os.PathLike[str]rr\rr9rr9rr:r<ztuple[t.IO[t.Any], bool])rwr\r<r\)rrr<r:)rzt.IO[t.Any] | Noner bool | Noner<r:rr%)rr*rr-r<r*)rOr*rr9rr9r<r!)rSr\r<r])rt.Callable[[], t.TextIO | None]rzt.Callable[[], t.TextIO]r<r.)@ __future__rrcollections.abcabccabciorrer typingr&typesrweakrefrplatformrCYGWINWINr __annotations__compilerrrr TextIOWrapperrr)rerhrnrqrtryr{rrrrrrrrrrrrrrr _winconsolerrrrr6r"_default_text_stdin_default_text_stdout_default_text_stderrr(r)r_rrrBs"  %   * lle$>B;B 2::/ 0!        *%r//%4BBJ $$KQ; ; *;4>; ;"! +++ +5 + > +  +++d!        (!         XYY > & >  > >  >  >! N)$N) N)N)  N)  N)  N)b!!H#@=A .9 <<5!c8- FWEXBX!JS )3=  -*%8//@.Q/0BOT/0BOTA=S Or