§
    ¡”j  ã                   ó0   — d dl mZmZ  G d„ d¦  «        ZdS )é    )ÚsqlÚtokensc                   ó*   — e Zd ZdZd„ Zd„ Zd„ Zd„ ZdS )ÚStatementSplitterz1Filter that split stream at individual statementsc                 ó.   — |                       ¦   «          d S ©N)Ú_reset©Úselfs    úq/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/sqlparse/engine/statement_splitter.pyÚ__init__zStatementSplitter.__init__   s   € Ø�Š‰Œˆˆˆó    c                 óv   — d| _         d| _        d| _        d| _        d| _        d| _        g | _        d| _        dS )z/Set the filter attributes to its default valuesFr   N)Ú_in_declareÚ_in_caseÚ
_is_createÚ_begin_depthÚ_seen_beginÚ
consume_wsr   Úlevelr
   s    r   r	   zStatementSplitter._reset   sA   € à ˆÔØˆŒØˆŒØˆÔØ ˆÔàˆŒØˆŒØˆŒ
ˆ
ˆ
r   c                 óò  — |t           j        u r|dk    rdS |t           j        u r|dk    rdS |t           j        vrdS |                     ¦   «         }|t           j        j        u r|                     d¦  «        r	d| _        dS |dk    r| j        r| j        dk    r	d| _        dS |d	k    r"| xj        dz  c_        d| _	        | j        rdS dS | j	        rF|t           j        u s|t           j
        u r*|d
v r&t          d| j        dz
  ¦  «        | _        d| _	        dS |dk    r.| j        st          d| j        dz
  ¦  «        | _        nd| _        dS |dv r!| j        r| j        dk    r|dk    rd| _        dS |dv rdS dS )z<Get the new split level (increase, decrease or remain equal)ú(é   ú)éÿÿÿÿr   ÚCREATETÚDECLAREÚBEGIN)ÚTRANSACTIONÚWORKÚTRANÚDISTRIBUTEDÚDEFERREDÚ	IMMEDIATEÚ	EXCLUSIVEFÚEND)ÚIFÚFORÚWHILEÚCASEr*   )zEND IFzEND FORz	END WHILE)ÚTÚPunctuationÚKeywordÚupperÚDDLÚ
startswithr   r   r   r   ÚNameÚmaxr   )r   ÚttypeÚvalueÚunifieds       r   Ú_change_splitlevelz$StatementSplitter._change_splitlevel   sä  € ð •A”MÐ!Ð! e¨s¢l lØ�1Ø•a”mÐ#Ð#¨°ª¨Ø�2Ø�!œ)Ð#Ð#Ø�1ð
 —+’+‘-”-ˆð •A”I”MÐ!Ð! g×&8Ò&8¸Ñ&BÔ&BÐ!Ø"ˆDŒOØ�1ð �iÒÐ D¤OÐ¸Ô8IÈQÒ8NÐ8NØ#ˆDÔØ�1à�gÒÐØÐÔ Ñ"ÐÔØ#ˆDÔØŒð à�qØ�1ð Ôð 	Ø�!œ)Ð#Ð# uµ´  Øð 6ð 6ð 6õ !$ A tÔ'8¸1Ñ'<Ñ =Ô =ˆDÔØ$ˆDÔØ�1ð �eÒÐØ”=ð &Ý$'¨¨4Ô+<¸qÑ+@Ñ$AÔ$A�Ô!Ð!à %�”Ø�2àÐ5Ð5Ð5Ø”Oð 6Ø(,Ô(9¸AÒ(=Ð(=Ø˜&Ò Ð Ø $�”Ø�1àÐ8Ð8Ð8Ø�2ð ˆqr   c              #   óè  K  — t           j        t           j        j        f}|D �]Š\  }}| j        r3||vr/t          j        | j        ¦  «        V — |                      ¦   «          | xj	        |  
                    ||¦  «        z  c_	        | j                             t          j        ||¦  «        ¦  «         |t           j        u rO|dk    rI| j        rt          d| j        dz
  ¦  «        | _        d| _        | j	        dk    r| j        dk    rd| _        Œî|t           j        u r'|                     ¦   «         d         dk    r	d| _        �Œ#|t           j        t           j        t           j        j        t           j        j        fvr-|t           j        u r|                     ¦   «         dk    sd| _        �ŒŒ| j        r;t-          d„ | j        D ¦   «         ¦  «        st          j        | j        ¦  «        V — d	S d	S d	S )
zProcess the streamú;r   r   FTÚGOr   c              3   ó$   K  — | ]}|j         V — Œd S r   )Úis_whitespace)Ú.0Úts     r   ú	<genexpr>z,StatementSplitter.process.<locals>.<genexpr>�   s$   è è € Ð"HÐ"H°q 1¤?Ð"HÐ"HÐ"HÐ"HÐ"HÐ"Hr   N)r+   Ú
WhitespaceÚCommentÚSingler   r   Ú	Statementr   r	   r   r6   ÚappendÚTokenr,   r   r2   r   r-   ÚsplitÚNewlineÚ	Multiliner.   Úall)r   ÚstreamÚ	EOS_TTYPEr3   r4   s        r   ÚprocesszStatementSplitter.process_   sô  è è € å”L¥!¤)Ô"2Ð2ˆ	ð #ð (	)ñ (	)‰LˆE�5ð
 Œð  5°	Ð#9Ð#9Ý”m D¤KÑ0Ô0Ð0Ð0Ð0ð —’‘”�ð ˆJŒJ˜$×1Ò1°%¸Ñ?Ô?Ñ?ˆJŒJð ŒK×Ò�sœy¨°Ñ6Ô6Ñ7Ô7Ð7ð �œÐ%Ð%¨%°3ª,¨,ð Ô#ð FÝ(+¨A¨tÔ/@À1Ñ/DÑ(EÔ(E�DÔ%Ø#(�Ô à”: ’?�? tÔ'8¸AÒ'=Ð'=Ø&*�D”OøØ�!œ)Ð#Ð#¨¯ª©¬°aÔ(8¸DÒ(@Ð(@Ø"&�”‘Ø¥¤­a¬i½¼Ô9IÝ !¤	Ô 3ð 5ð 5ð 5à ¥A¤IÐ-Ð-°%·+²+±-´-À7Ò2JÐ2Jð $)�Ô ùð Œ;ð 	-�sÐ"HÐ"H¸D¼KÐ"HÑ"HÔ"HÑHÔHð 	-Ý”- ¤Ñ,Ô,Ð,Ð,Ð,Ð,Ð,ð	-ð 	-ð 	-ð 	-r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r	   r6   rK   © r   r   r   r      sZ   € € € € € Ø;Ð;ðð ð ð
ð 
ð 
ð@ð @ð @ðD1-ð 1-ð 1-ð 1-ð 1-r   r   N)Úsqlparser   r   r+   r   rP   r   r   ú<module>rR      s[   ðð &Ð %Ð %Ð %Ð %Ð %Ð %Ð %ðE-ð E-ð E-ð E-ð E-ñ E-ô E-ð E-ð E-ð E-r   