Ë
    z�h•C  ã                  óÖ  — U d dl mZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dlm
Z
 d d	lmZ d d
lmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlm Z  d dlm!Z! d dlm"Z" d dlm#Z# d dlm$Z$ d d lm%Z% er¯d d!l&m'Z' d d"l(m)Z) d d#l*Z+d d#l,Z-d d#l.Z/d d$l0m1Z1 d d%l0m2Z2 d d&l3m4Z4 d d'l3m5Z5 d d(l6m7Z7 d d)lm8Z8 d d*l9m:Z: d d+l;m<Z< d d,l=m>Z> d d-l=m?Z? d d.l=m@Z@ d d/l=mAZA d d0l=mBZB d d1l=mCZC d d2l=mDZD d d3l=mEZE d d4l=mFZF d d5l=mGZG d d6l=mHZH d d7l=mIZI d d8l=mJZJ d d9l=mKZK d d:lmLZL d d;lmMZM eZNd<eOd=<   g d>¢ZP ed?«      ZQd@ZRd<eOdA<    G dB„ dCedD   edEe	eSef   f   edF   ee   ee   ee
eeef   «	      ZT G dG„ dHee   ee   e
eef   «      ZU G dI„ dJeTeeef   eUeef   e
eeeef   «      ZVy#)Ké    )Úannotations)Úchain)ÚTYPE_CHECKING)ÚAny)ÚIterator)ÚLiteral)ÚMapping)ÚProtocol)ÚSequence)ÚSized)ÚTypeVar)Úoverload)ÚCompliantExprT_contra)ÚCompliantSeriesT)Ú
EagerExprT)ÚEagerSeriesT)ÚNativeFrameT)ÚNativeSeriesT)ÚArrowConvertible)ÚDictConvertible)Ú
FromNative)ÚNumpyConvertible)ÚVersion)Ú_StoresNative)Ú
deprecated)Úis_compliant_series)Úis_index_selector)Úis_range)Úis_sequence_like)Úis_sized_multi_index_selector)Úis_slice_index)Úis_slice_none)ÚBytesIO)ÚPathN)ÚSelf)Ú	TypeAlias)ÚCompliantGroupBy)ÚDataFrameGroupBy)ÚEagerNamespace)ÚIntoArrowTable)ÚDType)ÚSchema)ÚAsofJoinStrategy)ÚJoinStrategy)ÚLazyUniqueKeepStrategy)ÚMultiColSelector)ÚMultiIndexSelector)ÚPivotAgg)ÚSingleIndexSelector)ÚSizedMultiIndexSelector)ÚSizedMultiNameSelector)ÚSizeUnit)ÚUniqueKeepStrategy)Ú_2DArray)Ú_SliceIndex)Ú
_SliceName)ÚImplementation)Ú_FullContextr&   Ú
Incomplete)ÚCompliantDataFrameÚCompliantLazyFrameÚEagerDataFrameÚTú2dict[str, CompliantSeriesT] | dict[str, list[Any]]Ú_ToDictc                  ór  — e Zd ZU ded<   ded<   ded<   ded<   dDd	„ZdEd
„ZedFd„«       Ze	 	 	 	 	 	 	 	 dGd„«       ZedHd„«       Z	e	 	 	 	 	 	 	 	 dId„«       Z
dJd„Z	 	 	 	 dKd„ZdLd„ZdMd„ZdNd„ZedOd„«       ZedPd„«       ZedQd„«       ZedRd„«       ZdDd„Z	 	 	 	 	 	 dSd„ZdQd„ZdTd„ZdUd„ZdVd„ZdWd„ZdXd„ZdYd „ZdZd!„Z	 	 	 	 	 	 d[d"„Zd\d#„Z d]d$„Z!d^d%„Z"	 	 	 	 	 	 d_d&„Z#d`d'„Z$	 	 	 	 	 	 	 	 	 	 	 	 dad(„Z%	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dbd)„Z&dcd*„Z'	 	 	 	 	 	 	 	 	 	 	 	 	 	 ddd+„Z(ded,„Z)dfd-„Z*	 	 	 	 dgd.„Z+	 	 	 	 	 	 	 	 	 	 dhd/„Z,dMd0„Z-	 	 	 	 	 	 	 	 did1„Z.d\d2„Z/djd3„Z0dkd4„Z1dld5„Z2e3dmd6„«       Z4e3dnd7„«       Z4	 	 	 	 dod8„Z4d9d:œ	 	 	 	 	 	 	 dpd;„Z5	 	 	 	 	 	 	 	 	 	 dqd<„Z6dMd=„Z7drd>„Z8e3dsd?„«       Z9e3dtd@„«       Z9dudA„Z9dtdB„Z:dvdC„Z;y9)wr>   r   Ú_native_framer;   Ú_implementationútuple[int, ...]Ú_backend_versionr   Ú_versionc                 ó   — y ©N© ©Úselfs    ú[/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/narwhals/_compliant/dataframe.pyÚ__narwhals_dataframe__z)CompliantDataFrame.__narwhals_dataframe__\   ó   � ó    c                 ó   — y rK   rL   rM   s    rO   Ú__narwhals_namespace__z)CompliantDataFrame.__narwhals_namespace__]   rQ   rR   c               ó   — y rK   rL   ©ÚclsÚdataÚcontexts      rO   Ú
from_arrowzCompliantDataFrame.from_arrow^   s   € ØTWrR   c               ó   — y rK   rL   ©rW   rX   rY   Úschemas       rO   Ú	from_dictzCompliantDataFrame.from_dict`   ó   € ð rR   c               ó   — y rK   rL   rV   s      rO   Úfrom_nativezCompliantDataFrame.from_nativei   ó   € ØSVrR   c               ó   — y rK   rL   r\   s       rO   Ú
from_numpyzCompliantDataFrame.from_numpyk   r_   rR   c                ó   — y rK   rL   )rN   ÚdtypeÚcopys      rO   Ú	__array__zCompliantDataFrame.__array__t   rQ   rR   c                 ó   — y rK   rL   )rN   Úitems     rO   Ú__getitem__zCompliantDataFrame.__getitem__u   ó   € ð rR   c                 ó   — y©z)`select` where all args are column names.NrL   ©rN   Úcolumn_namess     rO   Úsimple_selectz CompliantDataFrame.simple_select|   ó   € àrR   c                ó    —  | j                   |Ž S )úk`select` where all args are aggregations or literals.

        (so, no broadcasting is necessary).
        )Úselect©rN   Úexprss     rO   Ú	aggregatezCompliantDataFrame.aggregate€   s   € ð ˆt�{‰{˜EÐ"Ð"rR   c                 ó   — y rK   rL   ©rN   Úversions     rO   Ú_with_versionz CompliantDataFrame._with_versionˆ   rQ   rR   c                ó   — | j                   S rK   ©rE   rM   s    rO   ÚnativezCompliantDataFrame.nativeŠ   ó   € à×!Ñ!Ð!rR   c                 ó   — y rK   rL   rM   s    rO   ÚcolumnszCompliantDataFrame.columnsŽ   ó   € Ø(+rR   c                 ó   — y rK   rL   rM   s    rO   r]   zCompliantDataFrame.schema�   ó   € Ø-0rR   c                 ó   — y rK   rL   rM   s    rO   ÚshapezCompliantDataFrame.shape’   rƒ   rR   c                 ó   — y rK   rL   rM   s    rO   ÚclonezCompliantDataFrame.clone”   rQ   rR   c                 ó   — y rK   rL   ©rN   ÚbackendÚkwargss      rO   ÚcollectzCompliantDataFrame.collect•   ó   € à,/rR   c                 ó   — y rK   rL   rM   s    rO   Úcollect_schemaz!CompliantDataFrame.collect_schema˜   rQ   rR   c                ó   — y rK   rL   ©rN   r‚   Ústricts      rO   ÚdropzCompliantDataFrame.drop™   rQ   rR   c                 ó   — y rK   rL   ©rN   Úsubsets     rO   Ú
drop_nullszCompliantDataFrame.drop_nullsš   rQ   rR   c                 ó   — y rK   rL   )rN   Úunits     rO   Úestimated_sizez!CompliantDataFrame.estimated_size›   rQ   rR   c                 ó   — y rK   rL   ©rN   r‚   s     rO   ÚexplodezCompliantDataFrame.explodeœ   rQ   rR   c                 ó   — y rK   rL   ©rN   Ú	predicates     rO   ÚfilterzCompliantDataFrame.filter�   rQ   rR   c                 ó   — y rK   rL   ©rN   ÚnÚoffsets      rO   Úgather_everyzCompliantDataFrame.gather_everyž   rQ   rR   c                 ó   — y rK   rL   ©rN   Únames     rO   Ú
get_columnzCompliantDataFrame.get_columnŸ   rQ   rR   c                ó   — y rK   rL   ©rN   ÚkeysÚdrop_null_keyss      rO   Úgroup_byzCompliantDataFrame.group_by    s   € ð
 '*rR   c                 ó   — y rK   rL   ©rN   r¦   s     rO   ÚheadzCompliantDataFrame.head¦   rQ   rR   c                 ó   — y rK   rL   )rN   ÚrowÚcolumns      rO   rj   zCompliantDataFrame.item§   rQ   rR   c                 ó   — y rK   rL   rM   s    rO   Úiter_columnszCompliantDataFrame.iter_columns¨   rQ   rR   c                ó   — y rK   rL   )rN   ÚnamedÚbuffer_sizes      rO   Ú	iter_rowszCompliantDataFrame.iter_rows©   ó   € àBErR   c                 ó   — y rK   rL   rM   s    rO   Ú	is_uniquezCompliantDataFrame.is_unique¬   rQ   rR   c                ó   — y rK   rL   ©rN   ÚotherÚhowÚleft_onÚright_onÚsuffixs         rO   ÚjoinzCompliantDataFrame.join­   r_   rR   c                ó   — y rK   rL   ©rN   rÃ   rÅ   rÆ   Úby_leftÚby_rightÚstrategyrÇ   s           rO   Ú	join_asofzCompliantDataFrame.join_asof¶   ó   € ð rR   c                ó   — y rK   rL   )rN   rŒ   s     rO   ÚlazyzCompliantDataFrame.lazyÁ   rQ   rR   c                ó   — y rK   rL   )rN   ÚonÚindexÚvaluesÚaggregate_functionÚsort_columnsÚ	separators          rO   ÚpivotzCompliantDataFrame.pivotÂ   s   € ð rR   c                 ó   — y rK   rL   ©rN   Úmappings     rO   ÚrenamezCompliantDataFrame.renameÌ   rQ   rR   c                 ó   — y rK   rL   )rN   rÔ   s     rO   r¶   zCompliantDataFrame.rowÍ   rQ   rR   c                ó   — y rK   rL   )rN   r»   s     rO   ÚrowszCompliantDataFrame.rowsÎ   r¾   rR   c                ó   — y rK   rL   )rN   r¦   ÚfractionÚwith_replacementÚseeds        rO   ÚsamplezCompliantDataFrame.sampleÑ   s   € ð rR   c                 ó   — y rK   rL   rv   s     rO   ru   zCompliantDataFrame.selectÙ   rQ   rR   c                ó   — y rK   rL   ©rN   Ú
descendingÚ
nulls_lastÚbys       rO   ÚsortzCompliantDataFrame.sortÚ   ó   € àrR   c                 ó   — y rK   rL   r³   s     rO   ÚtailzCompliantDataFrame.tailÝ   rQ   rR   c                 ó   — y rK   rL   rM   s    rO   Úto_arrowzCompliantDataFrame.to_arrowÞ   rQ   rR   c                 ó   — y rK   rL   rM   s    rO   Ú	to_pandaszCompliantDataFrame.to_pandasß   rQ   rR   c                 ó   — y rK   rL   rM   s    rO   Ú	to_polarszCompliantDataFrame.to_polarsà   rQ   rR   c                ó   — y rK   rL   ©rN   Ú	as_seriess     rO   Úto_dictzCompliantDataFrame.to_dictá   rb   rR   c                ó   — y rK   rL   r÷   s     rO   rù   zCompliantDataFrame.to_dictã   s   € ØMPrR   c                ó   — y rK   rL   r÷   s     rO   rù   zCompliantDataFrame.to_dictå   s   € à=@rR   N)Úmaintain_orderc                ó   — y rK   rL   )rN   r˜   Úkeeprü   s       rO   ÚuniquezCompliantDataFrame.uniqueè   rl   rR   c                 ó   — y rK   rL   ©rN   rÓ   rÔ   Úvariable_nameÚ
value_names        rO   ÚunpivotzCompliantDataFrame.unpivotï   rl   rR   c                 ó   — y rK   rL   rv   s     rO   Úwith_columnszCompliantDataFrame.with_columnsö   rQ   rR   c                 ó   — y rK   rL   rª   s     rO   Úwith_row_indexz!CompliantDataFrame.with_row_index÷   rQ   rR   c                 ó   — y rK   rL   ©rN   Úfiles     rO   Ú	write_csvzCompliantDataFrame.write_csvø   s   € Ø,/rR   c                 ó   — y rK   rL   r
  s     rO   r  zCompliantDataFrame.write_csvú   s   € Ø=@rR   c                 ó   — y rK   rL   r
  s     rO   r  zCompliantDataFrame.write_csvü   rQ   rR   c                 ó   — y rK   rL   r
  s     rO   Úwrite_parquetz CompliantDataFrame.write_parquetý   rQ   rR   c                óV   ‡ — ˆ fd„|D «       }t        t        j                  |«      «      S )Nc              3  ó@   •K  — | ]  }|j                  ‰«      –— Œ y ­wrK   ©Ú_evaluate_aliases©Ú.0ÚexprrN   s     €rO   ú	<genexpr>z7CompliantDataFrame._evaluate_aliases.<locals>.<genexpr>   ó   øè ø€ Ò=¨tˆd×$Ñ$ T×*Ñ=ùó   ƒ©Úlistr   Úfrom_iterable©rN   rw   Úits   `  rO   r  z$CompliantDataFrame._evaluate_aliasesÿ   ó#   ø€ Û=°uÔ=ˆÜ”E×'Ñ'¨Ó+Ó,Ð,rR   ©Úreturnr%   ©r"  r   )rX   r*   rY   r<   r"  r%   )rX   zMapping[str, Any]rY   r<   r]   z#Mapping[str, DType] | Schema | Noner"  r%   ©rX   r   rY   r<   r"  r%   )rX   r8   rY   r<   r]   z3Mapping[str, DType] | Schema | Sequence[str] | Noner"  r%   )rf   r   rg   úbool | Noner"  r8   )rj   zetuple[SingleIndexSelector | MultiIndexSelector[CompliantSeriesT], MultiColSelector[CompliantSeriesT]]r"  r%   ©rp   Ústrr"  r%   ©rw   r   r"  r%   ©r{   r   r"  r%   ©r"  r   ©r"  úSequence[str]©r"  zMapping[str, DType])r"  ztuple[int, int]©rŒ   úImplementation | Noner�   r   r"  z!CompliantDataFrame[Any, Any, Any]©r‚   r,  r”   Úboolr"  r%   ©r˜   úSequence[str] | Noner"  r%   )r›   r6   r"  zint | float©r‚   r,  r"  r%   ©r¢   z"CompliantExprT_contra | Incompleter"  r%   ©r¦   Úintr§   r7  r"  r%   )r«   r'  r"  r   )r¯   ú/Sequence[str] | Sequence[CompliantExprT_contra]r°   r1  r"  zDataFrameGroupBy[Self, Any]©r¦   r7  r"  r%   )r¶   ú
int | Noner·   zint | str | Noner"  r   )r"  zIterator[CompliantSeriesT])r»   r1  r¼   r7  r"  z7Iterator[tuple[Any, ...]] | Iterator[Mapping[str, Any]])r"  r   )rÃ   r%   rÄ   r.   rÅ   r3  rÆ   r3  rÇ   r'  r"  r%   ©rÃ   r%   rÅ   ú
str | NonerÆ   r<  rË   r3  rÌ   r3  rÍ   r-   rÇ   r'  r"  r%   )rŒ   r/  r"  zCompliantLazyFrame[Any, Any])rÓ   r,  rÔ   r3  rÕ   r3  rÖ   zPivotAgg | Noner×   r1  rØ   r'  r"  r%   ©rÜ   zMapping[str, str]r"  r%   )rÔ   r7  r"  ztuple[Any, ...])r»   r1  r"  z7Sequence[tuple[Any, ...]] | Sequence[Mapping[str, Any]])
r¦   r:  râ   zfloat | Nonerã   r1  rä   r:  r"  r%   ©rë   r'  ré   zbool | Sequence[bool]rê   r1  r"  r%   )r"  úpa.Table)r"  zpd.DataFrame)r"  zpl.DataFrame)rø   zLiteral[True]r"  zdict[str, CompliantSeriesT])rø   zLiteral[False]r"  zdict[str, list[Any]])rø   r1  r"  rB   )r˜   r3  rþ   r7   rü   r%  r"  r%   ©
rÓ   r3  rÔ   r3  r  r'  r  r'  r"  r%   ©r«   r'  r"  r%   )r  ÚNoner"  r'  )r  zstr | Path | BytesIOr"  rB  )r  zstr | Path | BytesIO | Noner"  r<  ©rw   r   r"  ú	list[str])<Ú__name__Ú
__module__Ú__qualname__Ú__annotations__rP   rT   ÚclassmethodrZ   r^   ra   rd   rh   rk   rq   rx   r|   Úpropertyr   r‚   r]   r‡   r‰   rŽ   r‘   r•   r™   rœ   rŸ   r£   r¨   r¬   r±   r´   rj   r¹   r½   rÀ   rÈ   rÎ   rÑ   rÙ   rÝ   r¶   rà   rå   ru   rì   rï   rñ   ró   rõ   r   rù   rÿ   r  r  r  r  r  r  rL   rR   rO   r>   r>   N   sá  … ð  ÓØ#Ó#Ø%Ó%ØÓã1Û0ØÚWó ØWØðàðð
 ðð 4ðð 
