
    =OgA                         	 g d Z ddlZ	 ddlmZ n# e$ r d ZY nw xY w G d de          ZeZg fdZg fdZ	d	 Z
d
 Zd Zd Zedk    r+ddlZ e eej        dd         dddg                     dS dS ))GetoptErrorerrorgetopt
gnu_getopt    N)gettextc                     | S N )ss    /usr/lib64/python3.11/getopt.py_r   )   s    Qh    c                   $    e Zd ZdZdZddZd ZdS )r    c                 Z    || _         || _        t                              | ||           d S r	   )msgopt	Exception__init__)selfr   r   s      r   r   zGetoptError.__init__.   s.    4c*****r   c                     | j         S r	   )r   )r   s    r   __str__zGetoptError.__str__3   s	    xr   N)r   )__name__
__module____qualname__r   r   r   r   r
   r   r   r   r   +   sA        
C
C+ + + +
    r   r   c                 ,   	 g }t          |          t          d          k    r|g}nt          |          }| r| d                             d          r| d         dk    r| d         dk    r| dd          } n| d                             d          r,t          || d         dd          || dd                    \  }} n+t	          || d         dd          || dd                    \  }} | r'| d                             d          r| d         dk    || fS )Nr   r   ---      )typelist
startswithdo_longs	do_shorts)args	shortoptslongoptsoptss       r   r   r   8   s5   4 DH~~b!!:>>
 K47%%c** KtAw#~~7d??8D7d## 	K!$QXtABBxHHJD$$"4aiabbJJJD$  K47%%c** KtAw#~~ :r   c                    	 g }g }t          |t                    r|g}nt          |          }|                    d          r|dd          }d}n$t          j                            d          rd}nd}| r| d         dk    r|| dd          z  }n| d         d d         dk    r,t          || d         dd          || dd                    \  }} ny| d         d d         d	k    r8| d         d	k    r,t          || d         dd          || dd                    \  }} n-|r|| z  }n'|	                    | d                    | dd          } | ||fS )
N+r   TPOSIXLY_CORRECTFr   r   r    r   )

isinstancestrr"   r#   osenvirongetr$   r%   append)r&   r'   r(   r)   	prog_argsall_options_firsts         r   r   r   c   s    DI(C   ":>> C   "abbM	 	)	*	* " !
  7d??abb!I72A2;$!$QXtABBxHHJD$$!WRaR[CDGsNN"4aiabbJJJD$$   T!	  a)))ABBx   " ?r   c                    	 |                     d          }|d |         ||dz   d          }}n# t          $ r d }Y nw xY wt          ||          \  }}|r7|4|s t          t	          d          |z  |          |d         |dd          }}n"| t          t	          d          |z  |          |                     d|z   |pdf           | |fS )N=r   zoption --%s requires argumentr   z%option --%s must not have an argumentr   r   )index
ValueErrorlong_has_argsr   r   r2   )r)   r   r(   r&   ioptarghas_args          r   r$   r$      s
   )IIcNN "1"gs1Q344yV    
 !h//LGS Q> Q!!$C"D"Ds"JCPPP7DHDF		!CDDsJCPPPKKV\r*+++:s   / >>c                 J     fd|D             }|s t          t          d           z              |v rd fS  dz   |v rd fS t          |          dk    r t          t          d           z             |d         }|                    d          }|r
|d d	         }||fS )
Nc                 >    g | ]}|                               |S r
   )r#   ).0or   s     r   
<listcomp>z!long_has_args.<locals>.<listcomp>   s*    >>>1ALL,=,=>Q>>>r   zoption --%s not recognizedFr6   Tr   zoption --%s not a unique prefixr   )r   r   lenendswith)r   r(   possibilitiesunique_matchr<   s   `    r   r9   r9      s    >>>>>>>M F!899C?EEE
mcz	sm	#	#Sy
=A !=>>DcJJJ #L##C((G )#CRC(L  r   c                    |dk    r|d         |dd          }}t          ||          r?|dk    r4|s t          t          d          |z  |          |d         |dd          }}|d}}nd}|                     d|z   |f           |dk    | |fS )Nr   r   r   zoption -%s requires argumentr   )short_has_argr   r   r2   )r)   	optstringr'   r&   r   r;   s         r   r%   r%      s    
r//"1y}Yi(( 	B +%a(F&G&G#&M&)+ + +"&q'484	 )2IFFFS3Y'((( r// :r   c                     t          t          |                    D ]3}| ||         cxk    rdk    rn |                    d|dz             c S 4t          t	          d          | z  |           )N:r   zoption -%s not recognized)rangerC   r#   r   r   )r   r'   r:   s      r   rH   rH      s    3y>>"" 2 2)A,%%%%#%%%%%''QqS11111 &
a344s:C
@
@@r   __main__r   za:bzalpha=beta)__all__r/   r   r   ImportErrorr   r   r   r   r   r$   r9   r%   rH   r   sysprintargvr
   r   r   <module>rT      sX  B 8
7
7 				$$$$$$$   	 	 	 	 	) 	 	 	 	') ) ) ) )V ,. 0 0 0 0d  ,! ! !*  A A A zJJJ	E&&!""ux&8
9
9::::: s    