
    Xh3                         d dl Z d dlmZ d dlmZmZmZ d dlmZ de	de
fdZde	de
fdZde	de
fd	Zde	de
fd
Zde	de
fdZdee	e	f   de	de	fdZy)    N)Dict)PERIOD_PREFIXTIME_PREFIXWEEK_PREFIX)OutOfDesignatorschreturnc                     | t         k(  S N)r   r   s    K/var/www/html/myenv/lib/python3.12/site-packages/isoduration/parser/util.py	is_periodr      s        c                     | t         k(  S r   )r   r   s    r   is_timer          r   c                     | t         k(  S r   )r   r   s    r   is_weekr      r   r   c                 @    t        t        j                  d|             S )Nz[+\-0-9.,eE])boolrematchr   s    r   	is_numberr      s    "-..r   c                 L    | j                         xr | j                         dk7  S )Ne)isalphalowerr   s    r   	is_letterr      s    ::<-BHHJ#--r   designatorstargetc                 p    	 	 | j                  d      \  }}||k(  r|S # t        $ r}t        |d }~ww xY w)NF)last)popitemKeyErrorr   )r   r    keyvalueexcs        r   parse_designatorr(      sN    
	,$,,%,8JC &=L   	,"+	,s     	505)r   typingr   isoduration.constantsr   r   r   isoduration.parser.exceptionsr   strr   r   r   r   r   r   r(    r   r   <module>r.      s    	  I I :# $     /# /$ /.# .$ .$sCx. # # r   