Ë
    ÚÍ:jI  ã            
      ó´  — U d dl mZ d dlZd dlZd dlmZ d dlmZ d dlm	Z	m
Z
mZmZmZ d dlmZ d dlmZ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mZ d dlmZ e	r d dl m!Z!m"Z" d dlm#Z# d dl$m%Z%m&Z& d dl'm(Z(m)Z)m*Z* e
Z+de,d<   	 ed    Z-de,d<   ed   Z.de,d<   ee-e.f   Z/de,d<   d Z0de,d<   dZ1de,d<    G d„ deeeeeef   «      Z2 G d„ deeef   «      Z3y)é    )ÚannotationsN©Úreduce)Úchain)ÚTYPE_CHECKINGÚAnyÚLiteralÚProtocolÚoverload)ÚEagerNamespace)Úcombine_alias_output_namesÚcombine_evaluate_output_names©ÚPandasLikeDataFrame©ÚPandasLikeExpr)ÚPandasSelectorNamespace©ÚPandasLikeSeries)ÚNativeDataFrameTÚNativeSeriesT)Úis_non_nullable_boolean)ÚIterableÚSequence)Ú	TypeAlias)ÚImplementationÚVersion)ÚCorrelationMethodÚ	IntoDTypeÚPythonLiteralr   Ú
IncompleteÚ	_Verticalé   Ú_HorizontalÚAxisÚVERTICALÚ
HORIZONTALc                  ó@  — e Zd Zedd„«       Zedd„«       Ze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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&d„Z	 	 	 	 	 	 	 	 d'd„Zy)(ÚPandasLikeNamespacec                ó   — t         S ©Nr   ©Úselfs    út/home/mcse/projects/srt_converter/srt-converter-venv/lib/python3.12/site-packages/narwhals/_pandas_like/namespace.pyÚ
_dataframezPandasLikeNamespace._dataframe2   s   € ä"Ð"ó    c                ó   — t         S r+   r   r,   s    r.   Ú_exprzPandasLikeNamespace._expr6   s   € äÐr0   c                ó   — t         S r+   r   r,   s    r.   Ú_serieszPandasLikeNamespace._series:   s   € äÐr0   c                ó,   — t        j                  | «      S r+   )r   Úfrom_namespacer,   s    r.   Ú	selectorszPandasLikeNamespace.selectors>   s   € ä&×5Ñ5°dÓ;Ð;r0   c                ó    — || _         || _        y r+   )Ú_implementationÚ_version)r-   ÚimplementationÚversions      r.   Ú__init__zPandasLikeNamespace.__init__B   s   € Ø-ˆÔØˆ�r0   c                óf   ‡— dˆfd„}| j                   j                  |t        ‰Ž t        ‰Ž | ¬«      S )Nc                ó8   •‡ — ˆ fd„‰D «       }t        d„ |«      gS )Nc              3  ó<   •K  — | ]  } |‰«      D ]  }|–— Œ Œ y ­wr+   © )Ú.0r2   ÚsÚdfs      €r.   ú	<genexpr>z=PandasLikeNamespace.coalesce.<locals>.func.<locals>.<genexpr>H   s!   øè ø€ Ò>˜E±E¸"³IÒ>¨q”aÐ>�aÑ>ùs   ƒc                ó*   — | j                  |d d ¬«      S )N©ÚstrategyÚlimit©Ú	fill_null)ÚxÚys     r.   ú<lambda>z<PandasLikeNamespace.coalesce.<locals>.func.<locals>.<lambda>J   s   €  A§K¡K°¸DÈ KÓ$M€ r0   r   )rD   ÚseriesÚexprss   ` €r.   Úfuncz*PandasLikeNamespace.coalesce.<locals>.funcG   s"   ù€ Û> UÔ>ˆFäÑMÈvÓVðð r0   ©rQ   Úevaluate_output_namesÚalias_output_namesÚcontext©rD   r   Úreturnzlist[PandasLikeSeries]©r2   Ú_from_callabler   r   ©r-   rP   rQ   s    ` r.   ÚcoalescezPandasLikeNamespace.coalesceF   s<   ø€ õ	ð �z‰z×(Ñ(ØÜ"?ÀÐ"GÜ9¸5ÐAØð	 )ó 
ð 	
r0   c                ój   ‡ ‡‡‡— dˆˆ ˆfd„Št        ˆfd„d„ d ‰ j                  ‰ j                  ¬«      S )Nc                ó´  •— t        ‰t        t        t        f«      rÒ	 dd l}dd l}ddlm} t        ‰t        «      rt        ‰«      n‰}‰r |‰‰j                  «      nd }|j                  |g|¬«      }‰j                  j                  «       }	|	j                  |j                  j                  |«      d| j                   j"                  dd ¬«      }
‰j$                  j'                  |
‰¬«      S ‰j$                  j)                  ‰gd| j                   j"                  dd ‰¬	«      }‰r|j+                  ‰«      S |S # t        $ r}d}t        |«      |‚d }~ww xY w)
Nr   zqNested structures require pyarrow to be installed for pandas backend. Please install pyarrow: pip install pyarrow)Únarwhals_to_native_dtype)ÚtypeÚliteralr#   ©ÚnameÚindex)rU   )Údatarb   rc   rU   )Ú
isinstanceÚlistÚtupleÚdictÚpandasÚpyarrowÚImportErrorÚnarwhals._arrow.utilsr^   r:   Úarrayr9   Úto_native_namespaceÚSeriesÚarraysÚArrowExtensionArrayÚ_native_framerc   r4   Úfrom_nativeÚfrom_iterableÚcast)rD   ÚpdÚpaÚexcÚmsgÚ_to_arrow_dtypeÚarray_valueÚpa_dtypeÚpa_arrayÚnsÚpandas_series_nativeÚpandas_like_seriesÚdtyper-   Úvalues               €€€r.   Ú_lit_pandas_seriesz3PandasLikeNamespace.lit.<locals>._lit_pandas_seriesU   sX  ø€ Ü˜%¤$¬¬tÐ!4Ô5ð4Û'Û(õô .8¸¼uÔ-Eœd 5œkÈ5�ÙDI™?¨5°$·-±-Ô@Èt�ØŸ8™8 [ M¸˜8ÓA�ð ×)Ñ)×=Ñ=Ó?�Ø')§y¡yØ—I‘I×1Ñ1°(Ó;Ø"Ø×*Ñ*×0Ñ0°°1Ð5ð (1ó (Ð$ð —|‘|×/Ñ/Ð0DÈdÐ/ÓSÐSà!%§¡×!;Ñ!;Ø�WØØ×&Ñ&×,Ñ,¨Q¨qÐ1Øð	 "<ó "Ðñ Ø)×.Ñ.¨uÓ5Ð5Ø%Ð%øôC #ò 4ðFð ô & cÓ*°Ð3ûð4ús   žD; Ä;	EÅEÅEc                ó   •—  ‰| «      gS r+   rA   )rD   rƒ   s    €r.   rN   z)PandasLikeNamespace.lit.<locals>.<lambda>~   s   ø€ Ñ*¨2Ó.Ð/€ r0   c                ó   — dgS )Nr`   rA   ©Ú_dfs    r.   rN   z)PandasLikeNamespace.lit.<locals>.<lambda>   s   € ¨y¨k€ r0   ©rS   rT   r;   r<   )rD   r   rW   r   ©r   r9   r:   )r-   r‚   r�   rƒ   s   ```@r.   ÚlitzPandasLikeNamespace.litT   s1   û€ ÷&	&ôP Û/Ù"9Ø#Ø×/Ñ/Ø—M‘Mô
ð 	
r0   c                óT   ‡ — t        ˆ fd„d„ d ‰ j                  ‰ j                  ¬«      S )Nc                ón   •— ‰j                   j                  t        | j                  «      gddg‰¬«      gS )NÚlenr   )rb   rc   rU   )r4   rt   r�   rr   )rD   r-   s    €r.   rN   z)PandasLikeNamespace.len.<locals>.<lambda>‡   s:   ø€ Ø—‘×*Ñ*Ü˜×)Ñ)Ó*Ð+°%À¸sÈDð +ó ð€ r0   c                ó   — dgS )Nr�   rA   r†   s    r.   rN   z)PandasLikeNamespace.len.<locals>.<lambda>Œ   s   € ¨u¨g€ r0   rˆ   r‰   r,   s   `r.   r�   zPandasLikeNamespace.len…   s-   ø€ Üóñ
 #6Ø#Ø×/Ñ/Ø—M‘Mô

