ó
    a‡Ej;_  ã                   óv  • S SK JrJrJrJrJrJrJrJrJ	r	J
r
JrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJ r J!r!J"r"J#r#J$r$J%r%J&r&J'r'J(r(J)r)J*r*J+r+J,r,J-r-J.r.J/r/J0r0J1r1J2r2J3r3J4r4J5r5J6r6J7r7J8r8J9r9J:r:J;r;J<r<J=r=J>r>J?r?J@r@JArAJBrBJCrCJDrDJErEJFrFJGrGJHrHJIrIJJrJJKrKJLrLJMrMJNrNJOrOJPrP  S SKQJRrR  S SKSrSS SKTJUrU  S SKVrVS SKWrXS SKWJYrY  S SKZJ[r[  S r\\R" SS	5      r]S
 r^S r_S r`S raS rbS rcS rdS re\e" 5         \f" 5       S   =rgrhS!S jriS"SS.S jjrjSSS.S jrkS rlS#SS.S jjrmS#SS.S jjrnSSSS.S jroS rpS  rqg)$é    )PÚFunctionÚFunctionOptionsÚFunctionRegistryÚHashAggregateFunctionÚHashAggregateKernelÚKernelÚScalarAggregateFunctionÚScalarAggregateKernelÚScalarFunctionÚScalarKernelÚVectorFunctionÚVectorKernelÚArraySortOptionsÚAssumeTimezoneOptionsÚCastOptionsÚCountOptionsÚCumulativeOptionsÚCumulativeSumOptionsÚDayOfWeekOptionsÚDictionaryEncodeOptionsÚRunEndEncodeOptionsÚElementWiseAggregateOptionsÚExtractRegexOptionsÚExtractRegexSpanOptionsÚFilterOptionsÚIndexOptionsÚInversePermutationOptionsÚJoinOptionsÚListSliceOptionsÚListFlattenOptionsÚMakeStructOptionsÚMapLookupOptionsÚMatchSubstringOptionsÚModeOptionsÚNullOptionsÚ
PadOptionsÚPairwiseOptionsÚPartitionNthOptionsÚPivotWiderOptionsÚQuantileOptionsÚRandomOptionsÚRankOptionsÚRankQuantileOptionsÚReplaceSliceOptionsÚReplaceSubstringOptionsÚRoundBinaryOptionsÚRoundOptionsÚRoundTemporalOptionsÚRoundToMultipleOptionsÚScalarAggregateOptionsÚScatterOptionsÚSelectKOptionsÚSetLookupOptionsÚSkewOptionsÚSliceOptionsÚSortOptionsÚSplitOptionsÚSplitPatternOptionsÚStrftimeOptionsÚStrptimeOptionsÚStructFieldOptionsÚTakeOptionsÚTDigestOptionsÚTrimOptionsÚUtf8NormalizeOptionsÚVarianceOptionsÚWeekOptionsÚWinsorizeOptionsÚZeroFillOptionsÚcall_functionÚfunction_registryÚget_functionÚlist_functionsÚcall_tabular_functionÚregister_scalar_functionÚregister_tabular_functionÚregister_aggregate_functionÚregister_vector_functionÚ
UdfContextÚ
Expression)Ú
namedtupleN)Údedent)Ú_compute_docstrings)Ú	docscrapec                 ó.   • U R                   R                  $ ©N)Ú_docÚ	arg_names)Úfuncs    ÚL/home/mande/repo/quber/.venv/lib/python3.13/site-packages/pyarrow/compute.pyÚ_get_arg_namesr]   s   s   € Ø�9‰9×ÑÐó    Ú_OptionsClassDoc)Úparamsc                 ó‚   • U R                   (       d  g [        R                  " U R                   5      n[        US   5      $ )NÚ
Parameters)Ú__doc__rV   ÚNumpyDocStringr_   )Úoptions_classÚdocs     r\   Ú_scrape_options_class_docrg   z   s4   € Ø× × ØÜ
×
"Ò
" =×#8Ñ#8Ó
9€CÜ˜C Ñ-Ó.Ð.r^   c                 ó  • UR                   n[        UR                  UR                  UR                  UR
                  S9U l        Xl        Xl        / nUR                  nU(       d'  UR                  S:”  a  SOSnSUR                  < SU 3nUR                  U S35        UR                  nU(       a  UR                  U S35        [        R                  R                  UR                  5      n	UR                  [        S	5      5        [!        U5      n
U
 H@  nUR"                  S
;   a  SnOSnUR                  U SU S35        UR                  S5        MB     UGbC  [%        U5      nU(       ag  UR&                   HV  nUR                  UR                   SUR(                   S35        UR*                   H  nUR                  SU S35        M     MX     O¢[,        R.                  " SUR                   S3[0        5        [2        R4                  " U5      nUR6                  R9                  5        HE  nUR                  [        SUR                   SUR                   SUR                   S35      5        MG     UR                  [        SUR                   S35      5        UR                  [        S5      5        U	b/  [        U	5      R;                  S5      nUR                  SU S35        SR=                  U5      U l        U $ )N)ÚnameÚarityre   Úoptions_requiredé   Ú	argumentsÚargumentzCall compute function z with the given z.

z

z.        Parameters
        ----------
        )ÚvectorÚscalar_aggregatez
Array-likezArray-like or scalar-likez : Ú
z"    Argument to compute function.
z    zOptions class z does not have a docstringz                z. : optional
                    Parameter for z7 constructor. Either `options`
                    or `z@` can be passed, but not both at the same time.
                z&            options : pyarrow.compute.zK, optional
                Alternative way of passing options.
            z‰        memory_pool : pyarrow.MemoryPool, optional
            If not passed, will allocate memory from the default memory pool.
        Ú ) rY   Údictri   rj   re   rk   Ú__arrow_compute_function__Ú__name__Ú__qualname__ÚsummaryÚappendÚdescriptionrU   Úfunction_doc_additionsÚgetrT   r]   Úkindrg   r`   ÚtypeÚdescÚwarningsÚwarnÚRuntimeWarningÚinspectÚ	signatureÚ
