
    Owg                    >    d dl mZ d dlmZ d dlZd dlmZ ddZd Z	y)    )annotations)reduceN)
get_optionc                z    t        | t        j                  t        f      r| j	                  t        d            } | S )z3
    If we have bytes, decode them to unicode.
    zdisplay.encoding)
isinstancenpbytes_bytesdecoder   )ss    U/var/www/horilla/myenv/lib/python3.12/site-packages/pandas/core/computation/common.pyensure_decodedr   
   s0     !bii'(HHZ 234H    c                    	 t        j                  |  S # t        $ r t        t         j                  |       cY S t        $ r ddlm} ddlm} t        |       }g g }}|D ]-  } ||      r|j                  |       |j                  |       / |rK	 t        j                  | }n)# t        $ r t        t         j                  |       }Y nw xY w |||gz         cY S  ||      cY S w xY w)zc
    Wrapper around numpy.result_type which overcomes the NPY_MAXARGS (32)
    argument limit.
    r   )find_common_type)is_extension_array_dtype)r   result_type
ValueErrorr   	TypeErrorpandas.core.dtypes.castr   pandas.core.dtypes.commonr   listappend)arrays_and_dtypesr   r   arr_and_dtypes	ea_dtypesnon_ea_dtypesarr_or_dtypenp_dtypes           r   result_type_manyr       s    
+~~011 9bnn&788 +<F/0#%r=	* 	3L'5  .$$\2		3 E>>=9 E!"..2CDE#I
$:;;	**'+s?    #C&AC&B$#C&$#C
C&	C

C&C&%C&)returnstr)

__future__r   	functoolsr   numpyr   pandas._configr   r   r     r   r   <module>r(      s    "   %+r   