ð 
	
r0   c                óf   ‡— dˆfd„}| j                   j                  |t        ‰Ž t        ‰Ž | ¬«      S )Nc                óŠ   •‡ — t        j                  ˆ fd„‰D «       «      }d„ |D «       }t        t        j                  |«      gS )Nc              3  ó.   •K  — | ]  } |‰«      –— Œ y ­wr+   rA   ©rB   ÚexprrD   s     €r.   rE   zCPandasLikeNamespace.sum_horizontal.<locals>.func.<locals>.<genexpr>•   s   øè ø€ Ò$@°$¡T¨"§XÑ$@ùó   ƒc              3  óB   K  — | ]  }|j                  d dd«      –— Œ y­w)r   NrJ   ©rB   rC   s     r.   rE   zCPandasLikeNamespace.sum_horizontal.<locals>.func.<locals>.<genexpr>–   s   è ø€ ÒD¸A˜QŸ[™[¨¨D°$×7ÑDùó   ‚)r   rt   r   ÚoperatorÚadd)rD   ÚitÚnative_seriesrP   s   `  €r.   rQ   z0PandasLikeNamespace.sum_horizontal.<locals>.func”   s7   ù€ Ü×$Ñ$Ó$@¸%Ô$@Ó@ˆBÙDÀÔDˆMÜœ8Ÿ<™<¨Ó7Ð8Ð8r0   rR   rV   rX   rZ   s    ` r.   Úsum_horizontalz"PandasLikeNamespace.sum_horizontal“   s<   ø€ õ	9ð
 �z‰z×(Ñ(ØÜ"?ÀÐ"GÜ9¸5ÐAØð	 )ó 
ð 	
r0   c               ój   ‡‡— dˆˆfd„}| j                   j                  |t        ‰Ž t        ‰Ž | ¬«      S )Nc                óð   •— ‰D ��cg c]  } || «      D ]  }|‘Œ Œ }}}‰st        d„ |D «       «      rd}t        |«      ‚‰r	d„ |D «       n
t        |«      }t        t        j
                  |«      gS c c}}w )Nc              3  óŽ   K  — | ]=  }|j                   j                  d k(  xr |j                  «       j                  «       –— Œ? y­w©ÚobjectN©Únativer�   Úis_nullÚanyr–   s     r.   rE   zCPandasLikeNamespace.all_horizontal.<locals>.func.<locals>.<genexpr>¥   ó7   è ø€ ò (ØEF�—‘—‘ (Ñ*Ò@¨q¯y©y«{¯©Ó/@Ó@ñ(ùó   ‚AAzwCannot use `ignore_nulls=False` in `all_horizontal` for non-nullable NumPy-backed pandas Series when nulls are present.c              3  ó\   K  — | ]$  }t        |«      r|n|j                  d dd«      –— Œ& y­w)TN©r   rK   r–   s     r.   rE   zCPandasLikeNamespace.all_horizontal.<locals>.func.<locals>.<genexpr>­   s4   è ø€ ò ð ô 1°Ô3‘A¸¿¹ÀTÈ4ÐQUÓ9VÓVñùó   ‚*,)r¥   Ú
ValueErrorÚiterr   r˜   Úand_©rD   r2   rC   rO   ry   rš   rP   Úignore_nullss         €€r.   rQ   z0PandasLikeNamespace.all_horizontal.<locals>.func£   sŒ   ø€ Ø%*×>˜E±E¸"³IÒ>¨q’aÐ>�aÐ>ˆFÑ>Ù¤Cñ (ØJPô(ô %ð
 P�Ü  “oÐ%ñ  ñð $õô ˜&“\ð ô œ8Ÿ=™=¨"Ó-Ð.Ð.ùó# ?ó   ‡A2rR   rV   rX   ©r-   r¯   rP   rQ   s    `` r.   Úall_horizontalz"PandasLikeNamespace.all_horizontal    s<   ù€ ö	/ð( �z‰z×(Ñ(ØÜ"?ÀÐ"GÜ9¸5ÐAØð	 )ó 
ð 	
r0   c               ój   ‡‡— dˆˆfd„}| j                   j                  |t        ‰Ž t        ‰Ž | ¬«      S )Nc                óð   •— ‰D ��cg c]  } || «      D ]  }|‘Œ Œ }}}‰st        d„ |D «       «      rd}t        |«      ‚‰r	d„ |D «       n
t        |«      }t        t        j
                  |«      gS c c}}w )Nc              3  óŽ   K  — | ]=  }|j                   j                  d k(  xr |j                  «       j                  «       –— Œ? y­wr    r¢   r–   s     r.   rE   zCPandasLikeNamespace.any_horizontal.<locals>.func.<locals>.<genexpr>Ã   r¦   r§   zwCannot use `ignore_nulls=False` in `any_horizontal` for non-nullable NumPy-backed pandas Series when nulls are present.c              3  ó\   K  — | ]$  }t        |«      r|n|j                  d dd«      –— Œ& y­w)FNr©   r–   s     r.   rE   zCPandasLikeNamespace.any_horizontal.<locals>.func.<locals>.<genexpr>Ë   s4   è ø€ ò ð ô 1°Ô3‘A¸¿¹ÀUÈDÐRVÓ9WÓWñùrª   )r¥   r«   r¬   r   r˜   Úor_r®   s         €€r.   rQ   z0PandasLikeNamespace.any_horizontal.<locals>.funcÁ   sŒ   ø€ Ø%*×>˜E±E¸"³IÒ>¨q’aÐ>�aÐ>ˆFÑ>Ù¤Cñ (ØJPô(ô %ð
 P�Ü  “oÐ%ñ  ñð $õô ˜&“\ð ô œ8Ÿ<™<¨Ó,Ð-Ð-ùó# ?r°   rR   rV   rX   r±   s    `` r.   Úany_horizontalz"PandasLikeNamespace.any_horizontal¾   s<   ù€ ö	.ð( �z‰z×(Ñ(ØÜ"?ÀÐ"GÜ9¸5ÐAØð	 )ó 
