
    #wg                         d dl Z 	 d dl mZ dZd dlZd dlZd dlZej                  dk\  reZ	nd dl
mZmZ d Zd Zd	 Zd
 Zedk(  r e        yy# e$ r dZY Iw xY w)    N)operatorTF)   r   )filterzipc                  x     t         rt        j                    S t               dk(  r d   fd}|S  fd}|S )N   r   c                     |    S N )objitems    ^/home/mcse/projects/flask/flask-venv/lib/python3.12/site-packages/../../../bin/whisper-fill.pygzitemgetter.<locals>.g+   s    4y     c                 .     t         fdD              S )Nc              3   (   K   | ]	  }|     y wr
   r   ).0r   r   s     r   	<genexpr>z(itemgetter.<locals>.g.<locals>.<genexpr>0   s     94SY9s   )tuple)r   itemss   `r   r   zitemgetter.<locals>.g/   s    95999r   )HAS_OPERATORr   
itemgetterlen)r   r   r   s   ` @r   r   r   $   sA    ""E**u:?8D! :r   c                 *   t        j                  |       }|d   }|j                  t        d             t	        t        j
                               |d   z
  }||k  r||k  ry |D ]  }t        j
                         |d   z
  }||k  r#|}	||kD  r|n|}
t        j                  | |
|	      \  }}|\  }}}t        t        d t        t        |||      |                  }|j                  d d       t        j                  ||       |
}||k(  s y  y )	Narchives	retentionkeymaxRetentionc                     | d   d uS )Nr   r   )pointss    r   <lambda>zfill.<locals>.<lambda>R   s    6!9D0 r   c                     | d   S )Nr   r   )ps    r   r"   zfill.<locals>.<lambda>U   s
    1 r   T)r   reverse)whisperinfosortr   inttimefetchlistr   r   xrangeupdate_many)srcdsttstarttstop	srcHeadersrcArchivessrcTimearchivertime	untilTimefromTimetimeInfovaluesstartendarchive_steppointsToWrites                    r   fillr@   4   s!    S!IJ'KK01 $))+>!::GEGO  		gk22E>	!FN5$]]3)D6%-"\V0uc<0&9; < 	~t<C/ U?-r   c                    t        j                  |      }|d   }t        |d       }|D ]  }t        j                         |d   z
  }||k\  r#t        j                  |||      \  }}|\  }	}
}d }|D ]L  }|s|s|	}n>|r!|r|	|z
  |d   kD  rt        | |||z
  |	       d }n|r|	|
|z
  k(  rt        | |||z
  |	       |	|z  }	N |} y )Nr   c                     | d   S )Nr   r   )ts    r   r"   zfill_archives.<locals>.<lambda>b   s
    an r   r   r   secondsPerPoint)r&   r'   sortedr*   r+   r@   )r/   r0   	startFromheaderr   r6   r9   r:   r;   r<   r=   stepgapstartvs                 r   fill_archivesrK   _   s    \\#Fj!Hh$<=H 99;!55y $]]3)D6%T 	AX xH$0A(BBc8d?E:esTz1S#x$6TME	 	+r   c                     t        j                  dd      } | j                  dddd       | j                         \  }}t	        |      d	k7  r%| j                          t        j                  d
       |j                  du rt        j                  rdt        _        |d   }|d
   }t        j                         }t        |||       y )Nz%prog [--lock] src dstz'copies data from src in dst, if missing)usagedescriptionz--lockzLock whisper filesF
store_true)helpdefaultaction   r   Tr   )optparseOptionParser
add_option
parse_argsr   
print_helpsysexitlockr&   CAN_LOCKLOCKr*   rK   )option_parseroptionsargsr/   r0   rF   s         r   mainra   |   s    ))&=?M +l  , $..0OWd
4yA~  "||t 0 0
q'C
q'C		I#sI&r   __main__)r&   r   r   ImportErrorr*   rY   rT   version_inforanger-   future_builtinsr   r   r   r@   rK   ra   __name__r   r   r   <module>rh      sx   $  L  
 vF+ (V:'. zF y  Ls   A AA