Ë
    *�£jO  ã                  ót  — d dl mZ d dlmZmZmZmZmZ d dl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mZ d d
lmZ d dlmZ d dlmZ d dlm Z m!Z!m"Z"m#Z# d dl$m%Z% d dl&m'Z' d dl(m)Z) d dl*m+Z+ er(d dl,m-Z- d dl.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7 d dl8m9Z9 d dl:m;Z;  ed«       G d„ de%e'e+«      «       Z<y)é    )Úannotations)ÚTYPE_CHECKINGÚAnyÚLiteralÚSelfÚcastN)Úlib)Úis_supported_dtype)Úfunction)Ú
set_module)Úastype_arrayÚastype_is_view)Ú'construct_1d_object_array_from_listlikeÚmaybe_downcast_to_dtype)Úpandas_dtype)ÚNumpyEADtype)Úisna)Ú	arraylikeÚmissingÚnanopsÚops)ÚOpsMixin)ÚNDArrayBackedExtensionArray)Úensure_wrapped_if_datetimelike)ÚObjectStringArrayMixin)ÚCallable)	Ú	ArrayLikeÚAxisIntÚDtypeÚFillnaOptionsÚInterpolateOptionsÚNpDtypeÚScalarÚTakeIndexerÚnpt)ÚIndex)ÚStringArrayzpandas.arraysc                  ó|  ‡ — e Zd ZU dZdZdZded<   ded<   ej                  Z		 d8	 	 	 	 	 d9ˆ fd	„Z
ed
ddœ	 	 	 	 	 d:d„«       Zd;ˆ fd„Zed<d„«       Z	 d=	 	 	 	 	 d>d„Zd?d„Zd@dAd„ZdBd„Zd„ ZdCd„Zd
d
ddœ	 	 	 	 	 	 	 	 	 dDd„Z	 	 	 	 	 	 	 	 	 	 dEd„Zdd
ddœ	 	 	 	 	 	 	 	 	 dFˆ fd„Zd
d
dddœ	 	 	 	 	 dGd„Zd
d
dddœ	 	 	 	 	 dGd„Zd
ddœ	 	 	 	 	 dHd „Zd
ddœ	 	 	 	 	 dHd!„Zd
ddd"œ	 	 	 	 	 	 	 dId#„Zd
ddd"œ	 	 	 	 	 	 	 dId$„Zd
d
d
ddd%œ	 	 	 	 	 	 	 dJd&„Zd
d
dddd'œ	 	 	 	 	 	 	 dKd(„Z d
d
d
d)ddd*œ	 	 	 	 	 	 	 	 	 dLd+„Z!d
d
d
d)ddd*œ	 	 	 	 	 	 	 	 	 dLd,„Z"d
d
d
d)ddd*œ	 	 	 	 	 	 	 	 	 dLd-„Z#d
d
d
ddd%œ	 	 	 	 	 	 	 dJd.„Z$d
d
d
ddd%œ	 	 	 	 	 	 	 dJd/„Z%d
de&jN                  f	 	 	 	 	 	 	 dMd0„Z(dNd1„Z)dNd2„Z*dNd3„Z+dNd4„Z,d5„ Z-e-Z.dOd6„Z/d8dPd7„Z0ˆ xZ1S )QÚNumpyExtensionArraya˜  
    A pandas ExtensionArray for NumPy data.

    This is mostly for internal compatibility, and is not especially
    useful on its own.

    Parameters
    ----------
    values : ndarray
        The NumPy ndarray to wrap. Must be 1-dimensional.
    copy : bool, default False
        Whether to copy `values`.

    Attributes
    ----------
    None

    Methods
    -------
    None

    See Also
    --------
    array : Create an array.
    Series.to_numpy : Convert a Series to a NumPy array.

    Examples
    --------
    >>> pd.arrays.NumpyExtensionArray(np.array([0, 1, 2, 3]))
    <NumpyExtensionArray>
    [0, 1, 2, 3]
    Length: 4, dtype: int64
    Únpy_extensioniè  ú