ð 	
r0   c                óf   ‡— dˆfd„}| j                   j                  |t        ‰Ž t        ‰Ž | ¬«      S )Nc                óÜ   •— ‰D ��cg c]  } || «      D ]  }|‘Œ Œ }}}d„ |D «       }d„ |D «       }t        t        j                  |«      t        t        j                  |«      z  gS c c}}w )Nc              3  óD   K  — | ]  }|j                  d dd¬«      –— Œ y­w)r   NrG   rJ   r–   s     r.   rE   zDPandasLikeNamespace.mean_horizontal.<locals>.func.<locals>.<genexpr>ß   s   è ø€ ÒVÀA�a—k‘k !¨d¸$�k×?ÑVùs   ‚ c              3  óB   K  — | ]  }d |j                  «       z
  –— Œ y­w)r#   N)r¤   r–   s     r.   rE   zDPandasLikeNamespace.mean_horizontal.<locals>.func.<locals>.<genexpr>à   s   è ø€ Ò<¨!�a˜!Ÿ)™)›+•oÑ<ùr—   )r   r˜   r™   )rD   r2   rC   Úexpr_resultsrO   Únon_narP   s         €r.   rQ   z1PandasLikeNamespace.mean_horizontal.<locals>.funcÝ   sd   ø€ Ø+0×D %¹%À»)ÒD°QšAÐD˜AÐDˆLÑDÙVÈÔVˆFÙ<¨|Ô<ˆFÜœ8Ÿ<™<¨Ó0´6¼(¿,¹,ÈÓ3OÑOÐPÐPùó Es   ‡A(rR   rV   rX   rZ   s    ` r.   Úmean_horizontalz#PandasLikeNamespace.mean_horizontalÜ   s=   ø€ õ	Qð �z‰z×(Ñ(ØÜ"?ÀÐ"GÜ9¸5ÐAØð	 )ó 
