K iPUddlZddlmZddlmZddlmZmZddlm Z ddl m Z m Z dZ dZd Zd Zd Zd Zd ZdZdZeedfed<eez ZdZdZGddZGddeZGddeZGddeZGddeZdZ Gdd eZ!Gd!d"eZ"Gd#d$e Z#y)%N)contextmanager)Tuple) ErrorFinderErrorFinderConfig)Rule)FlowScope) import_name import_from)classdeffuncdefif_stmt while_stmtfor_stmttry_stmt with_stmt)termr power)([{))]})+-~)*rr**/z//@)z<>|&^)=%z-><>==z>=z<=z<>!=z+=z-=z*=z@=z/=z%=z&=z|=z^=z<<=z>>=z**=z//=. _NEEDS_SPACE)dictorsetmakerargument) subscript subscriptlistsliceopcReZdZeZeZeZeZeZy)IndentationTypesN) __name__ __module__ __qualname__objectVERTICAL_BRACKETHANGING_BRACKET BACKSLASHSUITEIMPLICITW/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/parso/python/pep8.pyr2r2s&xhOI HExHr=r2c8eZdZejZddZdZdZy)IndentationNodeNc.|x|_|_||_yN)bracket_indentation indentationparent)selfconfigrDrEs r>__init__zIndentationNode.__init__(s6AA 4#3 r=c4d|jjzS)Nz<%s>) __class__r3)rFs r>__repr__zIndentationNode.__repr__,s////r=cj|}|/|jtjk(r|S|j}|.yyrB)typer2r:rE)rFns r>get_latest_suite_nodez%IndentationNode.get_latest_suite_node/s4 mvv)///A mr=rB) r3r4r5r2r:rMrHrKrOr<r=r>r@r@%s  ! !D0r=r@ceZdZddZy) BracketNodec||_|}|}|jtjk(r |j} t |dr$|j |jj k7rn=|j}t|tr||jk7rn |j}m|j}|j}d|jvsd|jvr>||jz|_||jz|_ tj|_nU|j d} d|jvrd|_ n d| z|_ |j|_tj"|_|ri|jtj$k(rL|j||jzk(r0|xj|jz c_ |j|_||_y)Nleaf    )rSrMr2r;rEhasattrlineget_previous_leaf isinstancerQrD get_next_leafprefix#closing_bracket_hanging_indentationrCr8end_posr7r:) rFrGrSrEin_suite_introducer previous_leafrNparent_indentation next_leafexpected_end_indents r>rHzBracketNode.__init__9s   66%.. .Aq&!m&8&8AFFKK&G);;=Ma-!&&1HA]]&&( 9## #ty/?/?'? (:<<(=D $1F4F4FFD (88DI#',,q/ v)))#' #&)<#< '+'7'7D $(99DI 6;;2B2H2H#H$$(:V=O=O(OO    2 2 2 '+'7'7D $ r=NF)r3r4r5rHr<r=r>rQrQ8s1r=rQc"eZdZdZfdZxZS) ImplicitNodezk Implicit indentation after keyword arguments, default arguments, annotations and dict values. ct||||tj|_|j }|dk(r4d|j vr%d|j vr|xjdz c_yyyy)N:rTrUrX)superrHr2r;rMr]r^rD)rFrGrSrErdrJs r>rHzImplicitNode.__init__rsl v.$-- &&( 3;4y'7'77D HXHXrhrhms$$r=rhc,eZdZejZddZy) BackslashNodeNc^|jd}|n|jd}d|jvrd|_n]|j|jk(r||jz|_n/d|jddzz|_n||jz|_|j|_||_y)N expr_stmtrWrXrV)search_ancestorchildrenrDr` start_posrCrE)rFrGrccontaining_leafspacingrErrequalss r>rHzBackslashNode.__init__~s#33K@  ''+Fv)))#' >>W%6%66'9Frprp{s  % %Dr=rpcr|jjdxr|jjdS)N__)value startswithendswith)names r>_is_magic_namers+ ::  & D4::+>+>t+DDr=ceZdZfdZefdZedZdZdZd dZ fdZ dZ d Z d Z d Zfd ZxZS)PEP8NormalizercRt||i|d|_d|_d|_d|_d|_d|_d|_d|_ t|jdx|_ |_ d|_d|jjvrd|_d|_yd |_d|_y) NTrF)rDrXspacesrWtabs)rkrH_previous_part_previous_leaf _on_newline_newline_count_wanted_newline_count_max_new_lines_in_prefix_new_statement_implicit_indentation_possibler@_config_indentation_tos_last_indentation_tos_in_suite_introducerrD_indentation_type_wrong_indentation_char)rFargskwargsrJs r>rHzPEP8Normalizer.__init__s $)&)""%)"()%".3+ DLLb 9 : :$)! $,,** *%-D "+/D (%+D "+.D (r=c#Kt||5|j|5dddddddy#1swYxYw#1swYyxYwwrB)rk visit_node _visit_node)rFnoderJs r>rzPEP8Normalizer.visit_nodesS W  % !!$'        s/AA;A AA AA Ac#0 K|j}|dvr>|j}t|dkDr|ddD]}|j|ddn|dk(rT|j}|jdk(rt d|j ddd Drx|j|d d nc|d k(rF|j D]5}|jd k(s|jdk(s#|j|dd7n|dk(r|j D]}|jdvrt|j d kDr+|j d}|j d}|jdk(sY|jdk(si|jdk(sy|j|ddnynw|dk(rr|j d} | j} | j} | jds6| jds%| s| | jdvr|j| dd|tvr|j} | j} | jdk(r| j j| }| j d|D]}|g}|jd k(r|j dd}d!}|D]}}|jd"k(r|sd#}|jdk(r!td$|jDrG|jtvst|trj|j|d%d&nn|t v}|t"v}|rd#|_n|d'k(r|j&jt(j*k(r|j&j|_t-|j.|j&j0|j.j0z|j&(|_n |rd#|_d|d'k(rL|j&jt(j4k(sJ|j&j|_d|_y|rKd!|_|j&jt(j8k(r|j&j|_yy|r"d!|_|d)vr|j;|_yyyw)*Nr rVizMultiple imports on one linelambdefrrc3:K|]}|jdk(yw)rN)rM.0rNs r> z-PEP8Normalizer._visit_node..s#5Y9:67VVv5E5Ysrsiz,Do not assign a lambda expression, use a defrkeywordexceptiz1Do not use bare except, specify exception instead comparison) atom_exprrrtrailerrrMiz'Do not compare types, use 'isinstance() file_inputrTrU rTrUi$zNo newline at end of file simple_stmtFstringTc32K|]}t|ywrB)rrs r>rz-PEP8Normalizer._visit_node..s#U!N1$5#Usiz&Module level import not at top of filesuiterE)r r )rMget_defined_nameslen add_issuerEanyrur|r[r^r~ _IMPORT_TYPESindexallr\r_IMPLICIT_INDENTATION_TYPES_SUITE_INTRODUCERSrrr2r9r@rrDrr:rr;_get_wanted_blank_lines_count)rFrtypnamesrrrchildratom endmarkerprevr^rmodulerrufound_docstringcimplicit_indentation_possible in_introducers r>rzPEP8Normalizer._visit_nodesPii - **,E5zA~!"1INDNN4.LMN I  I~~,5Y>G>P>PQVRTUVQV>W5Y2YtS*XY J  d::*u{{h/FNN5#/bc  d L  ::%;;u~~&*..+~~a(<<9,f1D JJ&0NN4.WX L  b)I..0D%%FOOD)&//$2Gdldjj@T.Ty#/JK - ++K ''F{{l*--k:#__Ve4E %wHzz]2#(>>#2#6&+O%!66X-o$*.66[0 ##Uq?R?R?T#U U$66]2jD6I$tS2Z[!!/2),/J(J%11 (,D % G^$$))-=-G-GG(,(=(=(D(D%$3 %%11DLL4L4LL,,%D ! +26D / '>((--1A1G1GG GG$($9$9$@$@D !)-D & *27D /$$))-=-F-FF(,(=(=(D(D%G (-D %---1-O-O-Q*.s&C RRBRR/R?LRcv|j|jvr!|j|dd|jzyy)NezIndentation contains TF)rr|rr)rFrxs r>_check_tabs_spacesz!PEP8Normalizer._check_tabs_spacess6  ' '7== 8 NN7C)@4CYCY)Y Zr=cj|jj}t|jdudzS)NrV)rrOintrE)rF suite_nodes r>rz,PEP8Normalizer._get_wanted_blank_lines_count!s1**@@B :$$,-11r=ct|j|j|_|j}|X|jdz }||kDr=|jdk7r.|s3|dk(rdnd}d|d|}|j |||d|_nd|_|s8|j }|jdz }|j} | dk(xr|jjd k(xs^| d k(xs2| d k(xr|jd k(xs| d k(xr|jd k7xr#|jjjd k7} | r||kr|j} | j} | jd k(r | j} | jt| jdk(| k7r$|dk(rdnd}d|d|}|j |||d|_d|_y)NrVrri.i-z expected z blank line, found r! decoratorclassasyncdef decoratedrr) maxrrrrMrrr|rEr]rrur) rFrxrS is_commentwanted blank_linescodemessageactualval needs_lines func_or_clsrs r>_reset_newlineszPEP8Normalizer._reset_newlines%s --t/B/B C %++  --1K # [(@!"(A+33D!;0GNN7D':15D.-1*779F22Q6F**Cs >t{{//;>=7NGg~G$*<*<*>%*GGe|F(;(;w(F=kk((--< v"kk #**::,!LLE>>#ejjG&;"<=L"(A+33D!6+GNN7D':,-D )r=ct|||jD]4}|jdk(rn#|j ||j |6|j ||j |||j|_|jdk(|_ |jdk(rB|jjtjk(r|jj|_|jdk(r$|jjtvrd|_n|jdk(rd|_|js|j!||d|_||_|jS)NrxnewlinerjFelifTr)rk visit_leaf _split_prefixrM _visit_partcreate_spacing_part_analyse_non_prefixrrrr2r9rEr|rrr_max_blank_linesr)rFrSpartrJs r>rzPEP8Normalizer.visit_leafXsA 4 &&( EDyyI%   T4#;#;#=t D  E   & tT*&*%:%:""ii94 99 !%%**.>.H.HH$($9$9$@$@D ! :: !1!15G!G(-D % ZZ6 !(,D %""  t ,$%D !"zzr=cx|j}|j}|dk(ry|dk(r4|jjdk(r|jj|_|j}|dk(r|j dr%|j dr|j |ddn|jrOtjd |sb|dk(s]|j d r|jd k(s=|j |d d n)tjd|s|j |dd|j||dn|dk(r|j|jkDr!|j |dd|jzn:|dvr6|jjjdk(r|j |dd|xjdz c_ |dk(r|jtjk7r,|jtj k7r|j |ddn|j"}|j$r6|jtj k(r||j&j"z }t)|j&||||j|_n|jrb|j}|jtjk(r4|j*jdk(r|jj|_|j-|s|j"}|dk(rU|j.} t1|t1| j"kDrn&| j"}| |_| |k(rn | j} H|j2ri|dk(r|r|j |dd nv||k7rpt1|j&j"d!|j4} |j |d"d#| zn*|d$vr |j6}n |j"}|j$rI||j9j"|j&j"zk(r|j |d%d&n||k7r|j-|s|jd'vr|d$vrG|jtj:k(r|j |d(d)n[|j |d*d+nFt1|t1|kr|jtj:k(r|j |d,d-n|jtjk(r|j |d.d/n|jtj<k(r|j |d0d1n|j |d2d3n|jtj:k(r|j |d4d5nW|jtj<k(r|j |d6d1n&|j |d7d8n|j?|||jA|||r|d9vr|dk7r|jjd:k7rv|tBvr3tE|j&||j|j$;|_n|jtj<k7sJ|jj|_n_|dN error_leaf,r,commentz###i z'Too many leading '#' for block comment.z#:? z#!)rVri z$Block comment should start with '# 'z#:? [^ ]iz%Inline comment should start with '# 'T)rri/zToo many blank lines (%s))rrri0z*Blank lines found after function decoratorrV backslashiz+The backslash is redundant between bracketsr#Trailing whitespacerXoz!Indentation is not a multiple of z])}z+Line with same indent as next logical blockr|z1Closing bracket does not match visual indentation{zCLosing bracket does not match indentation of opening bracket's linez2Continuation line under-indented for visual indentzz2Continuation line missing indentation or outdentedxxxyz3Continuation line under-indented for hanging indentz1Continuation line over-indented for visual indent~z2Continuation line over-indented for hanging indentz()[]{} error_node)rEra)r%rj)rrbom)'r|rMrErr}lstriprrrematchrvrrrr2r9r:rDrrrprrrrrrrCrOr7r;_check_spacing_check_line_length_OPENING_BRACKETSrQrrrh_previous_spacing) rFrrxrSr|type_rrDshould_be_indentationrNss r>rzPEP8Normalizer._visit_partzs7   L  CtS*VW   1 $  K yy,66699 0 6 66NN4.[\"&"2"2K00TYYBRBXBX5X#t||'?'?? ,9 ##44 -D)  !--Kyy,666++00I=(,(=(=(D(D%**73(,(8(8%I%22A{+c!--.@@!01 -5629!HH&& )& NN7C9NO$(=='*4<<+C+C'DdF\F\]tS2UXY2YZ~040H0H-040@0@-00[ 668DD"ll66767tS2_`$(==#66w?DJJ 4E5$~#'990@0Q0Q#Q$(NN(,(+([%& %)NN(,(+)P%&$'{#3c:O6P#P'+yy4D4U4U'U(,,0,/,`)* *.6F6P6P)P(,,0,/,`)* *.6F6O6O)O(,tS%(H(,,0,/,a)* (,yy4D4U4U'U(,,0,/,_)* *.6F6O6O)O(,tS%(H(,,0,/,`)*   g . g. Uh&5L+@KK$$ 4))(3LL$00(,(A(A)% yy$4$=$====(,(=(=(D(D% j T%H%HKK$$(CC**K$0 d4+@+@%D !!$CC"!(r=c |jdk(r|jddz}n|jd}||jjkDr|jd|jjkrd}|jdk(rN|j ddj }t|dk(r#|jdt|dz dkrd}|r/|j|dd |d |jjd yyyy) NrrVTrrHFizLine too long (z > z characters)) rMrvr`rmax_charactersr|splitrr)rFrrx last_columnreportsplitteds r>rz!PEP8Normalizer._check_line_length's 99 #..+a/K,,q/K 44 4%%a(DLL,G,GGFyyI%::ab>//1x=A%!\\!_s8A;/??2E"F $,,"="=?H 5r=cZ fd} fd}|j j}||jdk(s|jdk(ry|j}d vrj|ddy|dk(r7t j j krj|dd yy|d k(r ||d d yt d kDrj|ddy|tvrd|jz}||d|y|tvrd|jz}||d|y|dvs!|dk(r6|jjtvrd|jz}||d|y|dk(r|jjtvry|dvr ||ddy|dk(ry|dvr|jjtvs |dvr|jjtvry|tvr|jjdk(ry|dk(r|jjdk(ry|tvs|tvr|dk(r|jjdvs|dk(rg|jjdvrO|dk(r |j}n |j}|jd k(r|jr ||d!d"y||d#d$y|tvs|tvr ||d%d&y|d'k(s|d'k(r ||d(d)yd*} ||d+| y|d,k(s|jd,k(r ||d-d.yj } |t"vrT | jk7rEd/j$j&vr-d0j$j&vrd1}j|d2| r7|t"vr.|t"vr%d*} |tvrd|jz}||d3|yyyyy)4Nc(rj|SyrBrrrFrs r> add_if_spacesz4PEP8Normalizer._check_spacing..add_if_spaces?s%t~~t,,r=c(sj|SyrBrrs r>add_not_spacesz5PEP8Normalizer._check_spacing..add_not_spacesCs%t~~t,,r=rrWzUsed tab to separate tokensriz)At least two spaces before inline commentrrrrVzMultiple spaces usedzWhitespace after '%s'zWhitespace before '%s')r;rj)rrrjzmissing whitespace after '%s')rrfactorr!rr%)r-paramrz(Expected spaces around annotation equalsz3Unexpected spaces around keyword / parameter equalsz3Missing whitespace around bitwise or shift operatorr&z)Missing whitespace around modulo operatorz!Missing whitespace between tokensriz!Missing whitespace around keywordrTrUz>Whitespace before operator doesn't match with whitespace after)r|rrMrrrspaces_before_commentr_CLOSING_BRACKETSrE_POSSIBLE_SLICE_PARENTS_NON_STAR_TYPES_FACTORr+ annotation_BITWISE_OPERATORr _ALLOW_SPACErr^) rFrrxrrrrrr message_225 prev_spacingrs ` @r>rzPEP8Normalizer._check_spacing>s - -""   \ 9TYY,=V   6> NN7C)F G i 6{T\\???w-XY@ i  '3(= > [1_ NN7C)? @((1DJJ>gsG4**2TZZ?gsG4#ts{ ((0GG2TZZ?gsG4!1!15L!L(w-LM$)9)9)P{* ((?T[[%5%5%A!1!1[!@%)=3;4;;#3#37L#L3;4;;+;+;?T+Ts{ $  $ zzW,1A1A&w5_`%#Q ..$:K2K"M S[DCK"7C1\]"EK"7C=)#tyyI'=w-PQ#55 <'Fl6H6H,H (;(;(B(BB (;(;(B(BB^GNN7C9d,64|;S"EK00":TZZ"G%gsG<1 rz"PEP8Normalizer._analyse_non_prefixsbii &=TZZ?:!!#L;;##w.4;;3C3Ct3KNN4g .AB[[%%3 8H8HD8PNN4g .BC**3+0EtL$ZZ3 $++e}5$++:J:Ji:W ..0 >>Y.{{''94y#7^_y#7`a /;X5ZZ3 !!#((,DDtS*KLtS*WX ZZ< 'J''--d3E&&uqy1D'' 2Ee 99 )TYY&-@zzV+"StS':'88#EtS': ZZ< 'J,.:3D3D3I3IZ3W::%NN4.VWNN4.[\ 4X. H_$TZZ%:%:%rzPEP8Normalizer.add_issues    *""22<@L""''<7    - 9  :  G dD' 2 +t .tT7 Cr=rf)r3r4r5rHrrrrrrrrrrrrrmrns@r>rrsq/, cRcRJ 21 f Dk)Z.]=~8Gt D Dr=rceZdZeZ ddZy)PEP8NormalizerConfigNc`||_||}||_d|_d|_||_||_y)NrF)rDhanging_indentationr_break_after_binaryrr$)rFrDrHrr$s r>rHzPEP8NormalizerConfig.__init__s>&  &"- #6 350"',%:"r=)z NOr)r3r4r5rnormalizer_classrHr<r=r>rFrFs%AE:; ;r=rFceZdZdZdZdZy)BlankLineAtEndir;c |jdk\S)Nr)r)rFrSs r>is_issuezBlankLineAtEnd.is_issues""a''r=N)r3r4r5rrrOr<r=r>rMrMs D)G(r=rM)$r contextlibrtypingrparso.python.errorsrrparso.normalizerrparso.python.treerr rrr'rr%r(r+r*r+str__annotations__rr&r2r6r@rQrhrprrrFrMr<r=r>rWs %>!)/ ;2!! 2 -! eCHo  !! <Cf&2/2j $; $O2EL D[L D^;,;&(T(r=