np.ndarrayÚ_ndarrayr   Ú_dtypeFc                ó`  •— t        |t        | «      «      r|j                  }t        |t        j                  «      s!t        dt        |«      j                  › �«      ‚|j                  dk(  rt        d«      ‚|r|j                  «       }t        |j                  «      }t        ‰| �1  ||«       y )Nz$'values' must be a NumPy array, not r   z*NumpyExtensionArray must be 1-dimensional.)Ú
isinstanceÚtyper,   ÚnpÚndarrayÚ
ValueErrorÚ__name__ÚndimÚcopyr   ÚdtypeÚsuperÚ__init__)ÚselfÚvaluesr6   r7   Ú	__class__s       €ú;C:\FundamentalWorkbench\vendor\pandas\core\arrays\numpy_.pyr9   zNumpyExtensionArray.__init__q   s‘   ø€ ô �fœd 4›jÔ)Ø—_‘_ˆFÜ˜&¤"§*¡*Ô-ÜØ6´t¸F³|×7LÑ7LÐ6MÐNóð ð �;‰;˜!ÒäÐIÓJÐJáØ—[‘[“]ˆFä˜VŸ\™\Ó*ˆÜ‰Ñ˜ Õ'ó    N©r7   r6   c               ó  — t        |t        «      r|j                  }t        j                  ||¬«      }|j
                  dkD  r"t        |d«      s|�	|t        k(  rt        |«      }|r||u r|j                  «       } | |«      S )N©r7   é   r7   )
r/   r   r-   r1   Úasarrayr5   ÚhasattrÚobjectr   r6   )ÚclsÚscalarsr7   r6   Úresults        r=   Ú_from_sequencez"NumpyExtensionArray._from_sequence…   st   € ô �eœ\Ô*Ø—L‘LˆEô —‘˜G¨5Ô1ˆà�K‰K˜!ŠOÜ˜G WÔ-Ø� %¬6¢/ô =¸WÓEˆFá�F˜gÑ%Ø—[‘[“]ˆFÙ�6‹{Ðr>   c                ó,  •— t         ‰| �  |«      }| j                  j                  }|j                  j                  }|dv r|dv s|dk(  r|dk(  s||cxk(  rdk(  r%n n"t	        || j                  j
                  «      }|S |dk(  rddlm}  ||d¬«      }|S )	NÚiuÚfÚcÚMr   )ÚarrayF©r6   )r8   Ú_cast_pointwise_resultr7   Úkindr   Únumpy_dtypeÚpandasrO   )r:   r;   rH   ÚlkindÚrkindÚpd_arrayr<   s         €r=   rQ   z*NumpyExtensionArray._cast_pointwise_resultž   s‘   ø€ Ü‘Ñ/°Ó7ˆØ—
‘
—‘ˆØ—‘×!Ñ!ˆà�d‰]˜u¨™}Ø˜’ ¨#¢Ø˜Ô% #Õ%ä,¨V°T·Z±Z×5KÑ5KÓLˆFð ˆð �cŠ\õ 1á˜f¨5Ô1ˆFØˆr>   c                ó   — | j                   S ©N)r-   ©r:   s    r=   r7   zNumpyExtensionArray.dtype³   s   € à�{‰{Ðr>   c                ó   — |�#t        j                  | j                  ||¬«      }n!t        j                  | j                  |¬«      }| j                  r;|s9|�t        | j                  |«      r!|j                  «       }d|j                  _	        |S )Nr?   rA   F)
r1   rO   r,   rC   Ú	_readonlyr   r7   ÚviewÚflagsÚ	writeable©r:   r7   r6   rH   s       r=   Ú	__array__zNumpyExtensionArray.__array__º   sn   € ð Ðä—X‘X˜dŸm™m°5¸tÔD‰Fä—Z‘Z §¡°UÔ;ˆFð �NŠNÙØ�¤.°·±¸UÔ"Cà—[‘[“]ˆFØ%*ˆF�L‰LÔ"àˆr>   c                ó   ‡ — |j                  dd«      }t        j                  ‰ ||g|¢­i |¤Ž}|t        ur|S d|v rt        j                  ‰ ||g|¢­i |¤ŽS |dk(  r%t        j
                  ‰ ||g|¢­i |¤Ž}|t        ur|S t        d„ |D «       «      }|rt        d„ |D «       «      |d<    t        ||«      |i |¤Ž}|j                  dkD  rt        ˆ fd„|D «       «      S |dk(  ry |dk(  r-t        |t        j                  «      r t        ‰ «      |«      S |S ‰ j                  j                  t        u r*t        d	‰ «      Š 	  t        ‰ «      |‰ j                  ¬
«      S  t        ‰ «      |«      S # t         $ r |cY S w xY w)NÚout© Úreducec              3  óX   K  — | ]"  }t        |t        «      r|j                  n|–— Œ$ y ­wrY   ©r/   r)   r,   ©Ú.0Úxs     r=   Ú	<genexpr>z6NumpyExtensionArray.__array_ufunc__.<locals>.<genexpr>é   s'   è ø€ ð 
ÙMSÈœ* QÔ(;Ô<ˆA�JŠJÀ!ÓCÉVùó   ‚(*c              3  óX   K  — | ]"  }t        |t        «      r|j                  n|–— Œ$ y ­wrY   rg   rh   s     r=   rk   z6NumpyExtensionArray.__array_ufunc__.<locals>.<genexpr>í   s(   è ø€ ð "ÙQTÈAœj¨Ô,?Ô@�—
’
ÀaÓGÑQTùrl   rB   c              3  ó@   •K  — | ]  } t        ‰«      |«      –— Œ y ­wrY   )r0   )ri   rj   r:   s     €r=   rk   z6NumpyExtensionArray.__array_ufunc__.<locals>.<genexpr>ô   s   øè ø€ Ð7±¨1˜œ˜d› AŸ±ùs   ƒÚatr'   rA   )Úgetr   Ú!maybe_dispatch_ufunc_to_dunder_opÚNotImplementedÚdispatch_ufunc_with_outÚdispatch_reduction_ufuncÚtupleÚgetattrÚnoutr/   r1   r2   r0   r7   Ústrr   r3   )r:   ÚufuncÚmethodÚinputsÚkwargsrc   rH   s   `      r=   Ú__array_ufunc__z#NumpyExtensionArray.__array_ufunc__Í   sÆ  ø€ ð
 �j‰j˜ Ó#ˆä×<Ñ<Ø�%˜ð