ð 	
r0   c                ój   ‡ ‡— dˆˆ fd„}‰ j                   j                  |t        ‰Ž t        ‰Ž ‰ ¬«      S )Nc                ó6  •‡ — t        t        j                  ˆ fd„‰D «       «      «      }t        ‰j	                  d„ |D «       d¬«      j
                  j                  d¬«      ‰j                  ‰j                  ¬«      j                  |d   j                  «      gS )	Nc              3  ó.   •K  — | ]  } |‰«      –— Œ y ­wr+   rA   r’   s     €r.   rE   zCPandasLikeNamespace.min_horizontal.<locals>.func.<locals>.<genexpr>ì   ó   øè ø€ Ò-I¸4©d°2¯hÑ-Iùr”   c              3  ó<   K  — | ]  }|j                  «       –— Œ y ­wr+   ©Úto_framer–   s     r.   rE   zCPandasLikeNamespace.min_horizontal.<locals>.func.<locals>.<genexpr>ð   ó   è ø€ Ò6¨!˜Ÿ™ŸÑ6ùó   ‚Ú
horizontal©Úhowr#   ©Úaxis©r;   r<   r   )rf   r   rt   r   Úconcatrr   Úminr9   r:   Úaliasrb   ©rD   rO   rP   r-   s   ` €€r.   rQ   z0PandasLikeNamespace.min_horizontal.<locals>.funcë   s~   ù€ Üœ%×-Ñ-Ó-IÀ5Ô-IÓIÓJˆFä Ø—K‘KÙ6¨vÔ6¸Lð  ó ç#‘m§C¡C¨Q C£KØ#'×#7Ñ#7Ø ŸM™Mô÷ ‘%˜˜q™	Ÿ™Ó'ðð r0   rR   rV   rX   rZ   s   `` r.   Úmin_horizontalz"PandasLikeNamespace.min_horizontalê   ó<   ù€ ö
	ð �z‰z×(Ñ(ØÜ"?ÀÐ"GÜ9¸5ÐAØð	 )ó 
ð 	
r0   c                ój   ‡ ‡— dˆˆ fd„}‰ j                   j                  |t        ‰Ž t        ‰Ž ‰ ¬«      S )Nc                ó6  •‡ — t        t        j                  ˆ fd„‰D «       «      «      }t        ‰j	                  d„ |D «       d¬«      j
                  j                  d¬«      ‰j                  ‰j                  ¬«      j                  |d   j                  «      gS )	Nc              3  ó.   •K  — | ]  } |‰«      –— Œ y ­wr+   rA   r’   s     €r.   rE   zCPandasLikeNamespace.max_horizontal.<locals>.func.<locals>.<genexpr>   rÃ   r”   c              3  ó<   K  — | ]  }|j                  «       –— Œ y ­wr+   rÅ   r–   s     r.   rE   zCPandasLikeNamespace.max_horizontal.<locals>.func.<locals>.<genexpr>  rÇ   rÈ   rÉ   rÊ   r#   rÌ   rÎ   r   )rf   r   rt   r   rÏ   r£   Úmaxr9   r:   rÑ   rb   rÒ   s   ` €€r.   rQ   z0PandasLikeNamespace.max_horizontal.<locals>.funcÿ   s~   ù€ Üœ%×-Ñ-Ó-IÀ5Ô-IÓIÓJˆFä Ø—K‘KÙ6¨vÔ6¸Lð  ó ç‘fŸS™S a˜S›[Ø#'×#7Ñ#7Ø ŸM™Mô÷ ‘%˜˜q™	Ÿ™Ó'ðð r0   rR   rV   rX   rZ   s   `` r.   Úmax_horizontalz"PandasLikeNamespace.max_horizontalþ   rÔ   r0   c                óJ   — | j                   j                  «       j                  S )zvConcatenate pandas objects along a particular axis.

        Return the **native** equivalent of `pd.concat`.
        )r9   rn   rÏ   r,   s    r.   Ú_concatzPandasLikeNamespace._concat  s   € ð ×#Ñ#×7Ñ7Ó9×@Ñ@Ð@r0   c               ó²   — | j                   j                  «       r'| j                  dk  r| j                  |t        d¬«      S | j                  |t        ¬«      S )N©é   F©rÍ   ÚcopyrÌ   )r9   Ú	is_pandasÚ_backend_versionrÜ   r&   ©r-   Údfss     r.   Ú_concat_diagonalz$PandasLikeNamespace._concat_diagonal  sI   € Ø×Ñ×)Ñ)Ô+°×0EÑ0EÈÒ0LØ—<‘< ¬(¸�<Ó?Ð?Ø�|‰|˜C¤hˆ|Ó/Ð/r0   c               ó   — | j                   j                  «       rQt        j                  «       5  t        j                  ddt
        ¬«       | j                  |t        ¬«      cd d d «       S | j                   j                  «       r'| j                  dk  r| j                  |t        d¬«      S | j                  |t        ¬«      S # 1 sw Y   Œ xY w)NÚignorezDThe behavior of array concatenation with empty entries is deprecated)ÚmessageÚcategoryrÌ   rÞ   Frà   )
