
    Lpjr                       % S SK Jr  S SKJrJr  S SKJrJr  S SK	J
r
JrJr  S SKJr  \(       a2  S SKJrJr  S SKJr  S SKJs  Jr  S SKJrJr  S S	KJr  S S
KJr  S SKJ r   O
 S SKJs  Jr  S$S jr"      S%S jr#S&S jr$S'S jr%\RL                  RN                  r'\RP                  RN                  r)0 \'RT                  S_\'RV                  S_\'RX                  S_\'RZ                  S_\'R\                  S_\'R^                  S_\'R`                  S_\'Rb                  S_\'Rd                  S_\'Rf                  S_\'Rh                  S_\'Rj                  S_\'Rl                  S_\'Rn                  S_\'Rp                  S_\'Rr                  S_\)Rp                  S_\)Rr                  S0Er:S \;S!'   \'Rx                  \'Rz                  \'R|                  \'R~                  \'R                  \'R                  4rBS(S" jrCS)S# jrg! \! a    S SKr GNf = f)*    )annotations)TYPE_CHECKINGAny)make_group_by_kwargsselect_columns_by_name)ImplementationVersionisinstance_or_issubclass)get_pyarrow)MappingSequenceN)DaskLazyFrame
Incomplete)DaskExpr)DType)	IntoDTypec          	         / nU Hj  nU" U 5      nUR                  U 5      n[        U5      [        U5      :w  a  SU S[        U5       S3n[        U5      eUR                  [	        XTSS95        Ml     U$ )NzInternal error: got aliases z, but only got z resultsF)strict)_evaluate_aliaseslenAssertionErrorextendzip)dfexprsnative_resultsexprnative_series_listaliasesmsgs          P/var/www/html/pdf-tiff/venv/lib/python3.13/site-packages/narwhals/_dask/utils.pyevaluate_exprsr"      s    24N!"X((,w<31220	M_I`HaaijC %%c'eLM      c                    U Vs/ s H@  n[        U[        R                  5      (       a  UOU R                  R	                  US9S   PMB     sn$ s  snf )N)_tmpr%   )
isinstancedxSeries_native_frameassign)r   seriesss      r!   align_series_full_broadcastr-   )   sW    
 A 299%%2+;+;+B+B+B+J6+RR  s   AAc                    U R                   nU R                  " S0 US0D6n[        UR                  " S0 XU   R                  SS9S-
  0D6U/UQ[        R
                  5      $ )N   blelloch)method )columnsr*   r   cumsumr   DASK)framenameoriginal_colsr   s       r!   add_row_indexr9   2   sg    MMM\\.T1I.B!
		CTd8??*?=ABC	 r#   c                    [         R                  R                  U R                  UR                  5      (       d  Sn[	        U5      eg )NzOObjects are not co-aligned, so this operation is not supported for Dask backend)r'   r   are_co_aligned_exprRuntimeError)lhsrhsr    s      r!   validate_comparandr@   <   s9    77!!#))SYY77 `3 8r#   float64float32float16boolcategoryzdate32[day][pyarrow]int8int16int32int64uint8uint16uint32uint64zdatetime64[us]ztimedelta64[ns]zMapping[type[DType], str]NW_TO_DASK_DTYPESc                   UR                   nU R                  5       n[        R                  U5      =n(       a  U$ [	        XR
                  5      (       a6  [        R                  R                  5       S:  a  [        5       (       a  S$ S$ g[	        XR                  5      (       ae  U[        R                  L a  Sn[        U5      e[        XR                  5      (       a  SS KnUR!                  U R"                  SS9$ S	n[%        U5      e['        U[(        5      (       a  S
UR*                   S3n[        U5      eSU  3n[-        U5      e)N)   r   r   zstring[pyarrow]zstring[python]objectz9Converting to Enum is not supported in narwhals.stable.v1r   T)orderedz9Can not cast / initialize Enum without categories presentzConverting to z! dtype is not supported for Dask.zUnknown dtype: )dtypes	base_typerN   getr
   Stringr   PANDAS_backend_versionr   Enumr	   V1NotImplementedErrorr&   pandasCategoricalDtype
categories
ValueError
issubclassUNSUPPORTED_DTYPES__name__r   )dtypeversionrS   rT   	dask_typer    pds          r!   narwhals_to_native_dtyperg   l   s   ^^F!I%)))44y4}}55  113y@(3$K;KK{{33gjj MC%c**e[[))
 &&u'7'7&FFIo)/00y1122ST!#&&E7
#C

r#   c                :    [        U S9nUR                  S5        U$ )N)drop_null_keysas_index)pd_make_group_by_kwargspop)ri   kwargss     r!   r   r      s    $NCF
JJzMr#   )r   r   r   r   returnzlist[tuple[str, dx.Series]])r   r   r+   zdx.Series | objectrn   zSequence[dx.Series])r6   dd.DataFramer7   strrn   ro   )r>   	dx.Seriesr?   rq   rn   None)rc   r   rd   r	   rn   r   )ri   rD   rn   zdict[str, bool])D
__future__r   typingr   r   narwhals._pandas_like.utilsr   rk   r   narwhals._utilsr   r	   r
   narwhals.dependenciesr   collections.abcr   r   dask.dataframe	dataframedddask.dataframe.dask_expr	dask_exprr'   narwhals._dask.dataframer   r   narwhals._dask.exprr   narwhals.dtypesr   narwhals.typingr   ModuleNotFoundErrorr"   r-   r9   r@   MAINrS   rZ   	dtypes_v1Float64Float32Float16BooleanCategoricalDateInt8Int16Int32Int64UInt8UInt16UInt32UInt64DatetimeDurationrN   __annotations__ListStructArrayTimeBinaryDecimalra   rg   r2   r#   r!   <module>r      s   " % N M -1))B,%)--
	 2   
		JJ	0
NNI0
NNI0 NNI0 NNF	0
 
0 KK'0 KK0 LL'0 LL'0 LL'0 LL'0 MM80 MM80 MM80 OO%0  OO&!0" (#0$ )%0 , * KK
MM
LL
KK
MM
NN :a  s   "	G2 2
H ?H 