ó
    Ñ]jÛ  ã                  óô  • S r SSKJr  SSKrSSKJr  SSKJr  Sr SSK	r
\" \" \
R                  5      R                  5      r\\" S5      :  r\\" S5      :  r\\" S	5      :  r\\" S
5      :  r\\" S5      :  r\\" S5      :  r\\" S5      :  r\\" S5      :  r\\" S5      :  r\\" S5      :  r\\" S5      :  rSr\\" \5      :¬  r      SS jrg! \ a    SrSrSrSrSrSrSrSrSrSrSrSrSr N.f = f)z-support pyarrow compatibility across versionsé    )ÚannotationsN)ÚAny)ÚVersionz13.0.0z14.0.0z14.0.1z15.0.0z16.0.0z17.0.0z18.0.0z19.0.0z20.0.0z21.0.0z22.0.0z23.0.0TFc           
     ó¶  ^• SSK Jm  [        R                  S;   n[        =(       a!    U=(       a    [
        (       + =(       a    [        nU(       a/  [        U[        R                  [        R                  45      (       a  TR                  X5      $ [        R                  " XR                  S9n[        R                  R                  U R                  5      (       ae  SU4S jjn[        U [        R                  5      (       a6  [        R                   " U R"                   Vs/ s H
  oe" Xd5      PM     sn5      $ U" X5      $ [        U [        R                  5      (       aP  [        R                   " U R"                   Vs/ s H$  nTR%                  TR'                  U5      XF5      PM&     sn5      $ TR%                  TR'                  U 5      X@5      $ s  snf s  snf )a&  
Safe wrapper for pyarrow.compute.fill_null with fallback for Windows + pyarrow 21.

pyarrow 21.0.0 on Windows has a bug in fill_null that incorrectly fills null values.
This function uses a fallback implementation for that specific case, otherwise uses
the standard pyarrow.compute.fill_null.

Parameters
----------
arr : pyarrow.Array | pyarrow.ChunkedArray
    Input array with potential null values.
fill_value : Any
    Value to fill nulls with.

Returns
-------
pyarrow.Array | pyarrow.ChunkedArray
    Array with nulls filled with fill_value.
r   N)Úwin32Úcygwin©Útypec                ó¬   >• TR                  U 5      n[        R                  " SU R                  S9nTR	                  X#U 5      nTR	                  X!U5      $ )Nr   r	   )Úis_nullÚpaÚscalarr
   Úif_else)ÚarrÚfill_scalarÚmaskÚzero_durationÚ
arr_zeroedÚpcs        €ÚR/home/mande/repo/quber/.venv/lib/python3.13/site-packages/pandas/compat/pyarrow.pyÚfill_null_durationÚ+_safe_fill_null.<locals>.fill_null_durationO   sE   ø€ Ø—:‘:˜c“?ˆDÜŸIšI a¨c¯h©hÑ7ˆMØŸ™ D¸Ó=ˆJØ—:‘:˜d°Ó<Ð<ó    )r   úpa.Arrayr   z	pa.ScalarÚreturnr   )Úpyarrow.computeÚcomputeÚsysÚplatformÚHAS_PYARROWÚpa_version_under21p0Úpa_version_under22p0Ú
isinstancer   ÚArrayÚChunkedArrayÚ	fill_nullr   r
   ÚtypesÚis_durationÚchunked_arrayÚchunksr   r   )r   Ú
fill_valueÚ
is_windowsÚuse_fallbackr   r   Úchunkr   s          @r   Ú_safe_fill_nullr/   ,   sT  ø€ õ, !ä—‘Ð!4Ñ4€Jä×X˜
×XÔ+?Ô'?×XÔDXð ö œ: j´2·8±8¼R¿_¹_Ð2M×NÑNØ�|‰|˜CÓ,Ð,ä—)’)˜J¯X©XÑ6€Kä	‡x�x×Ñ˜CŸH™H×%Ñ%÷	=ô �cœ2Ÿ?™?×+Ñ+Ü×#Ò#ØEHÇZÂZÓPÂZ¸EÐ# EÖ7ÁZÑPóð ñ " #Ó3Ð3ä�#”r—‘×'Ñ'Ü×ÒØLOÏJÊJÓWÊJÀ5ˆR�Z‰Z˜Ÿ
™
 5Ó)¨;Ö>ÉJÑWó
ð 	
ð �:‰:�b—j‘j “o {Ó8Ð8ùò Qùò Xs   Ä!GÅ>+G)r   úpa.Array | pa.ChunkedArrayr+   r   r   r0   )Ú__doc__Ú
__future__r   r   Útypingr   Úpandas.util.versionr   ÚPYARROW_MIN_VERSIONÚpyarrowr   Ú__version__Úbase_versionÚ_palvÚpa_version_under14p0Úpa_version_under14p1Úpa_version_under15p0Úpa_version_under16p0Úpa_version_under17p0Úpa_version_under18p0Úpa_version_under19p0Úpa_version_under20p0r!   r"   Úpa_version_under23p0ÚPYARROW_INSTALLEDr    ÚImportErrorr/   © r   r   Ú<module>rF      s|  ðÙ 3å "ã 
Ý å 'àÐ ðÛá‘G˜BŸN™NÓ+×8Ñ8Ó9€EØ ¡7¨8Ó#4Ñ4ÐØ ¡7¨8Ó#4Ñ4ÐØ ¡7¨8Ó#4Ñ4ÐØ ¡7¨8Ó#4Ñ4ÐØ ¡7¨8Ó#4Ñ4ÐØ ¡7¨8Ó#4Ñ4ÐØ ¡7¨8Ó#4Ñ4ÐØ ¡7¨8Ó#4Ñ4ÐØ ¡7¨8Ó#4Ñ4ÐØ ¡7¨8Ó#4Ñ4ÐØ ¡7¨8Ó#4Ñ4ÐØÐØ™7Ð#6Ó7Ñ7€Kð"39Ø	#ð39Ø14ð39àõ39øð! ó ØÐØÐØÐØÐØÐØÐØÐØÐØÐØÐØÐØÐØ‚Kðús   œB,C Ã C7Ã6C7