+
    xȇi&                    N   ^ RI Ht ^ RIt^ RIt^ RIt^ RIHt ^ RIt^ RI	H
t
 ^ RIHtHtHtHt ^ RIt^ RIHtHt ^ RIHtHt ^ RIHt ^ R	IHt ^ R
IHtHt ^ RIH t H!t! ]'       d   ^ RI"H#t# ] ! R R]
4      4       t$ ! R R]]]4      t%RR lt&R R lt']%PQ                  4        R# )    )annotationsN)TYPE_CHECKING)ExtensionDtype)is_dtype_equalis_float
is_integerpandas_dtype)
no_defaultregister_extension_dtype)is_list_like	is_scalar)	arraylike)OpsMixin)ExtensionArrayExtensionScalarOpsMixin)check_array_indexergetitem_returns_view)type_tc                      ] tR t^*t]P
                  tRt]P
                  ! R4      tRt	RR R llt
R R ltR R	 lt]R
 R l4       tRtR# )DecimalDtypedecimalNaNNc                   V ^8  d   QhRR/#    returnNone )formats   "t/Users/max/.openclaw/workspace/postharvest/venv/lib/python3.14/site-packages/pandas/tests/extension/decimal/array.py__annotate__DecimalDtype.__annotate__1   s     7 7 7    c                	N    T;'       g    \         P                  ! 4       V n        R # N)r   
getcontextcontext)selfr'   s   &&r    __init__DecimalDtype.__init__1   s    66'"4"4"6r#   c                   V ^8  d   QhRR/# )r   r   strr   )r   s   "r    r!   r"   4   s     7 7# 7r#   c                	"    R V P                    R2# )zDecimalDtype(context=)r'   r(   s   &r    __repr__DecimalDtype.__repr__4   s    &t||nA66r#   c                   V ^8  d   QhRR/# )r   r   ztype_t[DecimalArray]r   )r   s   "r    r!   r"   7   s      &: r#   c                    \         # )zI
Return the array type associated with this dtype.

Returns
-------
type
)DecimalArrayr0   s   &r    construct_array_type!DecimalDtype.construct_array_type7   s
     r#   c                   V ^8  d   QhRR/# )r   r   boolr   )r   s   "r    r!   r"   B   s      T r#   c                	    R # Tr   r0   s   &r    _is_numericDecimalDtype._is_numericA   s    r#   r/   r%   )__name__
__module____qualname____firstlineno__r   Decimaltypenamena_value	_metadatar)   r1   r6   propertyr<   __static_attributes__r   r#   r    r   r   *   sF    ??DDu%HI77  r#   r   c                    a  ] tR t^FtRtR)R R llt]R 4       t]RRRR/R	 l4       t	]RR/R
 R ll4       t
]R 4       t]P                  ]P                  ]P"                  3tRR]R3R R lltR R ltR tR*R ltR tR+V 3R lltR R ltR R ltR V 3R llt]R R l4       tR t]R 4       tR,R  lt ]R! 4       t!R"RR#R/R$ R% llt"R& t#R-V 3R' llt$R(t%V ;t&# ).r5   i  NFc                   V ^8  d   QhRR/# r   r   )r   s   "r    r!   DecimalArray.__annotate__I   s     , , ,r#   c                	*   \        V4       F  w  rV\        V4      '       g   \        V4      '       dJ   \        P                  ! V4      '       d   \
        P                  W&   KW  \
        P                  V4      W&   Kp  \        V\        P                  4      '       d   K  \        R \        \        P                  4      ,           4      h	  \        P                  ! V\        R7      pWn        V P                  ;V n        V n        \        V4      V n        R# )zAll values must be of type dtypeN)	enumerater   r   npisnanr   rE   rC   
