
    js                     l    d dl mZmZ d dlmZ  ed          Zdeeegef         dee         defdZdS )	    )CallableIterable)TypeVarTfunctioniterablereturnc                 8   t          |          }|sd}t          |          t          |          dk    r|                                S dt          |          fg}d}|t          |          k     rs||         \  }}|dz   }|dk    r|                    ||z   ||z
  f           |dk    r|                    ||f           |||z   f||<   |dz  }|t          |          k     st          |          D ] \  }	}
 | ||	         ||
                   ||	<   !|d         S )z/Applies a reduction in a balanced tree pattern.z#reduce_balanced() of empty iterable   r         )list	TypeErrorlenpopappendreversed)r   r   valuesmsgstackioffsetlengthhalfidx_lidx_rs              b/home/longshao/multi-rider-rag/.venv/lib/python3.11/site-packages/polars/_utils/reduce_balanced.pyreduce_balancedr      s;   (^^F 3nn
6{{azz||VE	A
c%jj..q2A::LL&4-$7888A::LL&$(((FTM*a	Q c%jj.. ! ? ?u u>>u!9    N)collections.abcr   r   typingr   r   r    r    r   <module>r$      s    . . . . . . . .      GCLL h1vqy1  Xa[  Q            r    