
    m*iB              &       d"   S SK r S SKrS SKrS SKrS SKrS SKrS SKJr  S SK	r
S SKJr  S SKJr  S SKJrJrJrJrJrJrJr  S SKJrJr  S SKJrJrJr  \R>                  RA                  S/ SQ5      S	 5       r!\R>                  RA                  S
/ / S\RD                  " / SS94PSS/S\RD                  " SS/SS94PSS/\#\" \RH                  " SS/\#S95      4PSS/\RJ                  " S5      \" \RH                  " SS/\RJ                  " S5      S95      4P\RH                  " / \#S9S\" \RH                  " / \#S95      4P\RH                  " SS/SS9S\RD                  " SS/SS94P\RH                  " SS/SS9S\RD                  " SS/SS94PSS/S\" \RH                  " SS/SS95      4PSS/S\" \RH                  " SS/\RL                  S95      4P\RH                  " SS/\RN                  S9S\" \RH                  " SS/\RN                  S95      4P\" \RH                  " SS/\RP                  S95      S\" \RH                  " SS/\RP                  S95      4P\
RR                  " SS5      \
RR                  " SS5      /S\" SS/SS94P\
RR                  " SS5      /\
RT                  " S5      \" S/SS94PSS/\RJ                  " S5      \RD                  " \RH                  " SS/SS9SS94PSS/\RJ                  " S5      \RD                  " \RH                  " SS/SS9SS94P\RH                  " SS/SS9S\RD                  " \RH                  " SS/SS9SS94P\
RV                  " SS/5      \RJ                  " S5      \RD                  " SS/SS94P\
RV                  " SS/5      S\RD                  " SS/SS94PSS/\RJ                  " S5      \RD                  " SS/SS94PSS/\
RX                  " SS9\RD                  " SS/\
RX                  " SS9S94PS S!/\RJ                  " S"5      \RD                  " S S!/S#S94P\
RZ                  " S S!/5      \RJ                  " S"5      \RD                  " S S!/S#S94P\RH                  " SS/S$S9\RJ                  " S%5      \RD                  " \RH                  " SS/S$S9S$S94P\
RZ                  " S S!/5      S\RD                  " S S!/S#S94P\R\                  " \R^                  " S&\RL                  S9Ra                  S$5      \RJ                  " S$5      S9S\R\                  " \R^                  " S&\RL                  S9Ra                  S$5      \RJ                  " S$5      S94P\R\                  " \R^                  " S&\RL                  S9Ra                  S$5      \RJ                  " S$5      S9\RJ                  " S$5      \R\                  " \R^                  " S&\RL                  S9Ra                  S$5      \RJ                  " S$5      S94PS'S(/S)\
Rb                  " S'S(/5      4PS'S(/\
Rd                  " SS*S+9\
Rb                  " S'S(/S*S+94P\
Rf                  " SS5      \
Rf                  " S,S-5      /S.\Rh                  " S/S0/5      4PS S/S1\" S S/SS94PSS/S2\
RH                  " SS/S2S94P\
Rj                  " SS/5      S\" \RH                  " SS/\RL                  S95      4PS'S/S3\
Rl                  " 5       Ro                  5       RE                  S'S/\
Rl                  " 5       S94PS'S/S4\" 5       (       aP  \
Rl                  " \Rp                  S59Ro                  5       RE                  S'S/\
Rl                  " \Rp                  S59S9O\" \RH                  " S'S6/5      5      4PS'S/\
Rl                  " 5       \
Rl                  " 5       Ro                  5       RE                  S'S/\
Rl                  " 5       S94PS'S/\
Rl                  " \Rp                  S59\
Rl                  " \Rp                  S59Ro                  5       RE                  S'S/\
Rl                  " \Rp                  S59S94P\RH                  " S'S(/\9S9\
Rl                  " 5       \
Rl                  " 5       Ro                  5       RE                  S'S(/\
Rl                  " 5       S94P\RH                  " S'S(/\9S9\
Rl                  " \Rp                  S59\
Rl                  " \Rp                  S59Ro                  5       RE                  S'S(/\
Rl                  " \Rp                  S59S94PS*S/S7\RD                  " S*S/S7S94PS*S/\
Rt                  " 5       \RD                  " S*S/S7S94P\
Rv                  " SS/5      S\" \RH                  " SS/\RL                  S95      4P\
Rj                  " \
Rb                  " S'S(// S8QS995      S\
Rb                  " S'S(// S8QS994P\Rx                  " S 5      \Rx                  " S5      /S:\" S S/5      4P\" SS/SS9S)\
Rb                  " \
RR                  " SS5      \
RR                  " SS5      /5      4P5      S; 5       r=S< r>\R~                  " S5      r@\R>                  RA                  S=\
RR                  " SS5      \
RR                  " SS5      /\" SS/SS94\
Rf                  " S S5      \
Rf                  " SS5      /\R                  " / S>Q5      4\
R                  " S5      \
R                  " S5      /\RD                  " SS/SS94\ R                   " S?SS5      \ R                   " S@SS5      /\RD                  " SS/SS94\RH                  " SS/SS9\RD                  " \RH                  " SS/SS95      4\RH                  " SS/SAS9\R\                  " \RH                  " SS/SAS9\RJ                  " SA5      S94\
R                  " SSS9\
R                  " SSS9/\RD                  " SS/\
RX                  " SSBSC9S94\ R                   " S?SS\@SD9\ R                   " S@SS\@SD9/\RD                  " SS/\
RX                  " \@SBSC9S94\
R                  " S 5      \
R                  " S!5      /\RD                  " S S!/S#S94\RH                  " SS/S#S9\RD                  " \RH                  " SS/S#S95      4\RH                  " SS/SES9\RD                  " \RH                  " SS/SES95      4SS/\RD                  " SS/SS94SS/\RD                  " SS/SS94S\
R                  /\RD                  " S\
R                  /SS94S\Rp                  /\RD                  " S\Rp                  /SS94SFSG/\RD                  " SFSG/SS94SFS/\RD                  " SF\
R                  /SS94SF\Rp                  /\RD                  " SF\
R                  /SS94SF\
R                  /\RD                  " SF\
R                  /SS94SS/\RD                  " SS/SS94SS/\RD                  " S\
R                  /SS94S\Rp                  /\RD                  " S\
R                  /SS94S\
R                  /\RD                  " S\
R                  /SS94SS/\RD                  " SS/SS94S\Rp                  S/\RD                  " / SHQSS94S'S(/\
Rl                  " 5       Ro                  5       RE                  S'S(/\
Rl                  " 5       S94S'S/\
Rl                  " 5       Ro                  5       RE                  S'S/\
Rl                  " 5       S94\RH                  " S'S(/\9S9\
Rl                  " 5       Ro                  5       RE                  S'S(/\
Rl                  " 5       S94S*SI/\RD                  " S*SI/S7S94S*S/\RD                  " S*S/S7S94/5      SJ 5       rE\R>                  RA                  SK\
RR                  " SS5      \
RR                  " SSL5      /\
Rf                  " S SSMSN9\
Rf                  " SSSOSN9/\
R                  " SSS9\
R                  " SSPS9/\
R                  " SSS9\
R                  " S5      /\RH                  " \
R                  " S5      \
R                  " SSS9/5      /5      SQ 5       rF\R>                  RA                  SK\RH                  " S 5      /5      SR 5       rGSS rHST rISU rJ\ " SV SW\5      5       rK " SX SY\5      rLSZ rMS[ rNg)\    N)using_string_dtype)register_extension_dtype)BooleanArrayDatetimeArrayFloatingArrayIntegerArrayIntervalArraySparseArrayTimedeltaArray)NumpyExtensionArrayperiod_array)DecimalArrayDecimalDtype
to_decimal
dtype_unit)zM8[h]M8[m]zm8[h]r   c                     [         R                  " U 5      nSn[        R                  " [        [
        R                  " U5      S9   [        R                  " / US9  S S S 5        g ! , (       d  f       g = f)Nzdatetime64 and timedelta64 dtype resolutions other than 's', 'ms', 'us', and 'ns' are deprecated. In future releases passing unsupported resolutions will raise an exception.matchdtype)	npr   tmassert_produces_warningFutureWarningreescapepdarray)r   	dtype_varmsgs      ^/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/pandas/tests/arrays/test_array.pytest_dt64_arrayr#   "   sQ     $I	  
	#	#M3	H
9% 
I	H	Hs   A%%
A3zdata, dtype, expectedFloat64r         Int64float32      ?       @int64float642000D2001z	Period[D])freqzdatetime64[ns]zM8[ns]zdatetime64[s]zM8[s]CET)tz1h2hztimedelta64[ns]zm8[ns]zm8[s]ztimedelta64[s]   abcategoryT)ordered      interval)r%   r&   )r:   r;   zSparse[int64]Int16stringstr)na_valueNoneboolean)r6   r7   c)
categoriesdecimalc                 X    [         R                  " XS9n[        R                  " X25        g Nr   r   r   r   assert_equal)datar   expectedresults       r"   
test_arrayrM   0   s    d XXd(FOOF%    c                     [         R                  " SS/5      n [        R                  " X R                  S9n[        R
                  " X5      (       a   e[        R                  " X R                  SS9n[        R
                  " X5      (       a   e[        R                  " X R                  SS9n[        R
                  " X5      (       d   eg )Nr%   r&   r   Tr   copyF)r   r   r   r   r   shares_memory)r6   r7   s     r"   test_array_copyrS   &  s    
!QA
''"A%%%% 	''-A%%%% 	''.AA!!!!rN   zdata, expected)r   r%   r&   i  i  zM8[us]ns)r2   unit)tzinfozm8[us]g?g?)r)   Nr*   Fc                 \    [         R                  " U 5      n[        R                  " X!5        g )NrH   )rJ   rK   rL   s      r"   test_array_inferencerX   8  s    R XXd^FOOF%rN   rJ   Yleft)closedrightUTCc                     [         R                  " U 5      n[        [        R                  " U [        S95      n[
        R                  " X5        g rG   )r   r   r   r   objectr   assert_extension_array_equal)rJ   rL   rK   s      r"   test_array_inference_failsra     s4     XXd^F"288D#?@H##F5rN   c                     [         R                  " [        SS9   [        R                  " U SS9  S S S 5        g ! , (       d  f       g = f)Nz)NumpyExtensionArray must be 1-dimensionalr   r+   r   pytestraises
ValueErrorr   r   )rJ   s    r"   test_nd_raisesrg     s,    	z)T	U
W% 
V	U	Us	   9
Ac                      [         R                  " [        SS9   [        R                  " S5        S S S 5        g ! , (       d  f       g = f)NzCannot pass scalar '1'r   r%   rc    rN   r"   test_scalar_raisesrj     s)    	z)A	B
 
C	B	Bs	   :
Ac                      [         R                  " SS/SS//SS/S9n Sn[        R                  " [        US	9   [         R
                  " U 5        S S S 5        g ! , (       d  f       g = f)
Nr%   r&   r:   r;   AB)columnsz'Cannot pass DataFrame to 'pandas.array'r   )r   	DataFramerd   re   	TypeErrorr   )dfr!   s     r"   test_dataframe_raisesrr     sM    	1v1v&c
	;B
3C	y	,
 
-	,	,s   A
A'c                      [         R                  " [        SS9   [        R                  " / SQSS9  S S S 5        g ! , (       d  f       g = f)Nz6cannot safely cast non-equivalent int(32|64) to uint16r   )r&   r:   UInt16r   )rd   re   rp   r   r   ri   rN   r"   test_bounds_checkrv     s4    	R
 	8,
 
 
s	   ;
A	c                   (    \ rS rSrSr\S 5       rSrg)DecimalDtype2i  decimal2c                     [         $ )zI
Return the array type associated with this dtype.

Returns
-------
type
)DecimalArray2)clss    r"   construct_array_type"DecimalDtype2.construct_array_type  s
     rN   ri   N)__name__
__module____qualname____firstlineno__nameclassmethodr}   __static_attributes__ri   rN   r"   rx   rx     s    D rN   rx   c                   <   ^  \ rS rSr\SSS.U 4S jj5       rSrU =r$ )r{   i  NFrP   c                   > [        U[        R                  [        R                  45      (       a  [	        S5      e[
        TU ]  XUS9$ )N3scalars should not be of type pd.Series or pd.IndexrP   )
isinstancer   SeriesIndexrp   super_from_sequence)r|   scalarsr   rQ   	__class__s       r"   r   DecimalArray2._from_sequence  s>    g		288455QRRw%g%FFrN   ri   )r   r   r   r   r   r   r   __classcell__)r   s   @r"   r{   r{     s    .2 G GrN   r{   c                    U nU" [         R                  " S5      [         R                  " S5      /5      n[        5       n[        R                  " [
        SS9   [        R                  X#S9  S S S 5        [        R                  " USS9n[        R                  UR                  US9n[        R                  " XE5        g ! , (       d  f       NX= f)N12r   r   r   ry   )rE   Decimalrx   rd   re   rp   r{   r   r   r   valuesr   rI   )index_or_seriesboxrJ   r   rL   rK   s         r"   test_array_unboxesr     s    
C$gooc&:;<DOE	N
 	$$T$7

 XXd*-F++DKKu+EHOOF%
 
s   B>>
Cc                      [         R                  " [         R                  S/SS9n U R                  S[        S9n[
        R                  " SS/5      n[        R                  " X5        g )Nr%   zstring[python]r   T)r@   r   )r   r   NAto_numpyboolr   r   assert_numpy_array_equal)arrrL   rK   s      r"   test_array_to_numpy_nar     sM    
((BEE1:%5
6C\\4t\4Fxxt%H1rN   )OdatetimerE   r   numpyr   rd   pytzpandas._configr   pandasr   pandas._testing_testingr   pandas.api.extensionsr   pandas.arraysr   r   r   r   r	   r
   r   pandas.core.arraysr   r   pandas.tests.extension.decimalr   r   r   markparametrizer#   r   r_   r   r   r+   float16int32PeriodPeriodDtypeDatetimeIndexDatetimeTZDtypeTimedeltaIndex_simple_newarangeviewCategoricalCategoricalDtypeIntervalfrom_tuplesr   StringDtyper}   nanr?   BooleanDtyper   r   rM   rS   timezonecetfrom_breaks	Timestamp	Timedeltar   rX   ra   rg   rj   rr   rv   rx   r{   r   r   ri   rN   r"   <module>r      s     	    -   :    'KL
& M
& m	T=//)DEm Q|22Aq6IJm Q,RXXq!fF-KLM	m FHHY#s288I;N OP	
m HHRv&6 :;	
m  HHaV7+''Ag>	
m* HHc3Zy1((#s9E	
)m4 Q/!Qy0QRS5m6 Q-bhh1vRXX.NOP7m> HHaV2::.!Qrzz BC	
=mJ  !Qrxx @A!Qrxx @A	
ImV YYvs#RYYvs%;<&&)4	
Umb YYvs#$NN3&,	
amn FHH%&((!Qx0	
mm| FHH_%((!Qw/w	
{mJ HHaV#34((!Qx0	
ImX ff-.HH%&((&&)9J	
Wmb ff-.((&&)9J	
aml VHH%&((&&)9J	
kmx V%((( (:(:e(D	
wmH 4LHH&'))4,hG	
GmR tTl+HH&'))4,hG	
Qm\ HHaV7+HH%&))!Qw/w	
[mj tTl+))4,hG	
imv &&		!288,11':"((7BS &&		!288,11':"((7BS		
smJ &&		!288,11':"((7BS HHW&&		!288,11':"((7BS		
Gm\ sZc
!;<]m` #Jd3NNC:t4	
_ml [[AAq 12%%vv&67	
kmv Q+q!fG"DEwmz TGRXXq$iw?@{m~ IIq!f!Qrxx @A	
}mJ $KNN!!#^S$Kr~~/?^@	
ImX $K "## NNBFF+!!#^S$Kr~~rvv/N^O$RXXsFm%<=	
Wmj $KNNNN!!#^S$Kr~~/?^@	
imx $KNNBFF+NNBFF+!!#^S$Kr~~rvv/N^O	
wmH HHc3Zs+NNNN!!#^S#Jbnn.>^?	
EmX HHc3Zs+NNBFF+NNBFF+!!#^S#Jbnnbff.M^N	
Umh 4L''tIF	
gmr 4LOO''tIF	
qm| 
1a&	4!4RXXq!fBHH5U!VW}mB IIbnnc3ZOLMNNC:/B	
AmL //!
gooa0	19j!Q>PQMmR &&)4NNBIIfc2BIIfc4JKL	
Qmpb&cpb&
" mmE  YYvs#RYYvs%;<&&)4	

 ++a
R[[A.	/1J1J91UV \\&!2<<#78((&&)9J	

 tQ*H,=,=dAq,IJ((&&)9J	

 HHaV8,((1a&)IJ	

 HHaV8,%%!Qx08J	
 \\&U+R\\&U-KL(( (:(:e$(O	
 !!$1S9!!$1S9 (( (:(:c(M	
 \\$d!34))4,hG	

 HHaV8,))"((Aq6*JK	

 HHaV8,))"((Aq6*JK	

 Q,,aV7CD
TL//D	IJ
RUU\00!RUU7KL
RVVl111bff+WMN
s]113*INO
tm22C<yQR
rvv44c255\ST
ruu}33S"%%L	RS
s]113*INO
tm22C<yQR
rvv44c255\ST
ruu}33S"%%L	RS
S=//c
)LM(()9K	
 #JNN!!#^S#Jbnn.>^?		
 $KNN!!#^S$Kr~~/?^@		
 HHc3Zs+NN!!#^S#Jbnn.>^?	
 33T5MST
|22D$<yQRGdgP&QgP&
 
 
63	63!78	Q&	)2;;q!G+LM	f	'f)GH	f	'f)=>
",,v&V(FGH
66 "((1+/& 0&

- L  GL G& 2rN   