parametersÚvaluesÚstripÚjoinrc   )ÚwrapperÚexposed_namer[   re   Úcpp_docÚ
doc_piecesrw   Úarg_strry   Údoc_additionrZ   Úarg_nameÚarg_typeÚoptions_class_docÚpÚsÚoptions_sigÚstrippeds                     r\   Ú_decorate_compute_functionr•   �   sí  € ð �i‰i€Gä)-Ø�Y‰YØ�j‰jØ×+Ñ+Ø ×1Ñ1ñ	*3€GÔ&ð
 $ÔØ'Ôà€Jð �o‰o€GÞØ!%§¡¨a£‘+°ZˆØ*¨4¯9©9©-Ð7GÈÀyÐQˆà×Ñ˜˜	 Ð'Ô(ð ×%Ñ%€KÞØ×Ñ˜[˜M¨Ð.Ô/ä&×=Ñ=×AÑAÀ$Ç)Á)ÓL€Lð ×Ñ”fð ó ô ô ˜tÓ$€IÛˆØ�9‰9Ð6Ó6Ø#‰Hà2ˆHØ×Ñ˜X˜J c¨(¨°2Ð6Ô7Ø×ÑÐ?Ö@ñ ð Ò Ü5°mÓDÐÞØ&×-Ô-�Ø×!Ñ! Q§V¡V H¨C°·±¨x°rÐ":Ô;ØŸœ�AØ×%Ñ%¨¨Q¨C¨r lÖ3ó  ò .ô
 �MŠM˜N¨=×+AÑ+AÐ*Bð C6ð 7Ü8FôHä!×+Ò+¨MÓ:ˆKØ ×+Ñ+×2Ñ2Ö4�Ø×!Ñ!¤&ð .Ø—‘�ð #Ø#0×#9Ñ#9Ð":ð ;ØŸ™˜ð !ð*ó #ö ñ 5ð 	×Ñœ&ð &'Ø'4×'=Ñ'=Ð&>ð ?ð"ó ô 	ð
 ×Ñ”fð ó ô ð ÑÜ˜,Ó'×-Ñ-¨dÓ3ˆØ×Ñ˜B˜x˜j¨Ð+Ô,à—g‘g˜jÓ)€G„OØ€Nr^   c                 ó¸   • U R                   R                  nU(       d  g  [        5       U   $ ! [         a"    [        R
                  " SU S3[        5         g f = f)NzPython binding for z not exposed)rY   re   ÚglobalsÚKeyErrorr   r€   r�   )r[   Ú