isinstancer   rB   	TypeErrorr,   asarrayobject_data_itemsdata_dtype)r(   valuesrN   copyr'   ivals   &&&&&  r    r)   DecimalArray.__init__I   s    'FA}}
388C== , 5 5FI
 !- 1 1# 6FIW__55 =GOO@T TUU ( F&1
 #'**,di #7+r#   c                	    V P                   # r%   )rY   r0   s   &r    rN   DecimalArray.dtype`   s    {{r#   rN   r[   c               	    V ! V4      # r%   r   )clsscalarsrN   r[   s   &&$$r    _from_sequenceDecimalArray._from_sequenced   s    7|r#   c                   V ^8  d   QhRR/# )r   rN   r   r   )r   s   "r    r!   rK   i   s     
 
. 
r#   c               	z    T P                  V Uu. uF  p\        P                  ! V4      NK  	  upW#R 7      # u upi ))rN   r[   )rd   r   rB   )rb   stringsrN   r[   xs   &&$$ r    _from_sequence_of_strings&DecimalArray._from_sequence_of_stringsh   s:    !!)01AW__Q1 " 
 	
1s   8c                	    V ! V4      # r%   r   )rb   rZ   originals   &&&r    _from_factorizedDecimalArray._from_factorizedn   s    6{r#   c               $    V ^8  d   QhRRRRRR/# )r   r[   r9   rE   rU   r   z
np.ndarrayr   )r   s   "r    r!   rK   ~   s*     
 
 
 	
 

r#   c           	     	    \         P                  ! WR 7      pVe0   \         P                  ! V Uu. uF  p\        Wd4      NK  	  up4      pV# u upi rM   )rP   rT   round)r(   rN   r[   rE   decimalsresultri   s   &&&&&  r    to_numpyDecimalArray.to_numpy~   sE     D.ZZV DVq!3V DEF !Es   Ac                    V ^8  d   QhRRRR/# )r   ufuncznp.ufuncmethodr,   r   )r   s   "r    r!   rK      s     #' #'X #'s #'r#   c                	  a a \         ;QJ d    V 3R  lV 4       F  '       d   K   RM	  RM! V 3R  lV 4       4      '       g   \        # \        P                  ! S W.VO5/ VB pV\        Jd   V# RV9   d   \        P                  ! S W.VO5/ VB # \
        ;QJ d    . R V 4       F  NK  	  5M! R V 4       4      p\        W4      ! V/ VB pVR8X  d(   \        P                  ! S W.VO5/ VB pV\        Jd   V# V 3R loVP                  ^8  d3   \
        ;QJ d    . V3R lV 4       F  NK  	  5# ! V3R lV 4       4      # S! V4      # )c              3  b   <"   T F$  p\        V. SP                  O\        N54      x  K&  	  R # 5ir%   )rR   _HANDLED_TYPESr5   ).0tr(   s   & r    	<genexpr>/DecimalArray.__array_ufunc__.<locals>.<genexpr>   s.     WPV1:a!E4#6#6!E!EFFPVs   ,/FToutc              3  j   "   T F)  p\        V\        4      '       d   VP                  MTx  K+  	  R # 5ir%   )rR   r5   rV   )r~   ri   s   & r    r   r      s%     Uf*Q"="=qww1Dfs   13reducec                   < \        V \        P                  \        P                  34      '       d   V # \        S4      P                  V SP                  R 7      # rr   )rR   r   rB   numbersNumberrC   rd   rN   )ri   r(   s   &r    reconstruct1DecimalArray.__array_ufunc__.<locals>.reconstruct   s@    !goow~~>??Dz00$**0EEr#   c              3  4   <"   T F  pS! V4      x  K  	  R # 5ir%   r   )r~   ri   r   s   & r    r   r      s     8AQs   )	allNotImplementedr   !maybe_dispatch_ufunc_to_dunder_opdispatch_ufunc_with_outtuplegetattrdispatch_reduction_ufuncnout)r(   ry   rz   inputskwargsru   r   s   f&&*, @r    __array_ufunc__DecimalArray.__array_ufunc__   s?   sWPVWsssWPVWWW!!<<%
"(
,2
 'MF?44e&,06  UfUUfUU':6:X77e&,06F ^+	F ::>5885858888v&&r#   c                	r   \        V\        P                  4      '       d   V P                  V,          # \        P
                  P                  P                  W4      p\        V 4      ! V P                  V,          V P                  P                  R 7      p\        W4      '       d   V P                  Vn        V# r/   )rR   r   IntegralrV   pdapiindexersr   rC   rN   r'   r   	_readonly)r(   itemru   s   && r    __getitem__DecimalArray.__getitem__   s}    dG,,--::d## 66??66tBD$Z

