+
    Ŝi                    `   R t ^ RIHt ^ RIt^ RIt^ RIHt ^ RIH	t	H
t
Ht ^ RIt]P                  '       d   ^ RIHt / RRbRR	bR
RbRRbRRbRRbRRbRRbRRbRRbRRbRRbRRbRR bR!R"bR#R$bR%R&bR'R(R)R*R+R,R-R.R/R0R1R2R3R4R5R6R7R8R9R:R;R<R=R>R?R@/Ct ! RA RB4      t ! RC RD4      tRE RF ltRG RH ltR# )IzE
Utility functions and objects for implementing the interchange API.
)annotationsN)lib)
ArrowDtypeCategoricalDtypeDatetimeTZDtype)DtypeObjnullnboolbuint8Cuint16Suint32Iuint64Lint8cint16int32iint64l	halffloatefloatfdoublegstringularge_stringUbinaryzz	time32[s]ttsz
time32[ms]ttmz
time64[us]ttuz
time64[ns]ttnzdate32[day]tdDz
date64[ms]tdmztimestamp[s]ztss:ztimestamp[ms]ztsm:ztimestamp[us]ztsu:ztimestamp[ns]ztsn:zduration[s]tDszduration[ms]tDmzduration[us]tDuzduration[ns]tDnc                  f    ] tR t^=tRtRtRtRtRtRt	Rt
RtR	tR
tRtRtRtRtRtRtRtRtRtRtRtR# )ArrowCTypesz
Enum for Apache Arrow C type format strings.

The Arrow C data interface:
https://arrow.apache.org/docs/format/CDataInterface.html#data-type-description-format-strings
r	   r   r   r   sr   r   r   r   r   r   r   r    r"   r$   r+   r,   zts{resolution}:{tz}ztt{resolution} N)__name__
__module____qualname____firstlineno____doc__NULLBOOLINT8UINT8INT16UINT16INT32UINT32INT64UINT64FLOAT16FLOAT32FLOAT64STRINGLARGE_STRINGDATE32DATE64	TIMESTAMPTIME__static_attributes__r4       f/Users/mibo/.openclaw/workspace/.venv-ak/lib/python3.14/site-packages/pandas/core/interchange/utils.pyr2   r2   =   sj     DDDEEFEFEFGGGFLFF &IDrN   r2   c                  *    ] tR t^_tRtRtRtRtRtRt	R# )
Endiannessz.Enum indicating the byte-order of a data-type.<>=|r4   N)
r5   r6   r7   r8   r9   LITTLEBIGNATIVENArM   r4   rN   rO   rQ   rQ   _   s    8F
CF	BrN   rQ   c                    V ^8  d   QhRRRR/# )   dtyper   returnstrr4   )formats   "rO   __annotate__r`   h   s     5 5 5S 5rN   c                   \        V \        4      '       d   \        P                  # V \        P
                  ! R4      8X  d   \        P                  # \        V \        4      '       d   ^ RIpV P                  pVP                  P                  V4      '       d   RVP                   RVP                   2# VP                  P                  V4      '       d2   VP                  e$   RVP                   ^ ,           RVP                   2# \"        P%                  \'        V4      R4      pVe   V# \)        \        V P*                  P-                  4       R4      pVe   V# \        V \.        P0                  4      '       d   \        P                  # \2        P4                  ! V R4      '       dF   \        P6                  ! V 4      ^ ,          ^ ,          p\        P8                  P;                  VRR	7      # \        V \<        4      '       d=   \        P8                  P;                  V P                   ^ ,          V P                  R	7      # \        V \.        P>                  4      '       d   \        P@                  # \C        R
V  R24      h)z
Represent pandas `dtype` as a format string in Apache Arrow C notation.

Parameters
----------
dtype : np.dtype
    Datatype of pandas DataFrame to represent.

Returns
-------
str
    Format string in Apache Arrow C notation of the given `dtype`.
ONzd:,ts:M )
resolutiontzzConversion of z- to Arrow C format string is not implemented.)"
isinstancer   r2   rB   npr\   rG   r   pyarrowpyarrow_dtypetypes
is_decimal	precisionscaleis_timestampri   unitPYARROW_CTYPESgetr^   getattrnameupperpdStringDtyper   is_np_dtypedatetime_datarK   r_   r   BooleanDtyper;   NotImplementedError)r\   papa_type
format_strrh   s   &    rO   dtype_to_arrow_c_fmtr   h   s    %)**   	"((3-	!!!	E:	&	&%%88w''))*!GMM?;;XX""7++

0FQ('**66#''Gd;
!ejj&6&6&8$?J%(( !!!		$	$ %%e,Q/2
$$++zb+II	E?	+	+$$++uzz!}+RR	E2??	+	+

LM rN   c               $    V ^8  d   QhRRRRRR/# )r[   seriesz	pd.Series
allow_copyr
   r]   zpd.Series | Noner4   )r_   s   "rO   r`   r`      s'     T T) TD T=M TrN   c               r   \        V P                  \        P                  4      '       g   R# V P                  P
                  p\        VP                  4      ^8X  d   R# V'       g   \        R4      hVP                  4       p\        P                  ! W0P                  V P                  V P                  R7      # )a  
Rechunk a multi-chunk pyarrow array into a single-chunk array, if necessary.

- Returns `None` if the input series is not backed by a multi-chunk pyarrow array
  (and so doesn't need rechunking)
- Returns a single-chunk-backed-Series if the input is backed by a multi-chunk
  pyarrow array and `allow_copy` is `True`.
- Raises a `RuntimeError` if `allow_copy` is `False` and input is a
  based by a multi-chunk pyarrow array.
NzFound multi-chunk pyarrow array, but `allow_copy` is False. Please rechunk the array before calling this function, or set `allow_copy=True`.)r\   rw   index)rj   r\   ry   r   array	_pa_arraylenchunksRuntimeErrorcombine_chunksSeriesrw   r   )r   r   chunked_arrayarrs   &$  rO   maybe_rechunkr      s     fllBMM22LL**M
= A%!
 	

 
&
&
(C99S6;;fllSSrN   )r9   
__future__r   typingnumpyrk   pandas._libsr   pandas.core.dtypes.dtypesr   r   r   pandasry   TYPE_CHECKINGpandas._typingr   rt   r2   rQ   r   r   r4   rN   rO   <module>r      so   #     	'

C
C S c	
 c c C S S S  S c c C  c!" #$ %%%5%FVVV5EEE=D D 5pTrN   