
    H&h                     (    d dl mZ d Zd Zd Zd Zy)    reducec                     | y t        |       t        ||      vr&t        dt        |      z   dz   t        |      z         y )Nzvalue must be between z and )intrange
ValueErrorstr)xstartstops      ]/mounts/lovelace/software/anaconda3/envs/py312/lib/python3.12/site-packages/pytaxize/utils.pyassert_range_numericr      sE    y
1vU5$''1CJ>H3t9TUU (    c                     t        | t              rt               }|j                  |        |} t        | t              st	        d      | S )Nz'x' must be of class list)
isinstancer	   listappend	TypeError)r
   nametmps     r   str2listr      s?    !S&qa344Hr   c                     t        d |       S )Nc                     | |z   S )N )r
   ys     r   <lambda>zflatten.<locals>.<lambda>   s
    q1u r   r   )ls    r   flattenr      s    $a((r   c                     t        | t              st        d      t        |t              st        d      t        t	        ||             S )Nz'vals' must be of class listz'names' must be of class list)r   r   r   dictzip)valsnamess     r   
lists2dictr#      s@    dD!677eT"788E4 !!r   N)	functoolsr   r   r   r   r#   r   r   r   <module>r%      s    V)"r   