class_names     r\   Ú_get_options_classrš   Ô   sV   € Ø—‘×(Ñ(€JÞØðÜ‹y˜Ñ$Ð$øÜó Ü�ŠÐ+¨J¨<°|ÐDÜ$ô	&áðús    - ­)AÁAc           
      óö   • U(       d  U(       a  Ub  [        SU < S35      eU" U0 UD6$ UbM  [        U[        5      (       a  U" S0 UD6$ [        X!5      (       a  U$ [        SU < SU S[        U5       35      eg )Nz	Function z@ called with both an 'options' argument and additional argumentsz expected a z parameter, got © )Ú	TypeErrorÚ
isinstancers   r}   )ri   re   ÚoptionsÚargsÚkwargss        r\   Ú_handle_optionsr¢   à   s    € ÞŽvØÑÜØ˜D™8ð $+ð ,ó-ð -ñ ˜dÐ- fÑ-Ð-àÑÜ�gœt×$Ñ$Ù Ñ+ 7Ñ+Ð+Ü˜×/Ñ/ØˆNÜØ˜‘x˜|¨M¨?ð ;Ü˜“=�/ð#ó$ð 	$ð r^   c                 óL   ^ ^^^• Tc  S S.UUU 4S jjnU$ S S S.UUU U4S jjnU$ )N©Úmemory_poolc           	      ó  >• T[         La,  [        U5      T:w  a  [        T ST S[        U5       S35      eU(       a8  [        US   [        5      (       a   [        R
                  " T[        U5      5      $ TR                  US U 5      $ )Nú takes ú positional argument(s), but ú were givenr   )ÚEllipsisÚlenr�   rž   rR   Ú_callÚlistÚcall)r¥   r    rj   r[   Ú	func_names     €€€r\   rˆ   Ú&_make_generic_wrapper.<locals>.wrapperö   s‚   ø€ ØœHÒ$¬¨T«°eÓ);ÜØ �k ¨¨ð 0Ü˜t›9˜+ [ð2óð ö œ
 4¨¡7¬J×7Ñ7Ü!×'Ò'¨	´4¸³:Ó>Ð>Ø—9‘9˜T 4¨Ó5Ð5r^   )r¥   rŸ   c           	      óH  >• T[         La7  [        U5      T:  a  [        T ST S[        U5       S35      eUTS  nUS T nOSn[        TTUXC5      nU(       a9  [	        US   [
        5      (       a!  [
        R                  " T[        U5      U5      $ TR                  X!U 5      $ )Nr§   r¨   r©   rœ   r   )	rª   r«   r�   r¢   rž   rR   r¬   r­   r®   )	r¥   rŸ   r    r¡   Úoption_argsrj   r[   r¯   re   s	        €€€€r\   rˆ   r°      s±   ø€ ØœHÒ$Ü�t“9˜uÓ$Ü#Ø$˜+ W¨U¨Gð 4Ü" 4›y˜k¨ð6óð ð # 5 6˜l�Ø˜F˜U�|‘à �Ü% i°ÀØ&1ó;ˆGæœ
 4¨¡7¬J×7Ñ7Ü!×'Ò'¨	´4¸³:¸wÓGÐGØ—9‘9˜T¨KÓ8Ð8r^   rœ   )r¯   r[   re   rj   rˆ   s   ```` r\   Ú_make_generic_wrapperr³   ô   s5   û€ ØÑØ'+÷ 	6ò 	6ð4 €Nð! (,°T÷ 	9ó 	9ð  €Nr^   c                 ó�  • SSK Jn  / nU  H$  nUR                  U" XSR                  5      5        M&     U H$  nUR                  U" XSR                  5      5        M&     Ub±  [         R
                  " U5      nUR                  R                  5        H\  nUR                  UR                  UR                  4;   d   eU(       a  UR                  UR                  S9nUR                  U5        M^     UR                  U" SUR                  S S95        UR                  U" SUR                  S S95        [         R                  " U5      $ )Nr   )Ú	Parameter)r|   rŸ   )Údefaultr¥   )r‚   rµ   rx   ÚPOSITIONAL_ONLYÚVAR_POSITIONALrƒ   r„   r…   r|   ÚPOSITIONAL_OR_KEYWORDÚKEYWORD_ONLYÚreplaceÚ	Signature)rZ   Úvar_arg_namesre   rµ   r`   ri   r“   r‘   s           r\   Ú_make_signaturer¾     s  € Ý!Ø€FÛˆØ�‰‘i ×&?Ñ&?Ó@ÖAñ ãˆØ�‰‘i ×&>Ñ&>Ó?Ö@ñ àÑ Ü×'Ò'¨Ó6ˆØ×'Ñ'×.Ñ.Ö0ˆAØ—6‘6˜i×=Ñ=Ø'×4Ñ4ð6ó 6ð 6ð 6æà—I‘I 9×#9Ñ#9�IÐ:�Ø�M‰M˜!Öñ 1ð 	�‰‘i 	¨9×+AÑ+AØ(,ñ.ô 	/à
‡M�M‘)˜M¨9×+AÑ+AØ$(ñ*ô +ä×Ò˜VÓ$Ð$r^   c                 ó  • [        U5      n[        U5      nU=(       a    US   R                  S5      nU(       a!  UR                  5       R	                  S5      /nO/ n[        XX!R                  S9n[        X5U5      Ul        [        X`X5      $ )NéÿÿÿÿÚ*)rj   )
rš   r]   Ú
startswithÚpopÚlstripr³   rj   r¾   Ú__signature__r•   )ri   r[   re   rZ   Ú
has_varargr½   rˆ   s          r\   Ú_wrap_functionrÇ   *  s‚   € Ü& tÓ,€MÜ˜tÓ$€IØ×<˜y¨™}×7Ñ7¸Ó<€JÞØ"Ÿ™›×/Ñ/°Ó4Ð5‰àˆä#Ø�M¯©ñ5€Gä+¨IØ,9ó;€GÔä% g°TÓIÐIr^   c                  óJ  • [        5       n [        5       nSSS.nUR                  5        Hv  nUR                  X35      nUR	                  U5      nUR
                  S:X  a  M7  UR
                  S:X  a  UR                  S:X  a  MY  X@;  d   U5       e[        XE5      =X'   X'   Mx     g)z›
Make global functions wrapping each compute function.

Note that some of the automatically-generated wrappers may be overridden
by custom versions below.
Úand_Úor_)ÚandÚorÚhash_aggregaterp   r   N)r—   rI   rK   r{   rJ   r|   rj   rÇ   )ÚgÚregÚrewritesÚcpp_nameri   r[   s         r\   Ú_make_global_functionsrÒ   :  s¥   € ô 	‹	€AÜ
Ó
€Cð Øñ€Hð ×&Ñ&Ö(ˆØ�|‰|˜HÓ/ˆØ×Ñ Ó)ˆØ�9‰9Ð(Ó(ñ Ø�9‰9Ð*Ó*¨t¯z©z¸Q«ñ Ø‹}Ð"˜dÓ"ˆ}Ü .¨tÓ :Ð:ˆ‰�a“gò )r^   Úutf8_zero_fillc                 ó"  • USL=(       d    USLnU(       a  Ub  [        S5      eUc[  [        R                  R                  R	                  U5      nUSL a  [
        R                  " U5      nO[
        R                  " U5      n[        SU /X45      $ )aÖ  