Ø"(ò
Ø,2ñ
ˆð œÑ'ØˆMà�F‰?ä×4Ñ4Ø�e˜VðØ&,òØ06ñð ð �XÒÜ×7Ñ7Ø�e˜VðØ&,òØ06ñˆFð œ^Ñ+à�ô ñ 
ÙMSó
ó 
ˆñ Ü!ñ "ÙQTó"ó ˆF�5‰Mð (”˜ Ó'¨Ð:°6Ñ:ˆà�:‰:˜Š>äÓ7±Ó7Ó7Ð7Ø�tŠ^àØ�xÒÜ˜&¤"§*¡*Ô-à!”t˜D“z &Ó)Ð)ð ˆMà�z‰z�‰¤#Ñ%ä˜M¨4Ó0�ð"à%œ4 ›: f°D·J±JÔ?Ð?ð ”4˜“:˜fÓ%Ð%øô "ò "ð "’Mð"ús   ÅE/ Å/E=Å<E=Tc                ó’   — t        |«      }|| j                  k(  r|r| j                  «       S | S t        | j                  ||¬«      }|S )Nr?   )r   r7   r6   r   r,   r`   s       r=   ÚastypezNumpyExtensionArray.astype  sC   € Ü˜UÓ#ˆà�D—J‘JÒÙØ—y‘y“{Ð"ØˆKä˜dŸm™m°5¸tÔDˆØˆr>   c                ó,   — t        | j                  «      S rY   )r   r,   rZ   s    r=   r   zNumpyExtensionArray.isna  s   € Ü�D—M‘MÓ"Ð"r>   c                ó6   — |€| j                   j                  }|S rY   )r7   Úna_value)r:   Ú
fill_values     r=   Ú_validate_scalarz$NumpyExtensionArray._validate_scalar  s   € ØÐàŸ™×,Ñ,ˆJØÐr>   c                ót   — | j                   j                  dv rd }nt        j                  }| j                  |fS )NÚiub)r7   rR   r1   Únanr,   )r:   Úfvs     r=   Ú_values_for_factorizez)NumpyExtensionArray._values_for_factorize$  s/   € Ø�:‰:�?‰?˜eÑ#Ø‰Bä—‘ˆBØ�}‰}˜bÐ Ð r>   )ÚlimitÚ
limit_arear6   c               ó  — |r| j                   j                  «       }n| j                   }t        j                  |«      }t        j                  |j
                  |d||¬«       |s| S t        | «      j                  || j                  ¬«      S )z.
        ffill or bfill along axis=0.
        r   )rz   ÚaxisrŠ   r‹   rA   )	r,   r6   r   Úclean_fill_methodÚpad_or_backfill_inplaceÚTr0   Ú_simple_newr7   )r:   rz   rŠ   r‹   r6   Úout_dataÚmeths          r=   Ú_pad_or_backfillz$NumpyExtensionArray._pad_or_backfill.  s{   € ñ Ø—}‘}×)Ñ)Ó+‰Hà—}‘}ˆHä×(Ñ(¨Ó0ˆÜ×'Ñ'Ø�J‰JØØØØ!õ	
ñ ØˆKÜ�D‹z×%Ñ% h°d·j±jÐ%ÓAÐAr>   c          
     ó@  — | j                   j                  st        d| j                   › d�«      ‚|s| j                  }	n| j                  j	                  «       }	t        j                  |	f||||||dœ|¤Ž |s| S t        | «      j                  |	| j                   ¬«      S )z2
        See NDFrame.interpolate.__doc__.
        zCannot interpolate with z dtype)rz   r�   ÚindexrŠ   Úlimit_directionr‹   rA   )	r7   Ú_is_numericÚ	TypeErrorr,   r6   r   Úinterpolate_2d_inplacer0   r‘   )