r9   Úis_cudfÚwarningsÚcatch_warningsÚfilterwarningsÚFutureWarningrÜ   r'   râ   rã   rä   s     r.   Ú_concat_horizontalz&PandasLikeNamespace._concat_horizontal  s®   € ð ×Ñ×'Ñ'Ô)Ü×(Ñ(Ó*ñ :Ü×'Ñ'ØØbÜ*õð
 —|‘| C¬j�|Ó9÷:ñ :ð ×!Ñ!×+Ñ+Ô-°$×2GÑ2GÈ$Ò2NØ—<‘< ¬*¸5�<ÓAÐAØ�|‰|˜C¤jˆ|Ó1Ð1÷:ð :ús   ¯3CÃCc               óÒ  — |d   j                   }t        |dd  d¬«      D ]n  \  }}|j                   }t        |«      t        |«      k(  r||k(  j                  «       rŒ=d|j	                  «       › d|› d|j	                  «       › d�}t        |«      ‚ | j                  j                  «       r'| j                  dk  r| j                  |t        d	¬
«      S | j                  |t        ¬«      S )Nr   r#   )Ústartz>unable to vstack, column names don't match:
   - dataframe 0: z
   - dataframe z: ú
rÞ   Frà   rÌ   )ÚcolumnsÚ	enumerater�   ÚallÚto_listÚ	TypeErrorr9   râ   rã   rÜ   r&   )r-   rå   Úcols_0ÚirD   Úcols_currentry   s          r.   Ú_concat_verticalz$PandasLikeNamespace._concat_vertical.  sç   € Ø�Q‘—‘ˆÜ˜s 1 2˜w¨aÔ0ò 
	%‰EˆAˆrØŸ:™:ˆLä�\Ó"¤c¨&£kÒ1¸ÈÑ8N×7SÑ7SÕ7Uð)Ø)/¯©Ó)9Ð(:ð ;&Ø&' S¨¨<×+?Ñ+?Ó+AÐ*BÀ"ðFð ô
   “nÐ$ð
	%ð ×Ñ×)Ñ)Ô+°×0EÑ0EÈÒ0LØ—<‘< ¬(¸�<Ó?Ð?Ø�|‰|˜C¤hˆ|Ó/Ð/r0   c               óº   ‡‡‡‡— | j                   j                  j                  «       Šdˆˆˆˆfd„}| j                  j	                  |t        ‰Ž t        ‰Ž | ¬«      S )Nc           	     ó¶  •‡— ‰D ��cg c]  } || «      D ]  }|‘Œ Œ }}}|D �cg c]  }|j                  ‰«      ‘Œ }}|D �cg c]  }|j                  «       ‘Œ }}‰s=t        t        j                  |«      }t        ˆfd„|«      j                  | d «      }|gS d„ t        ||d¬«      D «       ^}}	|j                  |j                  «       j                  ‰d|j                  j                  |j                  j                  ¬«      «      Šˆfd„|d d D «       }