òó ðð ÚVó ØVØðàðð
 ðð Dðð 
òó ðó Kðð
ðð 
óóó#ó ;àò"ó ð"ð Ú+ó Ø+ØÚ0ó Ø0ØÚ+ó Ø+Û ð0Ø,ð0Ø8;ð0à	*ó0ó 9ÛHÛCÛ@Û:ÛPÛ<Û<ð*à=ð*ð ð	*ð
 
%ó*ó (ÛIÛ=ðFØðFØ+.ðFà	@óFó 1ðàðð ð	ð
 &ðð 'ðð ðð 
óð
àð
ð ð	
ð
 ð
ð &ð
ð 'ð
ð #ð
ð ð
ð 
ó
ó [ð	àð	ð $ð		ð
 %ð	ð ,ð	ð ð	ð ð	ð 
ó	ó >Û5ðFØðFà	@óFðàðð ð	ð
 ðð ðð 
óó AðØðØ$9ðØGKðà	óó (Û'Û,Û,ØÚVó ØVØÚPó ØPðAØ ðAà	;óAð '+ñà$ðð !ð	ð
 $ðð 
óðà ðð $ðð ð	ð
 ðð 
óó GÛ4ØÚ/ó Ø/ØÚ@ó Ø@ÛMÛDô-rR   r>   )r8   r8   z_ToDict[CompliantSeriesT])r?  r*   c                  ó  — e Zd ZU ded<   ded<   ded<   ded<   d+d	„Zd,d
„Zed-d„«       Zd.d„Zd/d„Z	d0d„Z
ed1d„«       Zed2d„«       Zed3d„«       Zd4d„Z	 	 	 	 	 	 d5d„Zd3d„Zd6d„Zd7d„Zd8d„Zd9d„Z ed«      d:d„«       Z	 	 	 	 	 	 d;d„Zd<d„Z	 	 	 	 	 	 	 	 	 	 	 	 d=d„Z	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d>d„Zd?d„Zd/d „Z	 	 	 	 	 	 	 	 d@d!„Z ed"«      d<d#„«       Z	 	 	 	 	 	 dAd$„Z 	 	 	 	 	 	 	 	 	 	 dBd%„Z!d/d&„Z"dCd'„Z#dDd(„Z$dEd)„Z%y*)Fr?   r   rE   r;   rF   rG   rH   r   rI   c                 ó   — y rK   rL   rM   s    rO   Ú__narwhals_lazyframe__z)CompliantLazyFrame.__narwhals_lazyframe__  rQ   rR   c                 ó   — y rK   rL   rM   s    rO   rT   z)CompliantLazyFrame.__narwhals_namespace__  rQ   rR   c               ó   — y rK   rL   rV   s      rO   ra   zCompliantLazyFrame.from_native  rb   rR   c                 ó   — yrn   rL   ro   s     rO   rq   z CompliantLazyFrame.simple_select  rr   rR   c                 ó   — y)rt   NrL   rv   s     rO   rx   zCompliantLazyFrame.aggregate  s   € ð
 	rR   c                 ó   — y rK   rL   rz   s     rO   r|   z CompliantLazyFrame._with_version  rQ   rR   c                ó   — | j                   S rK   r~   rM   s    rO   r   zCompliantLazyFrame.native!  r€   rR   c                 ó   — y rK   rL   rM   s    rO   r‚   zCompliantLazyFrame.columns%  rƒ   rR   c                 ó   — y rK   rL   rM   s    rO   r]   zCompliantLazyFrame.schema'  r…   rR   c                 ó   — y rK   rL   rM   s    rO   Ú_iter_columnsz CompliantLazyFrame._iter_columns)  rQ   rR   c                 ó   — y rK   rL   r‹   s      rO   rŽ   zCompliantLazyFrame.collect*  r�   rR   c                 ó   — y rK   rL   rM   s    rO   r‘   z!CompliantLazyFrame.collect_schema-  rQ   rR   c                ó   — y rK   rL   r“   s      rO   r•   zCompliantLazyFrame.drop.  rQ   rR   c                 ó   — y rK   rL   r—   s     rO   r™   zCompliantLazyFrame.drop_nulls/  rQ   rR   c                 ó   — y rK   rL   rž   s     rO   rŸ   zCompliantLazyFrame.explode0  rQ   rR   c                 ó   — y rK   rL   r¡   s     rO   r£   zCompliantLazyFrame.filter1  rQ   rR   zO`LazyFrame.gather_every` is deprecated and will be removed in a future version.c                 ó   — y rK   rL   r¥   s      rO   r¨   zCompliantLazyFrame.gather_every2  s   € ð :=rR   c                ó   — y rK   rL   r®   s      rO   r±   zCompliantLazyFrame.group_by6  s   € ð
 9<rR   c                 ó   — y rK   rL   r³   s     rO   r´   zCompliantLazyFrame.head<  rQ   rR   c                ó   — y rK   rL   rÂ   s         rO   rÈ   zCompliantLazyFrame.join=  r_   rR   c                ó   — y rK   rL   rÊ   s           rO   rÎ   zCompliantLazyFrame.join_asofF  rÏ   rR   c                 ó   — y rK   rL   rÛ   s     rO   rÝ   zCompliantLazyFrame.renameQ  rQ   rR   c                 ó   — y rK   rL   rv   s     rO   ru   zCompliantLazyFrame.selectR  rQ   rR   c                ó   — y rK   rL   rè   s       rO   rì   zCompliantLazyFrame.sortS  rí   rR   zG`LazyFrame.tail` is deprecated and will be removed in a future version.c                 ó   — y rK   rL   r³   s     rO   rï   zCompliantLazyFrame.tailV  s   € Ø$'rR   c                ó   — y rK   rL   )rN   r˜   rþ   s      rO   rÿ   zCompliantLazyFrame.uniqueX  rí   rR   c                 ó   — y rK   rL   r  s        rO   r  zCompliantLazyFrame.unpivot[  rl   rR   c                 ó   — y rK   rL   rv   s     rO   r  zCompliantLazyFrame.with_columnsb  rQ   rR   c                 ó   — y rK   rL   rª   s     rO   r  z!CompliantLazyFrame.with_row_indexc  rQ   rR   c               ó<   —  || «      }t        |«      dk(  sJ ‚|d   S )Né   r   ©Úlen©rN   r  Úresults      rO   Ú_evaluate_exprz!CompliantLazyFrame._evaluate_exprd  s'   € Ù�d“ˆÜ�6‹{˜aÒÐÐØ�a‰yÐrR   c                óV   ‡ — ˆ fd„|D «       }t        t        j                  |«      «      S )Nc              3  ó@   •K  — | ]  }|j                  ‰«      –— Œ y ­wrK   r  r  s     €rO   r  z7CompliantLazyFrame._evaluate_aliases.<locals>.<genexpr>j  r  r  r  r  s   `  rO   r  z$CompliantLazyFrame._evaluate_aliasesi  r   rR   Nr!  r#  r$  r&  r(  r)  r*  r+  r-  )r"  zIterator[Any]r.  r0  r2  r4  r5  r6  )r¯   r8  r°   r1  r"  z-CompliantGroupBy[Self, CompliantExprT_contra]r9  )rÃ   r%   rÄ   z1Literal['left', 'inner', 'cross', 'anti', 'semi']rÅ   r3  rÆ   r3  rÇ   r'  r"  r%   r;  r=  r>  )r˜   r3  rþ   r/   r"  r%   r@  rA  )r  r   r"  r   rC  )&rE  rF  rG  rH  rM  rT   rI  ra   rq   rx   r|   rJ  r   r‚   r]   rW  rŽ   r‘   r•   r™   rŸ   r£   r   r¨   r±   r´   rÈ   rÎ   rÝ   ru   rì   rï   rÿ   r  r  r  rq  r  rL   rR   rO   r?   r?     s  … ð
  ÓØ#Ó#Ø%Ó%ØÓã1Û0àÚVó ØVóóó ;àò"ó ð"ð Ú+ó Ø+ØÚ0ó Ø0Û1ð0Ø,ð0Ø8;ð0à	*ó0ó 9ÛHÛCÛ:ÛPÙØYóò =óð =ð<à=ð<ð ð	<ð
 
7ó<ó (ðàðð ?ð	ð
 &ðð 'ðð ðð 
óð
àð
ð ð	
ð
 ð
ð &ð
ð 'ð
ð #ð
ð ð
ð 
ó
ó >Û@ðØðØ$9ðØGKðà	óñ ÐYÓZÚ'ó [Ø'ðØ*ðØ5Kðà	óðà ðð $ðð ð	ð
 ðð 
óó GÛ4óô
-rR   r?   c                  ó¦   — e Zd Z	 	 dd„Zdd„Zdd„Zdd„Zdd„Ze	 	 	 	 	 	 dd„«       Z	dd„Z
dd„Z	 	 	 	 dd	„Z	 	 	 	 dd
„Zdd„Zdd„Z	 	 	 	 dd„Zy)r@   c                 ó   — y rK   rL   rM   s    rO   rT   z%EagerDataFrame.__narwhals_namespace__s  s   € àVYrR   c               ó<   —  || «      }t        |«      dk(  sJ ‚|d   S )z6Evaluate `expr` and ensure it has a **single** output.rl  r   rm  ro  s      rO   rq  zEagerDataFrame._evaluate_exprw  s'   € á)-¨d«ˆÜ�6‹{˜aÒÐÐØ�a‰yÐrR   c                óR   ‡ — t        t        j                  ˆ fd„|D «       «      «      S )Nc              3  ó@   •K  — | ]  }‰j                  |«      –— Œ y ­wrK   )Ú_evaluate_into_exprr  s     €rO   r  z6EagerDataFrame._evaluate_into_exprs.<locals>.<genexpr>  s   øè ø€ Ò'YÈ4¨×(@Ñ(@À×(FÑ'Yùr  r  rv   s   ` rO   Ú_evaluate_into_exprsz#EagerDataFrame._evaluate_into_exprs}  s    ø€ ä”E×'Ñ'Ó'YÐSXÔ'YÓYÓZÐZrR   c               ó¸   — |j                  | «      } || «      }t        |«      |D �cg c]  }|j                  ‘Œ c}x}k7  rd|› d|› �}t        |«      ‚|S c c}w )a†  Return list of raw columns.

        For eager backends we alias operations at each step.

        As a safety precaution, here we can check that the expected result names match those
        we were expecting from the various `evaluate_output_names` / `alias_output_names` calls.

        Note that for PySpark / DuckDB, we are less free to liberally set aliases whenever we want.
        z"Safety assertion failed, expected z, got )r  r  r«   ÚAssertionError)rN   r  Úaliasesrp  ÚsÚresult_aliasesÚmsgs          rO   ry  z"EagerDataFrame._evaluate_into_expr�  sj   € ð ×(Ñ(¨Ó.ˆÙ�d“ˆÜ�‹=Ø/5Ö6¨!˜qŸv›vÒ6Ð6ˆNò
ð 7°w°i¸vÀnÐEUÐVˆCÜ  Ó%Ð%Øˆùò	 7s   ¨Ac                ó   — y)z@Extract native Series, broadcasting to `len(self)` if necessary.NrL   )rN   rÃ   s     rO   Ú_extract_comparandz!EagerDataFrame._extract_comparand”  rr   rR   c               óZ   — t        |xs d„ t        | j                  d   «      D «       «      S )Nc              3  ó&   K  — | ]	  }d |› �–— Œ y­w)Úcolumn_NrL   )r  Úxs     rO   r  z5EagerDataFrame._numpy_column_names.<locals>.<genexpr>œ  s   è ø€ ÒL°! '¨!¨¤ÑLùs   ‚rl  )r  Úranger‡   )rX   r‚   s     rO   Ú_numpy_column_namesz"EagerDataFrame._numpy_column_names˜  s'   € ô �GÒLÑL´u¸T¿Z¹ZÈ¹]Ó7KÔLÓMÐMrR   c                 ó   — y rK   rL   ©rN   rà   s     rO   Ú_gatherzEagerDataFrame._gatherž  rQ   rR   c                 ó   — y rK   rL   rŠ  s     rO   Ú_gather_slicezEagerDataFrame._gather_sliceŸ  rQ   rR   c                 ó   — y rK   rL   rž   s     rO   Ú_select_multi_indexz"EagerDataFrame._select_multi_index   rí   rR   c                 ó   — y rK   rL   rž   s     rO   Ú_select_multi_namez!EagerDataFrame._select_multi_name£  rí   rR   c                 ó   — y rK   rL   rž   s     rO   Ú_select_slice_indexz"EagerDataFrame._select_slice_index¦  rQ   rR   c                 ó   — y rK   rL   rž   s     rO   Ú_select_slice_namez!EagerDataFrame._select_slice_name§  rQ   rR   c                óÌ  — |\  }}| }t        |«      �st        |t        «      rt        |«      dk(  r|j	                  «       S t        |«      rat        |«      st        |«      r|j                  |«      }n¸t        |«      r| j                  |j                  «      }n‘|j                  |«      }nt        |t        «      r|j                  |«      }n]t        |«      r| j                  |j                  «      }n6t        |«      r| j                  |«      }ndt!        |«      › �}t#        |«      ‚t        |«      s¬t        |t$        «      r|j'                  |g«      }|S t        |t        t(        f«      r|j+                  |«      }|S t        |«      r|j'                  |j                  «      }|S t-        |«      r|j'                  |«      }|S dt!        |«      › �}t#        |«      ‚|S )Nr   z'Unreachable code, got unexpected type: )r"   Ú
isinstancer   rn  ru   r   r!   r   r“  r   r�  r   Úslicer•  r‘  r   Útyper|  r7  r‹  r‡  r�  r    )rN   rj   rà   r‚   Ú	compliantr€  s         rO   rk   zEagerDataFrame.__getitem__¨  sº  € ð ‰ˆˆgØˆ	Ü˜WÕ%Ü˜'¤5Ô)¬c°'«l¸aÒ.?Ø ×'Ñ'Ó)Ð)Ü  Ô)Ü! 'Ô*¬h°wÔ.?Ø )× =Ñ =¸gÓ F‘IÜ(¨Ô1Ø $× 8Ñ 8¸¿¹Ó H‘Ià )× =Ñ =¸gÓ F‘IÜ˜G¤UÔ+Ø%×8Ñ8¸ÓA‘	Ü$ WÔ-Ø ×3Ñ3°G·N±NÓC‘	Ü! 'Ô*Ø ×3Ñ3°GÓ<‘	à?ÄÀWÃ¸ÐO�Ü$ SÓ)Ð)ä˜TÔ"Ü˜$¤Ô$Ø%×-Ñ-¨t¨fÓ5�	ð Ðô ˜D¤5¬% .Ô1Ø%×3Ñ3°DÓ9�	ð Ðô % TÔ*Ø%×-Ñ-¨d¯k©kÓ:�	ð Ðô /¨tÔ4Ø%×-Ñ-¨dÓ3�	ð
 Ðð @ÄÀTÃ
