Ë
    î%9j  ã                   ó(   — d dl mZmZ  G d„ d«      Zy)é    )ÚsqlÚtokensc                   ó(   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zy)ÚStatementSplitterz1Filter that split stream at individual statementsc                 ó$   — | j                  «        y ©N)Ú_reset©Úselfs    ú^/var/www/html/truck-me/venv/lib/python3.12/site-packages/sqlparse/engine/statement_splitter.pyÚ__init__zStatementSplitter.__init__   s   € Ø�‰�ó    c                 ót   — d| _         d| _        d| _        d| _        d| _        d| _        g | _        d| _        y)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   s=   € à ˆÔØˆŒØˆŒØˆÔØ ˆÔàˆŒØˆŒØˆ�
r   c                 óH  — |t         j                  u r|dk(  ry|t         j                  u r|dk(  ry|t         j                  vry|j                  «       }|t         j                  j                  u r|j                  d«      rd| _        y|dk(  r#| j                  r| j                  dk(  rd| _        y|d	k(  r*| xj                  dz  c_        d| _	        | j                  ryy| j                  rN|t         j                  u s|t         j                  u r*|d
v r&t        d| j                  dz
  «      | _        d| _	        y|dk(  r3| j                  st        d| j                  dz
  «      | _        yd| _        y|dv r(| j                  r| j                  dkD  r|dk(  rd| _        y|dv ryy)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‘MÑ! e¨s¢lØØ”a—m‘mÑ#¨°ªØØœ!Ÿ)™)Ñ#Øð
 —+‘+“-ˆð ”A—I‘I—M‘MÑ! g×&8Ñ&8¸Ô&BØ"ˆDŒOØð �iÒ D§O¢O¸×8IÑ8IÈQÒ8NØ#ˆDÔØà�gÒØ×Ò Ñ"ÕØ#ˆDÔØ�ŠàØð ×ÒØœ!Ÿ)™)Ñ# u´·±¡Øð 6ñ 6ô !$ A t×'8Ñ'8¸1Ñ'<Ó =ˆDÔØ$ˆDÔØð �eÒØ—=’=Ü$'¨¨4×+<Ñ+<¸qÑ+@Ó$A�Ô!ð ð !&�”ØàÐ5Ñ5Ø—O’O¨×(9Ñ(9¸AÒ(=Ø˜&Ò Ø $�”ØàÐ8Ñ8Øð r   c              #   ó†  K  — t         j                  t         j                  j                  f}|D �]Â  \  }}| j                  r5||vr1t        j                  | j                  «      –— | j                  «        | xj                  | j                  ||«      z  c_	        | j                  j                  t        j                  ||«      «       |t         j                  u r`|dk(  r[| j                  rt        d| j                   dz
  «      | _        d| _        | j                  dk  sŒô| j                   dk(  s�Œd| _        �Œ|t         j"                  u r|j%                  «       d   dk(  r	d| _        �Œ?|t         j                  t         j&                  t         j                  j                  t         j                  j(                  fvs�Œ•|t         j"                  u r|j+                  «       dk(  r�Œ¼d| _        �ŒÅ | j                  r?t-        d„ | j                  D «       «      s"t        j                  | j                  «      –— y	y	y	­w)
zProcess the streamú;r   r   FTÚGOr   c              3   ó4   K  — | ]  }|j                   –— Œ y ­wr   )Úis_whitespace)Ú.0Úts     r   ú	<genexpr>z,StatementSplitter.process.<locals>.<genexpr>�   s   è ø€ Ò"H°q 1§?¥?Ñ"Hùs   ‚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‘L¤!§)¡)×"2Ñ"2Ð2ˆ	ð #ó (	)‰LˆE�5ð
 �Š 5°	Ñ#9Ü—m‘m D§K¡KÓ0Ò0ð —‘”ð �JŠJ˜$×1Ñ1°%¸Ó?Ñ?�Jð �K‰K×ÑœsŸy™y¨°Ó6Ô7ð œŸ™Ñ%¨%°3ª,ð ×#Ò#Ü(+¨A¨t×/@Ñ/@À1Ñ/DÓ(E�DÔ%Ø#(�Ô à—:‘: “? t×'8Ñ'8¸AÔ'=Ø&*�D–OØœ!Ÿ)™)Ñ#¨¯©«°aÑ(8¸DÒ(@Ø"&�–Ø¤§¡¬a¯i©i¼¿¹×9IÑ9IÜ !§	¡	× 3Ñ 3ð 5ó 5à ¤A§I¡IÑ-°%·+±+³-À7Ô2Jð $)�Ö ðQ(	)ðV �;Š;œsÑ"H¸D¿K¹KÔ"HÔHÜ—-‘- §¡Ó,Ó,ð  Iˆ;ùs    ‚D IÄ#IÄ4BIÇ%IÇ+AIN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r	   r6   rK   © r   r   r   r      s   „ Ù;òò
ò@óD1-r   r   N)Úsqlparser   r   r+   r   rP   r   r   ú<module>rR      s   ð÷ &÷E-ò E-r   