t        t        j                  d	„ t        |
|	d¬«      D «       |«      }|gS c c}}w c c}w c c}w )
Nc                ó   •— | ‰z   |z   S r+   rA   )rL   rM   Ú	separators     €r.   rN   z>PandasLikeNamespace.concat_str.<locals>.func.<locals>.<lambda>K  s   ø€ ¨Q°©]¸QÑ->€ r0   c              3  óH   K  — | ]  \  }}|j                  | d «      –— Œ y­w©Ú N©Úzip_with)rB   rC   Únms      r.   rE   z?PandasLikeNamespace.concat_str.<locals>.func.<locals>.<genexpr>R  s&   è ø€ ò 'Ù,1¨A¨r�A—J‘J ˜s B×'ñ'ùs   ‚ "T)ÚstrictÚsep)rb   rc   r�   c              3  óD   •K  — | ]  }‰j                  | d «      –— Œ y­wr  r  )rB   r  Ú	sep_arrays     €r.   rE   z?PandasLikeNamespace.concat_str.<locals>.func.<locals>.<genexpr>]  s    øè ø€ ÒS¸b˜i×0Ñ0°"°°b×9ÑSùs   ƒ éÿÿÿÿc              3  ó,   K  — | ]  \  }}||z   –— Œ y ­wr+   rA   )rB   rC   Úvs      r.   rE   z?PandasLikeNamespace.concat_str.<locals>.func.<locals>.<genexpr>`  s   è ø€ ÒL™t˜q !�Q˜•UÑLùs   ‚)ru   r¤   r   r˜   r·   r  ÚzipÚ_with_nativeÚ__native_namespace__ro   r£   rc   r�   r™   )rD   r2   rC   r½   rO   Ú	null_maskÚnull_mask_resultÚresultÚ
init_valueÚvaluesÚ
separatorsr
  rP   r¯   r   Ústrings              @€€€€r.   rQ   z,PandasLikeNamespace.concat_str.<locals>.funcD  sT  ù€ Ø+0×D %¹%À»)ÒD°QšAÐD˜AÐDˆLÑDØ.:Ö;¨�a—f‘f˜V•nÐ;ˆFÐ;Ø.:Ö;¨˜Ÿ™�Ð;ˆIÐ;áÜ#)¬(¯,©,¸	Ó#BÐ ÜÓ >ÀÓG×PÑPØ%Ð% tó�ð2 �8ˆOñ%'Ü58¸ÀÐSWÔ5Xô'Ð#�
˜Vð '×3Ñ3Ø×3Ñ3Ó5×<Ñ<Ø!Ø"Ø(×/Ñ/×5Ñ5Ø(×/Ñ/×5Ñ5ð	 =ó ó�	ó TÀIÈcÈrÀNÔS�
ÜÜ—L‘LÙL¤s¨:°vÀdÔ'KÔLØó�ð �8ˆOùó? EùÚ;ùÚ;s   ˆE¥EÁErR   rV   )r:   ÚdtypesÚStringr2   rY   r   r   )r-   r   r¯   rP   rQ   r  s    ``` @r.   Ú
concat_strzPandasLikeNamespace.concat_str?  s\   û€ ð —‘×%Ñ%×,Ñ,Ó.ˆ÷ 	ð  	ðD �z‰z×(Ñ(ØÜ"?ÀÐ"GÜ9¸5ÐAØð	 )ó 
ð 	
r0   c                ój   ‡ ‡— dˆˆ fd„}‰ j                   j                  |t        ‰Ž t        ‰Ž ‰ ¬«      S )Nc                ó†  •‡ ‡— 	 dd l }dd lŠdd lm} ‰j
                  j                  } |t        j                  ˆ fd„‰D «       «      Ž }|d   j                  } |j                  ˆfd„|D «       d|D �cg c]  }|j                  ‘Œ c}iŽ}	‰j                  |	g«      }