¸|ÐL�Ü$ SÓ)Ð)àÐrR   N)r"  zKEagerNamespace[Self, EagerSeriesT, EagerExprT, NativeFrameT, NativeSeriesT])r  r   r"  r   )rw   r   r"  úSequence[EagerSeriesT])r  r   r"  r›  )rÃ   r   r"  r   )rX   r8   r‚   r3  r"  rD  )rà   ú&SizedMultiIndexSelector[NativeSeriesT]r"  r%   )rà   ú_SliceIndex | ranger"  r%   )r‚   rœ  r"  r%   )r‚   z%SizedMultiNameSelector[NativeSeriesT]r"  r%   )r‚   r�  r"  r%   )r‚   r:   r"  r%   )rj   z]tuple[SingleIndexSelector | MultiIndexSelector[EagerSeriesT], MultiColSelector[EagerSeriesT]]r"  r%   )rE  rF  rG  rT   rq  rz  ry  r‚  Ústaticmethodrˆ  r‹  r�  r�  r‘  r“  r•  rk   rL   rR   rO   r@   r@   n  s¬   „ ð
Zà	TóZóó[óó&ð ðNØðNØ!5ðNà	òNó ðNó
 QÛCðØ=ðà	óðØ<ðà	óó MÛBð*ð
ð*ð 
ô*rR   r@   )WÚ
__future__r   Ú	itertoolsr   Útypingr   r   r   r   r	   r
   r   r   r   r   Únarwhals._compliant.typingr   r   r   r   r   r   Únarwhals._translater   r   r   r   Únarwhals.utilsr   r   r   r   r   r   r   r    r!   r"   Úior#   Úpathlibr$   ÚpandasÚpdÚpolarsÚplÚpyarrowÚpaÚtyping_extensionsr%   r&   Únarwhals._compliant.group_byr'   r(   Únarwhals._compliant.namespacer)   r*   Únarwhals.dtypesr+   Únarwhals.schemar,   Únarwhals.typingr-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   rH  Ú__all__rA   rC   r'  r>   r?   r@   rL   rR   rO   ú<module>r´     sŸ  ðÞ "å Ý  Ý Ý Ý Ý Ý Ý Ý Ý Ý å <Ý 7Ý 1Ý 3Ý 3Ý 4Ý 0Ý /Ý *Ý 0Ý "Ý (Ý %Ý .Ý ,Ý #Ý +Ý 8Ý )Ý (áÝÝãÛÛÝ&Ý+å=Ý=Ý<Ý2Ý%Ý&Ý0Ý,Ý6Ý0Ý2Ý(Ý3Ý7Ý6Ý(Ý2Ý(Ý+Ý*Ý-Ý+à€J�	Óâ
H€áˆCƒL€àI€ˆÓ Iôs-ØÐ+Ñ,ØÐ/°¸¸c¸Ñ1BÐBÑCØÐ1Ñ2Ø�,ÑØˆ|ÑØ	ØÐÐ4°lÐBÑCôs-ôlg-Ø�,ÑØˆ|ÑØÐ" LÐ0Ñ1ôg-ôTdØ�| Z°Ð=Ñ>Ø�z <Ð/Ñ0Øˆ\˜: |°]ÐBÑCõdrR   