Cast array values to another data type. Can also be invoked as an array
instance method.

Parameters
----------
arr : Array-like
target_type : DataType or str
    Type to cast to
safe : bool, default True
    Check for overflows or other unsafe conversions
options : CastOptions, default None
    Additional checks pass by CastOptions
memory_pool : MemoryPool, optional
    memory pool to use for allocations during function execution.

Examples
--------
>>> from datetime import datetime
>>> import pyarrow as pa
>>> arr = pa.array([datetime(2010, 1, 1), datetime(2015, 1, 1)])
>>> arr.type
TimestampType(timestamp[us])

You can use ``pyarrow.DataType`` objects to specify the target type:

>>> cast(arr, pa.timestamp('ms'))
<pyarrow.lib.TimestampArray object at ...>
[
  2010-01-01 00:00:00.000,
  2015-01-01 00:00:00.000
]

>>> cast(arr, pa.timestamp('ms')).type
TimestampType(timestamp[ms])

Alternatively, it is also supported to use the string aliases for these
types:

>>> arr.cast('timestamp[ms]')
<pyarrow.lib.TimestampArray object at ...>
[
  2010-01-01 00:00:00.000,
  2015-01-01 00:00:00.000
]
>>> arr.cast('timestamp[ms]').type
TimestampType(timestamp[ms])