‰j                  }‰j                  }|j                  «       }|j                  |j                   j#                  |
«      ||d   j$                  j&                  ¬«      }‰j                  |||¬«      gS # t        $ r}d}t	        |«      |‚d }~ww xY wc c}w )Nr   zgstruct requires pyarrow to be installed for pandas backend. Please install pyarrow: pip install pyarrowc              3  ó.   •K  — | ]  } |‰«      –— Œ y ­wr+   rA   r’   s     €r.   rE   z;PandasLikeNamespace.struct.<locals>.func.<locals>.<genexpr>{  s   øè ø€ Ò/K¸T±°R·Ñ/Kùr”   c              3  óX   •K  — | ]!  }‰j                  |j                  d ¬«      –— Œ# y­w)T)Úfrom_pandasN)rm   r£   )rB   rC   rw   s     €r.   rE   z;PandasLikeNamespace.struct.<locals>.func.<locals>.<genexpr>~  s"   øè ø€ ÒG¸1�"—(‘(˜1Ÿ8™8°�(×6ÑGùs   ƒ'*Úfield_namesra   rÎ   )ri   rj   Úpyarrow.computeÚcomputerk   r4   Ú_align_full_broadcastr   rt   rb   Úmake_structÚchunked_arrayr:   r9   rn   ro   rp   rq   r£   rc   )rD   rv   Úpcrx   ry   ÚalignrO   rb   rC   Ústruct_arrayr  r<   Úimplr~   Úresult_nativerw   rP   r-   s   `              @€€r.   rQ   z(PandasLikeNamespace.struct.<locals>.funcn  s4  ú€ ð	0Û#Û$Ý,ð —L‘L×6Ñ6ˆEÙœE×/Ñ/Ó/KÀUÔ/KÓKÐLˆFØ˜!‘9—>‘>ˆDØ)˜2Ÿ>™>ÛGÀÔGðà-3Ö4¨˜QŸV›VÒ4ñˆLð ×%Ñ% | nÓ5ˆFà—m‘mˆGØ×'Ñ'ˆDØ×)Ñ)Ó+ˆBàŸI™IØ—	‘	×-Ñ-¨fÓ5ØØ˜Q‘i×&Ñ&×,Ñ,ð &ó ˆMð
 —L‘L ¸tÈW�LÓUÐVÐVøô3 ò 0ðBð ô " #Ó&¨CÐ/ûð0üò 5s   …D Á4D>Ä	D;Ä(D6Ä6D;rR   rV   rX   rZ   s   `` r.   ÚstructzPandasLikeNamespace.structm  s>   ù€ ö	Wð@ �z‰z×(Ñ(ØÜ"?ÀÐ"GÜ9¸5ÐAØð	 )ó 