4 0$**:L:LMF#D//#'>> Mr#   c                	    ^ RI Hp V P                  pV'       d   Vf   V P                  P                  pV! WQW2R7      pV P                  W`P                  R7      # )r   )take)
fill_value
allow_fillrM   )pandas.api.extensionsr   rV   rN   rE   rd   )r(   indexerr   r   r   rX   ru   s   &&&&   r    r   DecimalArray.take   sI    .zz*,,,Jd
R""6"<<r#   c                	l    \        V 4      ! V P                  P                  4       V P                  R 7      # rr   )rC   rV   r[   rN   r0   s   &r    r[   DecimalArray.copy   s"    Dz$**//+4::>>r#   Tc                	  < \        WP                  4      '       d   V'       g   V # \        V4      p\        V\	        V P
                  4      4      '       d(   \	        V 4      ! V P                  W!P                  R 7      # \        SV `%  WR7      # ))r[   r'   )r[   )
r   rY   r	   rR   rC   rN   rV   r'   superastype)r(   rN   r[   	__class__s   &&&r    r   DecimalArray.astype   sd    %--U#eT$**-..:djjt]]KKw~e~//r#   c                   V ^8  d   QhRR/# r   r   )r   s   "r    r!   rK      s          r#   c                	N   V P                   '       d   \        R 4      h\        V4      '       dC   \        V4      '       d   \        R4      hV Uu. uF  p\        P
                  ! V4      NK  	  ppM\        P
                  ! V4      p\        W4      pW P                  V&   R# u upi )zCannot modify read-only arrayz)setting an array element with a sequence.N)r   