r:   rz   r�   r–   rŠ   r—   r‹   r6   r|   r’   s
             r=   ÚinterpolatezNumpyExtensionArray.interpolateK  s¤   € ð  �z‰z×%Ò%ÜÐ6°t·z±z°lÀ&ÐIÓJÐJáØ—}‘}‰Hà—}‘}×)Ñ)Ó+ˆHô 	×&Ñ&Øð		
àØØØØ+Ø!ñ		
ð ò		
ñ ØˆKÜ�D‹z×%Ñ% h°d·j±jÐ%ÓAÐAr>   r   ©Ú
allow_fillrƒ   r�   c               ó˜   •— t         ‰| �  ||||¬«      }| j                  j                  dv r t	        | «      |j
                  d¬«      S |S )zŒ
        Take entries from this array at each index in a list of indices,
        producing an array containing only those entries.
        rœ   r†   FrP   )r8   Útaker7   rR   r0   r,   )r:   Úindicesr�   rƒ   r�   rH   r<   s         €r=   rŸ   zNumpyExtensionArray.taker  sO   ø€ ô ‘‘Ø 
°zÈð ó 
ˆð �:‰:�?‰?˜eÑ#Ø”4˜“:˜fŸo™o°EÔ:Ð:àˆr>   )r�   rc   ÚkeepdimsÚskipnac               óœ   — t        j                  d||dœ«       t        j                  | j                  ||¬«      }| j                  ||«      S ©Nrd   )rc   r¡   ©r�   r¢   )ÚnvÚvalidate_anyr   Únananyr,   Ú_wrap_reduction_result©r:   r�   rc   r¡   r¢   rH   s         r=   ÚanyzNumpyExtensionArray.anyŠ  ó@   € ô 	�‰˜ C°XÑ>Ô?Ü—‘˜tŸ}™}°4ÀÔGˆØ×*Ñ*¨4°Ó8Ð8r>   c               óœ   — t        j                  d||dœ«       t        j                  | j                  ||¬«      }| j                  ||«      S r¤   )r¦   Úvalidate_allr   Únanallr,   r©   rª   s         r=   ÚallzNumpyExtensionArray.all–  r¬   r>   r¥   c               ó´   — t        j                  d|«       t        j                  | j                  || j                  «       |¬«      }| j                  ||«      S ©Nrd   )r;   r�   Úmaskr¢   )r¦   Úvalidate_minr   Únanminr,   r   r©   ©r:   r�   r¢   r|   rH   s        r=   ÚminzNumpyExtensionArray.min¢  óH   € ô 	�‰˜˜FÔ#Ü—‘Ø—=‘= t°$·)±)³+Àfô
ˆð ×*Ñ*¨4°Ó8Ð8r>   c               ó´   — t        j                  d|«       t        j                  | j                  || j                  «       |¬«      }| j                  ||«      S r²   )r¦   Úvalidate_maxr   Únanmaxr,   r   r©   r¶   s        r=   ÚmaxzNumpyExtensionArray.max«  r¸   r>   ©r�   r¢   Ú	min_countc               ó˜   — t        j                  d|«       t        j                  | j                  |||¬«      }| j                  ||«      S ©Nrd   r½   )r¦   Úvalidate_sumr   Únansumr,   r©   ©r:   r�   r¢   r¾   r|   rH   s         r=   ÚsumzNumpyExtensionArray.sum´  sB   € ô 	�‰˜˜FÔ#Ü—‘Ø�M‰M ¨V¸yô
ˆð ×*Ñ*¨4°Ó8Ð8r>   c               ó˜   — t        j                  d|«       t        j                  | j                  |||¬«      }| j                  ||«      S rÀ   )r¦   Úvalidate_prodr   Únanprodr,   r©   rÃ   s         r=   ÚprodzNumpyExtensionArray.prodÂ  sD   € ô 	×Ñ˜˜VÔ$Ü—‘Ø�M‰M ¨V¸yô
ˆð ×*Ñ*¨4°Ó8Ð8r>   )r�   r7   rc   r¡   r¢   c               óž   — t        j                  d|||dœ«       t        j                  | j                  ||¬«      }| j                  ||«      S )Nrd   ©r7   rc   r¡   r¥   )r¦   Úvalidate_meanr   Únanmeanr,   r©   ©r:   r�   r7   rc   r¡   r¢   rH   s          r=   ÚmeanzNumpyExtensionArray.meanÐ  sD   € ô 	×Ñ˜ u°SÀhÑOÔPÜ—‘ §¡°DÀÔHˆØ×*Ñ*¨4°Ó8Ð8r>   )r�   rc   Úoverwrite_inputr¡   r¢   c               óž   — t        j                  d|||dœ«       t        j                  | j                  ||¬«      }| j                  ||«      S )Nrd   )rc   rÏ   r¡   r¥   )r¦   Úvalidate_medianr   Ú	nanmedianr,   r©   )r:   r�   rc   rÏ   r¡   r¢   rH   s          r=   ÚmedianzNumpyExtensionArray.medianÝ  sK   € ô 	×ÑØ˜°ÈXÑVô	
ô ×!Ñ! $§-¡-°dÀ6ÔJˆØ×*Ñ*¨4°Ó8Ð8r>   rB   )r�   r7   rc   Úddofr¡   r¢   c               ó¤   — t        j                  d|||dœd¬«       t        j                  | j                  |||¬«      }| j                  ||«      S )Nrd   rÊ   Ústd©Úfname©r�   r¢   rÔ   )r¦   Úvalidate_stat_ddof_funcr   Únanstdr,   r©   ©r:   r�   r7   rc   rÔ   r¡   r¢   rH   s           r=   rÖ   zNumpyExtensionArray.stdì  óM   € ô 	×"Ñ"Ø˜%¨¸ÑBÈ%õ	
ô —‘˜tŸ}™}°4ÀÈTÔRˆØ×*Ñ*¨4°Ó8Ð8r>   c               ó¤   — t        j                  d|||dœd¬«       t        j                  | j                  |||¬«      }| j                  ||«      S )Nrd   rÊ   Úvarr×   rÙ   )r¦   rÚ   r   Únanvarr,   r©   rÜ   s           r=   rß   zNumpyExtensionArray.varü  rÝ   r>   c               ó¤   — t        j                  d|||dœd¬«       t        j                  | j                  |||¬«      }| j                  ||«      S )Nrd   rÊ   Úsemr×   rÙ   )r¦   rÚ   r   Únansemr,   r©   rÜ   s           r=   râ   zNumpyExtensionArray.sem  rÝ   r>   c               ó¢   — t        j                  d|||dœd¬«       t        j                  | j                  ||¬«      }| j                  ||«      S )Nrd   rÊ   Úkurtr×   r¥   )r¦   rÚ   r   Únankurtr,   r©   rÍ   s          r=   rå   zNumpyExtensionArray.kurt  óK   € ô 	×"Ñ"Ø˜%¨¸ÑBÈ&õ	
ô —‘ §¡°DÀÔHˆØ×*Ñ*¨4°Ó8Ð8r>   c               ó¢   — t        j                  d|||dœd¬«       t        j                  | j                  ||¬«      }| j                  ||«      S )Nrd   rÊ   Úskewr×   r¥   )r¦   rÚ   r   Únanskewr,   r©   rÍ   s          r=   ré   zNumpyExtensionArray.skew+  rç   r>   c                óŽ  — | j                  «       }|t        j                  ur0|j                  «       r | j                  j                  «       }|||<   n;| j                  }|s-| j                  r!|j                  «       }d|j                  _	        t        j                  ||¬«      }|r|| j                  u r|j                  «       }|S )NFrA   )r   r	   Ú
no_defaultr«   r,   r6   r\   r]   r^   r_   r1   rC   )r:   r7   r6   r‚   r³   rH   s         r=   Úto_numpyzNumpyExtensionArray.to_numpy=  s•   € ð �y‰y‹{ˆØœ3Ÿ>™>Ñ)¨d¯h©h¬jØ—]‘]×'Ñ'Ó)ˆFØ#ˆF�4ŠLà—]‘]ˆFÙ˜DŸNšNØŸ™›�Ø).�—‘Ô&ä—‘˜F¨%Ô0ˆá�F˜dŸm™mÑ+Ø—[‘[“]ˆFàˆr>   c                ó:   —  t        | «      | j                   «      S rY   ©r0   r,   rZ   s    r=   Ú
__invert__zNumpyExtensionArray.__invert__W  ó   € ØŒt�D‹z˜4Ÿ=™=˜.Ó)Ð)r>   c                ó:   —  t        | «      | j                   «      S rY   rï   rZ   s    r=   Ú__neg__zNumpyExtensionArray.__neg__Z  rñ   r>   c                ó:   —  t        | «      | j                  ­«      S rY   rï   rZ   s    r=   Ú__pos__zNumpyExtensionArray.__pos__]  rñ   r>   c                óJ   —  t        | «      t        | j                  «      «      S rY   )r0   Úabsr,   rZ   s    r=   Ú__abs__zNumpyExtensionArray.__abs__`  s   € ØŒt�D‹zœ#˜dŸm™mÓ,Ó-Ð-r>   c                óø  — t        |t        «      r|j                  }t        j                  |t        | «      f«      }t        j                  |«      }t        |«      } || j                  |«      }|t        u s|t        j                  u rE|\  }}t        |t        j                  «      r"| j                  |«      | j                  |«      fS ||fS t        |t        j                  «      r| j                  |«      S |S rY   )r/   r)   r,   r   Úmaybe_prepare_scalar_for_opÚlenÚget_array_opr   ÚdivmodÚrdivmodr1   r2   Ú_wrap_ndarray_result)r:   ÚotherÚopÚpd_oprH   ÚaÚbs          r=   Ú_cmp_methodzNumpyExtensionArray._cmp_methodc  sÓ   € Ü�eÔ0Ô1Ø—N‘NˆEä×/Ñ/°¼¸D»	°|ÓDˆÜ× Ñ  Ó$ˆÜ.¨uÓ5ˆÙ�t—}‘} eÓ,ˆà”‰<˜2¤§¡Ñ,Ø‰DˆAˆqÜ˜!œRŸZ™ZÔ(ð ×0Ñ0°Ó3°T×5NÑ5NÈqÓ5QÐQÐQØ�a�4ˆKä�fœbŸj™jÔ)ð ×,Ñ,¨VÓ4Ð4Øˆr>   c                óÆ   — |j                   j                  dk(  r8t        |j                   «      r#ddlm} |j                  ||j                   ¬«      S  t        | «      |«      S )NÚmr   )ÚTimedeltaArrayrA   )r7   rR   r
   Úpandas.core.arraysr  r‘   r0   )r:   rH   r  s      r=   rÿ   z(NumpyExtensionArray._wrap_ndarray_result|  sP   € ð �<‰<×Ñ Ò#Ô(:¸6¿<¹<Ô(HÝ9à!×-Ñ-¨f¸F¿L¹LÐ-ÓIÐIØŒt�D‹z˜&Ó!Ð!r>   c                ó€   — | j                   j                  dv rdj                  S | j                   dk(  rt        S t        S )NÚSUz'{}'rE   )r7   rR   ÚformatÚreprrx   )r:   Úboxeds     r=   Ú
_formatterzNumpyExtensionArray._formatter…  s2   € à�:‰:�?‰?˜dÑ"Ø—=‘=Ð Ø�Z‰Z˜8Ò#ÜˆKäˆJr>   )F)r;   z np.ndarray | NumpyExtensionArrayr6   ÚboolÚreturnÚNone)r7   zDtype | Noner6   r  r  r)   )r  r   )r  r   )NN)r7   znp.dtype | Noner6   zbool | Noner  r+   )ry   znp.ufuncrz   rx   )T)r6   r  )r  r+   )r  ztuple[np.ndarray, float | None])
rz   r    rŠ   z
int | Noner‹   z#Literal['inside', 'outside'] | Noner6   r  r  r   )
rz   r!   r�   Úintr–   r&   r6   r  r  r   )
r    r$   r�   r  rƒ   r   r�   r   r  r   )r�   úAxisInt | Noner¡   r  r¢   r  )r�   r  r¢   r  r  r#   )r�   r  r¢   r  r¾   r  r  r#   )r�   r  r7   úNpDtype | Noner¡   r  r¢   r  )r�   r  rÏ   r  r¡   r  r¢   r  )
r�   r  r7   r  rÔ   r  r¡   r  r¢   r  )r7   znpt.DTypeLike | Noner6   r  r‚   rE   r  r+   )r  r)   )rH   r+   )r  r  r  zCallable[[Any], str | None])2r4   Ú
__module__Ú__qualname__Ú__doc__Ú_typÚ__array_priority__Ú__annotations__r1   r‡   Ú_internal_fill_valuer9   ÚclassmethodrI   rQ   Úpropertyr7   ra   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  Ú_arith_methodrÿ   r  Ú__classcell__)r<   s   @r=   r)   r)   <   sú  ø… ñ ðL €DØÐØÓØÓØŸ6™6Ðð FKð(Ø6ð(Ø>Bð(à	õ(ð( à/3À%ñØ ,ðØ;?ðà	òó ðõ0ð* òó ðð BFðØ$ðØ3>ðà	óó&>&ôF	ó#òó!ð !Ø:>ØñBð ðBð ð	Bð
 8ðBð ðBð 
óBð:%Bð #ð%Bð ð	%Bð
 ð%Bð ð%Bð 
ó%BðV !ØØñàðð ð	ð
 ðð ðð 
õð6  $ØØØñ
9ð ð
9ð
 ð
9ð ó
9ð  $ØØØñ
9ð ð
9ð
 ð
9ð ó
9ð )-¸Tñ9Ø%ð9Ø6:ð9à	ó9ð )-¸Tñ9Ø%ð9Ø6:ð9à	ó9ð  $ØØñ9ð ð9ð ð	9ð
 ð9ð 
ó9ð"  $ØØñ9ð ð9ð ð	9ð
 ð9ð 
ó9ð"  $Ø $ØØØñ9ð ð9ð ð	9ð ð9ð ó9ð   $ØØ %ØØñ9ð ð9ð
 ð9ð ð9ð ó9ð$  $Ø $ØØØØñ9ð ð9ð ð	9ð ð9ð ð9ð ó9ð&  $Ø $ØØØØñ9ð ð9ð ð	9ð ð9ð ð9ð ó9ð&  $Ø $ØØØØñ9ð ð9ð ð	9ð ð9ð ð9ð ó9ð&  $Ø $ØØØñ9ð ð9ð ð	9ð ð9ð ó9ð$  $Ø $ØØØñ9ð ð9ð ð	9ð ð9ð ó9ð( '+ØØŸ>™>ð	à#ðð ðð ð	ð
 
óó4*ó*ó*ó.òð.  €Mó"÷ð r>   r)   )=Ú
__future__r   Útypingr   r   r   r   r   Únumpyr1   Úpandas._libsr	   Úpandas._libs.tslibsr
   Úpandas.compat.numpyr   r¦   Úpandas.util._decoratorsr   Úpandas.core.dtypes.astyper   r   Úpandas.core.dtypes.castr   r   Úpandas.core.dtypes.commonr   Úpandas.core.dtypes.dtypesr   Úpandas.core.dtypes.missingr   Úpandas.corer   r   r   r   Úpandas.core.arrayliker   Úpandas.core.arrays._mixinsr   Úpandas.core.constructionr   Ú pandas.core.strings.object_arrayr   Úcollections.abcr   Úpandas._typingr   r   r   r    r!   r"   r#   r$   r%   rT   r&   Úpandas.arraysr'   r)   rd   r>   r=   Ú<module>r5     s—   ðÝ "÷õ ó å Ý 2Ý .Ý .÷÷õ 3Ý 2Ý +÷ó õ +Ý BÝ CÝ CáÝ(÷
÷ 
õ 
õ Ý)ñ ˆOÓôO	ØØØóO	ó ñO	r>   