
    Mh                     L    d dl Zd dlZd Zd Zd Zedk    r e             dS dS )    Nc                    t          |           }d|z  }d|z  }|D ].\  }}|                                                    |          r n/|D ].\  }}|                                                    |          r n/|dz   |fS )Nz#--! %s-startz#--! %s-end   )	enumeratestrip
startswithendswith)linestagsrclines	start_tagend_tagstart_indexline	end_indexs           R/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pycparser/ply/ygen.pyget_source_ranger      s    H#%Ic!G%  T::<<""9-- 	E	 $  	4::<<  )) 	E	 !OY''    c                     g }d}d|z  }| D ]D}|                                                     |          r| }-|r|                    |           E|S )NTz#--! %s)r   r   append)r	   r
   filtered_linesincludetag_textr   s         r   filter_sectionr      sn    NG3H ( (::<<""8,, 	(!kGG 	(!!$'''r   c                  r   t           j                            t                    } t	          j        t           j                            | d          t           j                            | d                     t          t           j                            | d          d          5 }|                                }d d d            n# 1 swxY w Y   t          |d          \  }}t          |d          \  }}t          |d          \  }}|||         }	t          |	d          }
t          |
d          }||||<   |
|||<   d	 |D             }t          t           j                            | d          d
          5 }|                    |           d d d            n# 1 swxY w Y   t          d           d S )Nzyacc.pyzyacc.py.bakr
parsedebugparseoptzparseopt-notrackDEBUGTRACKINGc                 <    g | ]}|                                 d z   S )
)rstrip).0r   s     r   
<listcomp>zmain.<locals>.<listcomp>>   s%    222DT[[]]4222r   wzUpdated yacc.py)ospathdirname__file__shutilcopy2joinopen	readlinesr   r   
writelinesprint)r(   fr	   parse_start	parse_endparseopt_startparseopt_endparseopt_notrack_startparseopt_notrack_end
orig_linesparseopt_linesparseopt_notrack_liness               r   mainr;   '   s   gooh''G
Lgy1127<<3W3WXXX	bgll7I..	4	4                .e\BBK#3E:#F#F NL3CEK]3^3^00 {9,-J $J88N ,NJGG :PE
 !5
56)7E.
%&22E222E	bgll7I..	4	4 	U               

s$   $CC	C	;FF!$F!__main__)os.pathr&   r*   r   r   r;   __name__ r   r   <module>r@      sj     ( ( (	 	 	  : zDFFFFF r   