ð 	
r0   Nc                ó@   — |j                   }|€ ||«      S  |||«      S r+   )Úwhere)r-   ÚwhenÚthenÚ	otherwiser-  s        r.   Ú_if_then_elsez!PandasLikeNamespace._if_then_else•  s(   € ð !ŸJ™JˆØ'Ð/‰u�T‹{ÐK±U¸4ÀÓ5KÐKr0   c               ó‚   ‡ ‡‡‡— dˆˆˆˆ fd„}‰ j                   j                  |t        ‰‰«      t        ‰‰«      ‰ ¬«      S )Nc                ó   •— | j                  ‰«      }| j                  ‰«      }‰j                  |j                  |j                  g«      }|j                  ‰¬«      j                  ddgf   }t        |‰j                  ‰j                  ¬«      gS )N)Úmethodr   r#   rÎ   )Ú_evaluate_single_output_exprrð   r£   ÚcorrÚilocr   r9   r:   )	rD   Úa_seriesÚb_seriesr‡   r6  ÚaÚbr4  r-   s	        €€€€r.   rQ   z&PandasLikeNamespace.corr.<locals>.func¡  s„   ø€ Ø×6Ñ6°qÓ9ˆHØ×6Ñ6°qÓ9ˆHØ×)Ñ)¨8¯?©?¸H¿O¹OÐ*LÓMˆCØ—8‘8 6�8Ó*×/Ñ/°°A°3°Ñ7ˆDä Ø¨×)=Ñ)=ÀtÇ}Á}ôðð r0   rR   rV   rX   )r-   r:  r;  r4  rQ   s   ```` r.   r6  zPandasLikeNamespace.corrž  sE   û€ ÷		ð 		ð �z‰z×(Ñ(ØÜ"?ÀÀ1Ó"EÜ9¸!¸QÓ?Øð	 )ó 
ð 	
r0   )rW   ztype[PandasLikeDataFrame])rW   ztype[PandasLikeExpr])rW   ztype[PandasLikeSeries])rW   r   )r;   r   r<   r   rW   ÚNone)rP   r   rW   r   )r‚   r    r�   zIntoDType | NonerW   r   )rW   r   )rP   r   r¯   ÚboolrW   r   )rW   z._NativeConcat[NativeDataFrameT, NativeSeriesT])rå   zSequence[NativeDataFrameT]rW   r   )rå   z*Sequence[NativeDataFrameT | NativeSeriesT]rW   r   )rP   r   r   Ústrr¯   r=  rW   r   r+   )r.  r   r/  r   r0  zNativeSeriesT | NonerW   r   )r:  r   r;  r   r4  r   rW   r   )Ú__name__Ú
__module__Ú__qualname__Úpropertyr/   r2   r4   r7   r=   r[   rŠ   r�   rœ   r²   r¸   r¿   rÓ   rÚ   rÜ   ræ   rð   rü   r  r+  r1  r6  rA   r0   r.   r)   r)   )   sp  „ ð ò#ó ð#ð òó ðð ò ó ð ð ò<ó ð<ó ó
ó/
ób
ó
ð
Ø$ð
Ø48ð
à	ó
ð<
Ø$ð
Ø48ð
à	ó
ó<
ó
ó(
ð( òAó ðAó0ð
2Ø=ð2à	ó2ó0ð",
Ø$ð,
Ø14ð,
ØDHð,
à	ó,
ó\&
ðX +/ð	LàðLð ðLð (ð	Lð
 
óLð
Øð
Ø$2ð
Ø?Pð
à	ô
r0   r)   c                  óÀ   — e Zd Zeddœ	 	 	 	 	 	 	 d	d„«       Zeddœ	 	 	 	 	 	 	 d
d„«       Zeddœ	 	 	 	 	 	 	 dd„«       Zeddœ	 	 	 	 	 	 	 dd„«       Zddœ	 	 	 	 	 	 	 dd„Zy)Ú_NativeConcat.)rá   c                ó   — y r+   rA   ©r-   ÚobjsrÍ   rá   s       r.   Ú__call__z_NativeConcat.__call__µ  ó   € ð r0   c                ó   — y r+   rA   rF  s       r.   rH  z_NativeConcat.__call__½  s   € ð r0   c                ó   — y r+   rA   rF  s       r.   rH  z_NativeConcat.__call__Á  rI  r0   c                ó   — y r+   rA   rF  s       r.   rH  z_NativeConcat.__call__É  s   € ð ,/r0   Nc                ó   — y r+   rA   rF  s       r.   rH  z_NativeConcat.__call__Ò  s   € ð ,/r0   )rG  zIterable[NativeDataFrameT]rÍ   r"   rá   úbool | NonerW   r   )rG  zIterable[NativeSeriesT]rÍ   r"   rá   rN  rW   r   )rG  ú*Iterable[NativeDataFrameT | NativeSeriesT]rÍ   r$   rá   rN  rW   r   )rG  rO  rÍ   r%   rá   rN  rW   z NativeDataFrameT | NativeSeriesT)r?  r@  rA  r   rH  rA   r0   r.   rD  rD  ´  s$  „ Øð  ñà(ðð ð	ð
 ðð 
òó ðð àUXñØ+ðØ6?ðØGRðà	òó ðð ð  ñà8ðð ð	ð
 ðð 
òó ðð ð  ñ/à8ð/ð ð	/ð
 ð/ð 
*ò/ó ð/ð !ñ/à8ð/ð ð	/ð
 ð/ð 
*ô/r0   rD  )4Ú
__future__r   r˜   rì   Ú	functoolsr   Ú	itertoolsr   Útypingr   r   r	   r
   r   Únarwhals._compliantr   Únarwhals._expression_parsingr   r   Únarwhals._pandas_like.dataframer   Únarwhals._pandas_like.exprr   Únarwhals._pandas_like.selectorsr   Únarwhals._pandas_like.seriesr   Únarwhals._pandas_like.typingr   r   Únarwhals._pandas_like.utilsr   Úcollections.abcr   r   r   Únarwhals._utilsr   r   Únarwhals.typingr   r   r    r!   Ú__annotations__r"   r$   r%   r&   r'   r)   rD  rA   r0   r.   ú<module>r`     sÞ   ðÞ "ã Û Ý Ý ß BÕ Bå .÷õ @Ý 5Ý CÝ 9ß HÝ ?áß2Ý ç7ßKÑKð €
ˆIÓ Ø >ð ˜q‘z€	ˆ9Ó !Ø  ™€ˆYÓ #Ø˜) [Ð0Ñ1€€iÓ 1à€ˆ)Ó Ø€
ˆKÓ ôH
ØØØØØØð		ñôH
ôV$/�HÐ-¨}Ð<Ñ=õ $/r0   