ValueErrorr   r   r   rB   r   rV   )r(   keyvaluevs   &&& r    __setitem__DecimalArray.__setitem__   s~    >>><==~~ !LMM167AW__Q'E7EOOE*E!$,

3 8s   B"c                   V ^8  d   QhRR/# r   r   intr   )r   s   "r    r!   rK      s       r#   c                	,    \        V P                  4      # r%   )lenrV   r0   s   &r    __len__DecimalArray.__len__   s    4::r#   c                   V ^8  d   QhRR/# )r   r   zbool | np.bool_r   )r   s   "r    r!   rK      s     . .O .r#   c                	   < \        V\        P                  4      '       g   R # VP                  4       '       d   V P	                  4       P                  4       # \        SV `  V4      # F)rR   r   rB   is_nanisnaanyr   __contains__)r(   r   r   s   &&r    r   DecimalArray.__contains__   sE    $00[[]]99;??$$7'--r#   c                   V ^8  d   QhRR/# r   r   )r   s   "r    r!   rK      s       r#   c                	t    \        V 4      pV'       d%   V\        P                  ! V ^ ,          4      ,          # ^ # )r   )r   sys	getsizeof)r(   ns   & r    nbytesDecimalArray.nbytes   s)    Is}}T!W---r#   c                	    \         P                  ! V P                   Uu. uF  qP                  4       NK  	  up\        R 7      # u upi rr   )rP   arrayrV   r   r9   )r(   ri   s   & r    r   DecimalArray.isna   s-    xxTZZ8ZZ8EE8s   Ac                	.    \         P                  ! R 4      # )r   )r   rB   r0   s   &r    	_na_valueDecimalArray._na_value   s    u%%r#   c                	6    V'       d   R P                   # \        # )zDecimal: {})r   repr)r(   boxeds   &&r    
_formatterDecimalArray._formatter   s     '''r#   c                	v    T ! \         P                  ! V Uu. uF  q"P                  NK  	  up4      4      # u upi r%   )rP   concatenaterV   )rb   	to_concatri   s   && r    _concat_same_typeDecimalArray._concat_same_type   s*    2>>I">Iq77I">?@@">s   6skipnakeepdimsc               $    V ^8  d   QhRRRRRR/# )r   rD   r,   r   r9   r   r   )r   s   "r    r!   rK     s$      $(;?r#   c               	   V'       dP   V P                  4       P                  4       '       d,   W P                  4       ( ,          pVP                  ! V3/ VB pMNVR 8X  d(   \        V 4      ^ 8X  d   \        P
                  ! ^ 4      pM  \        V P                  V4      pT! ^ R7      pV'       d   \        V 4      ! V.4      # V#   \         d   p\        RT R24      ThRp?ii ; i)sumzdecimal does not support the z
 operationN)axis)r   r   _reducer   r   rB   r   rX   AttributeErrorNotImplementedErrorrC   )	r(   rD   r   r   r   otherru   operrs	   &&$$,    r    r   DecimalArray._reduce  s     diikoo''))+&E]]4262FU]s4yA~__Q'FTYY-
 QZF:vh''M " )3D6Ds   C C"CC"c                	   a  V 3R  lpS pV! V4      p\        WERR7       UUu. uF  w  rgV! Wg4      NK  	  ppp\        P                  ! V\        R7      # u uppi )c                   < \        V \        4      '       g   \        V 4      '       d   T pV# V .\        S4      ,          pV# r%   )rR   r   r   r   )paramovaluesr(   s   & r    convert_values0DecimalArray._cmp_method.<locals>.convert_values  s=    %00L4G4G N !'CI-Nr#   T)strictrM   )ziprP   rT   r9   )	r(   r   r   r   lvaluesrvaluesabress	   f&&      r    _cmp_methodDecimalArray._cmp_method  sU    	  ' '*'4&HI&HFQr!x&HIzz#T** Js   Ac                	&   < \         SV `  WR R7      # )T)r   limitr[   )r   fillna)r(   r   r   r   s   &&&r    r   DecimalArray.fillna/  s    w~ET~BBr#   )rV   rY   rW   rX   )NFN)FNr;   r   )NN)'r>   r?   r@   rA   __array_priority__r)   rG   rN   classmethodrd   rj   rn   r   rB   r   r   rP   ndarrayr}   r
   rv   r   r   r   r[   r   r   r   r   r   r   r   r   r   r   r   r   rH   __classcell__)r   s   @r    r5   r5   F   s=   ,.   d    
u 
 

   oow~~rzzBN %
#'J	=?0 . .  F & &
 A A+/BG0+,C Cr#   r5   c                n    \        V  Uu. uF  p\        P                  ! V4      NK  	  upVR 7      # u upi r   )r5   r   rB   )rZ   r'   ri   s   && r    
to_decimalr  3  s*    V<V+V<gNN<s   2c                   V ^8  d   QhRR/# )r   r   r   r   )r   s   "r    r!   r!   7  s     P P Pr#   c                    \         P                  P                  ^4      P                  V 4       Uu. uF  p\        P                  ! V4      NK  	  up# u upi )r   )rP   randomdefault_rngr   rB   )r   r]   s   & r    	make_datar  7  s?    ,.II,A,A!,D,K,KA,NO,NSGOOC ,NOOOs   Ar%   ))
__future__r   r   r   r   typingr   numpyrP   pandas.core.dtypes.baser   pandas.core.dtypes.commonr   r   r   r	   pandasr   r   r
   r   pandas.api.typesr   r   pandas.corer   pandas.core.arrayliker   pandas.core.arraysr   r   pandas.core.indexersr   r   pandas._typingr   r   r5   r  r  _add_arithmetic_opsr   r#   r    <module>r     s    "   
    2   " *
 % >  6jC84n jCZOP      "r#   