Returns
-------
casted : Array
    The cast result as a new Array
NzRMust either pass values for 'target_type' and 'safe' or pass a value for 'options'FÚcast)	Ú
ValueErrorÚpaÚtypesÚlibÚensure_typer   ÚunsafeÚsaferH   )ÚarrÚtarget_typerÜ   rŸ   r¥   Úsafe_vars_passeds         r\   rÕ   rÕ   \  s‹   € ðl  DÐ(×F¨kÀÐ.EÐæ˜WÑ0Üð :ó ;ð 	;ð �Ü—h‘h—l‘l×.Ñ.¨{Ó;ˆØ�5Š=Ü!×(Ò(¨Ó5‰Gä!×&Ò& {Ó3ˆGÜ˜ # ¨Ó=Ð=r^   r¤   c                ób  • Ub*  Ub  U R                  X#U-
  5      n O'U R                  U5      n OUb  U R                  SU5      n [        U[        R                  5      (       d  [        R                  " XR
                  S9nOGU R
                  UR
                  :w  a-  [        R                  " UR                  5       U R
                  S9n[        US9n[        SU /XT5      nUbM  UR                  5       S:¼  a9  [        R                  " UR                  5       U-   [        R                  " 5       S9nU$ )a¨  
Find the index of the first occurrence of a given value.

Parameters
----------
data : Array-like
value : Scalar-like object
    The value to search for.
start : int, optional
end : int, optional
memory_pool : MemoryPool, optional
    If not passed, will allocate memory from the default memory pool.

Returns
-------
index : int
    the index, or -1 if not found

Examples
--------
>>> import pyarrow as pa
>>> import pyarrow.compute as pc
>>> arr = pa.array(["Lorem", "ipsum", "dolor", "sit", "Lorem", "ipsum"])
>>> pc.index(arr, "ipsum")
<pyarrow.Int64Scalar: 1>
>>> pc.index(arr, "ipsum", start=2)
<pyarrow.Int64Scalar: 5>
>>> pc.index(arr, "amet")
<pyarrow.Int64Scalar: -1>
r   ©r}   ©ÚvalueÚindex)
Úslicerž   r×   ÚScalarÚscalarr}   Úas_pyr   rH   Úint64)Údatarã   ÚstartÚendr¥   rŸ   Úresults          r\   rä   rä   ¡  sä   € ð> ÑØ‰?Ø—:‘:˜e¨5¡[Ó1‰Dà—:‘:˜eÓ$‰DØ	‰Ø�z‰z˜!˜SÓ!ˆä�eœRŸY™Y×'Ñ'Ü—	’	˜%§i¡iÑ0‰Ø	�‰�e—j‘jÓ	 Ü—	’	˜%Ÿ+™+›-¨d¯i©iÑ8ˆÜ Ñ'€GÜ˜7 T F¨GÓA€FØÑ˜VŸ\™\›^¨qÓ0Ü—’˜6Ÿ<™<›>¨EÑ1¼¿º»
ÑCˆØ€Mr^   T)Úboundscheckr¥   c                ó0   • [        US9n[        SX/XC5      $ )a  
Select values (or records) from array- or table-like data given integer
selection indices.

The result will be of the same type(s) as the input, with elements taken
from the input array (or record batch / table fields) at the given
indices. If an index is null then the corresponding value in the output
will be null.

Parameters
----------
data : Array, ChunkedArray, RecordBatch, or Table
indices : Array, ChunkedArray
    Must be of integer type
boundscheck : boolean, default True
    Whether to boundscheck the indices. If False and there is an out of
    bounds index, will likely cause the process to crash.
memory_pool : MemoryPool, optional
    If not passed, will allocate memory from the default memory pool.

Returns
-------
result : depends on inputs
    Selected values for the given indices

Examples
--------
>>> import pyarrow as pa
>>> arr = pa.array(["a", "b", "c", None, "e", "f"])
>>> indices = pa.array([0, None, 4, 3])
>>> arr.take(indices)
<pyarrow.lib.StringArray object at ...>
[
  "a",
  null,
  "e",
  null
]
)rî   Útake)r@   rH   )rê   Úindicesrî   r¥   rŸ   s        r\   rð   rð   Ó  s    € ôP  kÑ2€GÜ˜ $ °'ÓGÐGr^   c                 ód  • [        U[        R                  [        R                  [        R                  45      (       d  [        R
                  " XR                  S9nOGU R                  UR                  :w  a-  [        R
                  " UR                  5       U R                  S9n[        SX/5      $ )a¹  Replace each null element in values with a corresponding
element from fill_value.

If fill_value is scalar-like, then every null element in values
will be replaced with fill_value. If fill_value is array-like,
then the i-th element in values will be replaced with the i-th
element in fill_value.

The fill_value's type must be the same as that of values, or it
must be able to be implicitly casted to the array's type.

This is an alias for :func:`coalesce`.

Parameters
----------
values : Array, ChunkedArray, or Scalar-like object
    Each null element is replaced with the corresponding value
    from fill_value.
fill_value : Array, ChunkedArray, or Scalar-like object
    If not same type as values, will attempt to cast.

Returns
-------
result : depends on inputs
    Values with all null elements replaced

Examples
--------
>>> import pyarrow as pa
>>> arr = pa.array([1, 2, None, 3], type=pa.int8())
>>> fill_value = pa.scalar(5, type=pa.int8())
>>> arr.fill_null(fill_value)
<pyarrow.lib.Int8Array object at ...>
[
  1,
  2,
  5,
  3
]
>>> arr = pa.array([1, 2, None, 4, None])
>>> arr.fill_null(pa.array([10, 20, 30, 40, 50]))
<pyarrow.lib.Int64Array object at ...>
[
  1,
  2,
  30,
  4,
  50
]
rá   Úcoalesce)	rž   r×   ÚArrayÚChunkedArrayræ   rç   r}   rè   rH   )r…   Ú
fill_values     r\   Ú	fill_nullr÷   ÿ  st   € ôf �j¤2§8¡8¬R¯_©_¼b¿i¹iÐ"H×IÑIÜ—Y’Y˜z·±Ñ<‰
Ø	�‰˜
Ÿ™Ó	'Ü—Y’Y˜z×/Ñ/Ó1¸¿¹ÑDˆ
ä˜ fÐ%9Ó:Ð:r^   c                óÚ   • Uc  / n[        U [        R                  [        R                  45      (       a  UR	                  S5        O[        S U5      n[        X5      n[        SU /XC5      $ )a<  
Select the indices of the top-k ordered elements from array- or table-like
data.

This is a specialization for :func:`select_k_unstable`. Output is not
guaranteed to be stable.

Parameters
----------
values : Array, ChunkedArray, RecordBatch, or Table
    Data to sort and get top indices from.
k : int
    The number of `k` elements to keep.
sort_keys : List-like
    Column key names to order by when input is table-like data.
memory_pool : MemoryPool, optional
    If not passed, will allocate memory from the default memory pool.

Returns
-------
result : Array
    Indices of the top-k ordered elements

Examples
--------
>>> import pyarrow as pa
>>> import pyarrow.compute as pc
>>> arr = pa.array(["a", "b", "c", None, "e", "f"])
>>> pc.top_k_unstable(arr, k=3)
<pyarrow.lib.UInt64Array object at ...>
[
  5,
  4,
  2
]
)ÚdummyÚ
descendingc                 ó
   • U S4$ )Nrú   rœ   ©Úkey_names    r\   Ú<lambda>Ú top_k_unstable.<locals>.<lambda>d  s	   € ¨(°LÑ)Ar^   Úselect_k_unstable©rž   r×   rô   rõ   rx   Úmapr6   rH   ©r…   ÚkÚ	sort_keysr¥   rŸ   s        r\   Útop_k_unstabler  :  sb   € ðJ ÑØˆ	Ü�&œ2Ÿ8™8¤R§_¡_Ð5×6Ñ6Ø×ÑÐ0Õ1äÑAÀ9ÓMˆ	Ü˜QÓ*€GÜÐ,¨v¨h¸ÓMÐMr^   c                óÚ   • Uc  / n[        U [        R                  [        R                  45      (       a  UR	                  S5        O[        S U5      n[        X5      n[        SU /XC5      $ )aS  
Select the indices of the bottom-k ordered elements from
array- or table-like data.

This is a specialization for :func:`select_k_unstable`. Output is not
guaranteed to be stable.

Parameters
----------
values : Array, ChunkedArray, RecordBatch, or Table
    Data to sort and get bottom indices from.
k : int
    The number of `k` elements to keep.
sort_keys : List-like
    Column key names to order by when input is table-like data.
memory_pool : MemoryPool, optional
    If not passed, will allocate memory from the default memory pool.

Returns
-------
result : Array of indices
    Indices of the bottom-k ordered elements

Examples
--------
>>> import pyarrow as pa
>>> import pyarrow.compute as pc
>>> arr = pa.array(["a", "b", "c", None, "e", "f"])
>>> pc.bottom_k_unstable(arr, k=3)
<pyarrow.lib.UInt64Array object at ...>
[
  0,
  1,
  2
]
)rù   Ú	ascendingc                 ó
   • U S4$ )Nr  rœ   rü   s    r\   rþ   Ú#bottom_k_unstable.<locals>.<lambda>“  s	   € ¨(°KÑ)@r^   r   r  r  s        r\   Úbottom_k_unstabler  i  sb   € ðJ ÑØˆ	Ü�&œ2Ÿ8™8¤R§_¡_Ð5×6Ñ6Ø×ÑÐ/Õ0äÑ@À)ÓLˆ	Ü˜QÓ*€GÜÐ,¨v¨h¸ÓMÐMr^   Úsystem)ÚinitializerrŸ   r¥   c                ó,   • [        US9n[        S/ X#U S9$ )aú  
Generate numbers in the range [0, 1).

Generated values are uniformly-distributed, double-precision
in range [0, 1). Algorithm and seed can be changed via RandomOptions.

Parameters
----------
n : int
    Number of values to generate, must be greater than or equal to 0
initializer : int or str
    How to initialize the underlying random generator.
    If an integer is given, it is used as a seed.
    If "system" is given, the random generator is initialized with
    a system-specific source of (hopefully true) randomness.
    Other values are invalid.
options : pyarrow.compute.RandomOptions, optional
    Alternative way of passing options.
memory_pool : pyarrow.MemoryPool, optional
    If not passed, will allocate memory from the default memory pool.
)r  Úrandom)Úlength)r+   rH   )Únr  rŸ   r¥   s       r\   r  r  ˜  s   € ô, ¨Ñ4€GÜ˜ 2 wÀAÑFÐFr^   c                  óT  • [        U 5      nUS:X  a‚  [        U S   [        [        45      (       a  [        R
                  " U S   5      $ [        U S   [        5      (       a  [        R                  " U S   5      $ [        S[        U S   5       35      e[        R                  " U 5      $ )a�  Reference a column of the dataset.

Stores only the field's name. Type and other information is known only when
the expression is bound to a dataset having an explicit scheme.

Nested references are allowed by passing multiple names or a tuple of
names. For example ``('foo', 'bar')`` references the field named "bar"
inside the field named "foo".

Parameters
----------
*name_or_index : string, multiple strings, tuple or int
    The name or index of the (possibly nested) field the expression
    references to.

Returns
-------
field_expr : Expression
    Reference to the given field

Examples
--------
>>> import pyarrow.compute as pc
>>> pc.field("a")
<pyarrow.compute.Expression a>
>>> pc.field(1)
<pyarrow.compute.Expression FieldPath(1)>
>>> pc.field(("a", "b"))
<pyarrow.compute.Expression FieldRef.Nested(FieldRef.Name(a) ...
>>> pc.field("a", "b")
<pyarrow.compute.Expression FieldRef.Nested(FieldRef.Name(a) ...
rl   r   zCfield reference should be str, multiple str, tuple or integer, got )
r«   rž   ÚstrÚintrR   Ú_fieldÚtupleÚ_nested_fieldr�   r}   )Úname_or_indexr  s     r\   Úfieldr  ²  s¤   € ôB 	ˆMÓ€AØˆAƒvÜ�m AÑ&¬¬c¨
×3Ñ3Ü×$Ò$ ]°1Ñ%5Ó6Ð6Ü˜ aÑ(¬%×0Ñ0Ü×+Ò+¨M¸!Ñ,<Ó=Ð=äð Ü $ ]°1Ñ%5Ó 6Ð7ð9óð ô ×'Ò'¨Ó6Ð6r^   c                 ó.   • [         R                  " U 5      $ )a7  Expression representing a scalar value.

Creates an Expression object representing a scalar value that can be used
in compute expressions and predicates.

Parameters
----------
value : bool, int, float or string
    Python value of the scalar. This function accepts any value that can be
    converted to a ``pyarrow.Scalar`` using ``pa.scalar()``.

Notes
-----
This function differs from ``pyarrow.scalar()`` in the following way:

* ``pyarrow.scalar()`` creates a ``pyarrow.Scalar`` object that represents
  a single value in Arrow's memory model.
* ``pyarrow.compute.scalar()`` creates an ``Expression`` object representing
  a scalar value that can be used in compute expressions, predicates, and
  dataset filtering operations.

Returns
-------
scalar_expr : Expression
    An Expression representing the scalar value
)rR   Ú_scalarrâ   s    r\   rç   rç   ã  s   € ô6 ×Ò˜eÓ$Ð$r^   )NNNN)NNrX   )rÚpyarrow._computer   r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   ÚcollectionsrS   r‚   ÚtextwraprT   r   Úpyarrowr×   rU   Úpyarrow.vendoredrV   r]   r_   rg   r•   rš   r¢   r³   r¾   rÇ   rÒ   r—   Ú
utf8_zfillrÓ   rÕ   rä   rð   r÷   r  r  r  r  rç   rœ   r^   r\   Ú<module>r"     sU  ð÷$U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ U÷ Uó Uõn #Û Ý Û ã Ý 'Ý &òñ Ð0°+Ó>Ð ò/òPòf	òò(ò>%ò.Jò ;ñ: Ô á%›iÐ(8Ñ9Ð 9€
ˆ^ôB>ðJ/¸Dö /ðd (,¸õ )HòX8;ðv,N¸Tö ,Nð^,NÀö ,Nð^ &¨tÀõ Gò4.7ób%r^   