
    I jЃ                    z   S r SSKJr  SSKJr  SSKJrJr  SSKr	SSKJ
r
  SSKJr  SSKJr  SS	KJr  SS
KJrJrJrJr  SSK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"  SSK#J$r$  SSK%J&r&J'r(  SSK)J*r*  SSK+J,r,  SSK-J.r/J0r0J1r1J2r2  SSK3J4r4J5r5J6r6J7r7J8r8J9r9J:r:J;r;J<r<  SSK=J>r>J?r?J@r@JArA  SSKBJCrCJDrD  \(       a  SSKEJFrFJGrG  SSKHJIrIJJrJJKrKJLrL  SSSS.         S1S jjrM        S2S jrN      S3S jrO        S4S jrPSSS.       S5S jjrQ          S6S  jrRS7S! jrSS8S9S" jjrTS:S# jrU      S;S$ jrVS<S% jrW          S=S& jrXS<S' jrY          S>S( jrZS) r[ S?     S@S* jjr\SAS+ jr]      SBS, jr^      SCS- jr_        SDS. jr`      SES/ jra  SF         SGS0 jjrbg)Hz~
Functions for preparing various inputs passed to the DataFrame or Series
constructors before passing them to a BlockManager.
    )annotations)abc)TYPE_CHECKINGAnyN)ma)using_string_dtype)lib)astype_is_view)"construct_1d_arraylike_from_scalardict_compatmaybe_cast_to_datetimemaybe_convert_platform)is_1d_only_ea_dtypeis_integer_dtypeis_list_likeis_named_tupleis_object_dtype	is_scalar)BaseMaskedDtypeExtensionDtype)ABCDataFrame	ABCSeries)isna)
algorithmscommon)ExtensionArray)StringDtype)arrayextract_arrayrange_to_ndarraysanitize_array)	DatetimeIndexIndex
MultiIndexTimedeltaIndexdefault_indexensure_indexget_objs_combined_axismaybe_sequence_to_rangeunion_indexes)BlockPlacementensure_block_shape	new_blocknew_block_2d) create_block_manager_from_blocks'create_block_manager_from_column_arrays)HashableSequence)	ArrayLikeDtypeObjManagernptT)dtypeverify_integrityconsolidatec                  U(       a)  Uc  [        U 5      nO[        U5      n[        XU5      u  pO[        U5      nU  Vs/ s H  n[        USS9PM     n nS/[	        U 5      -  nU  H[  n[        U[        R                  [        45      (       a*  UR                  S:w  d  [	        U5      [	        U5      :w  d  MR  [        S5      e   [        U5      n[	        U5      [	        U 5      :w  a  [        S5      eX/n	[        X	XVS9$ s  snf )zg
Segregate Series based on type and coerce into matrices.

Needs to handle a lot of exceptional cases.
NTextract_numpy   zYArrays must be 1-dimensional np.ndarray or ExtensionArray with length matching len(index)z#len(arrays) must match len(columns))r9   refs)_extract_indexr'   _homogenizer   len
isinstancenpndarrayr   ndim
ValueErrorr0   )
arrayscolumnsindexr7   r8   r9   r>   xarraxess
             s/root/GenerationalWealth/GenerationalWealth/venv/lib/python3.13/site-packages/pandas/core/internals/construction.pyarrays_to_mgrrN   `   s    ="6*E 'E #6%8 U#@FG1-6GvF# CsRZZ$@AA88q=s8s5z) 6   7#G
7|s6{">?? D2+ / Hs    Dc                (   [         R                  " U 5      nUc  [        [        U5      5      nO[	        U5      nUb  [	        U5      n[        XR5      u  pg[        XgU[        U5      5      u  pgUc  Un[        XbXS9nU(       a  UR                  SS9nU$ )z9
Extract from a masked rec array and create the manager.
r7   Tdeep)	r   getdatar&   rA   r'   	to_arraysreorder_arraysrN   copy)	datarI   rH   r7   rV   fdatarG   arr_columnsmgrs	            rM   rec_array_to_mgrr[      s     JJtE}c%j)U#w'#E3F )gs5zRF

<ChhDh!J    c                   [        U [        [        [        45      (       + n[        U [        5      (       a  Uc#  U R                  b  [        U R                  /5      nUc  U R
                  nOU R                  U5      n [        U 5      (       d,  Ub)  [        U5      (       a  [        R                  " S[        S9n [        U SS 5      nS n[        U5      (       d  [        U5      (       Ga&  [        U [        R                  [        45      (       a@  U R                  S:  a0  [        U R                   S   5       Vs/ s H  nU S S 2U4   PM     n nOU /n U(       a  U  V	s/ s Hs  n	[        U	[        [        [        45      (       aN  [        U	R"                  5      (       a4  [        U	[        5      (       a  U	R%                  SS9OU	R%                  5       OU	PMu     n n	Uc  [        [        [        U 5      5      5      nO['        U5      n[)        XXUS9$ [        U [        [        45      (       a1  U(       d*  Ub  [+        U R"                  U5      (       a  U R,                  n[        U[.        5      (       aD  [1        U SS9n U(       a  U R%                  5       n U R                  S:X  a  U R3                  S	S5      n O[        U [        [        45      (       a:  U(       a  U R4                  R%                  5       n OU R4                  n [7        U 5      n O[        U [        R                  [        45      (       a^  U(       a5  Ub  [+        U R"                  U5      (       a  [        R8                  " U SS
S9n O[        R:                  " U 5      n [7        U 5      n O	[=        XS9n Ub  U R"                  U:w  a  [?        U S UUSS9n [A        U R                   S   U R                   S   XS9u  p[C        XU5        U RD                  n Uc  U(       a  [G        U R"                  5      (       a  [I        U 5      n
U
 V	s/ s H/  n	[J        RL                  " U	SSS[        R"                  " S5      S9PM1     nn	[O        S [Q        XSS9 5       5      (       a;  [S        U5       VVs/ s H"  u  p[U        [W        US5      [Y        U5      S9PM$     nnnO[Y        [[        [        U5      5      5      n[U        XUS9nU/nOUc  U R"                  R\                  S:X  a  [_        5       (       a~  [a        [        Rb                  S9n[I        U 5      n
[S        U
5       VVs/ s HC  u  nn[e        URg                  5       Ri                  UUS9[Y        [[        UUS-   5      5      SS9PME     nnnO*[Y        [[        [        U5      5      5      n[U        XUS9nU/n[        U5      S:X  a  / n[k        XU/SS9$ s  snf s  sn	f s  sn	f s  snnf s  snnf )N)r   r=   rP   r7   r=   TrQ   r7   r9   r;   F)rV   orderrV   )r7   rV   allow_2dr   )rI   rH   FM8[s]convert_numericconvert_non_numericconvert_to_nullable_dtypedtype_if_all_natc              3  ,   #    U  H
  u  pXLv   M     g 7fN ).0rJ   ys      rM   	<genexpr>!ndarray_to_mgr.<locals>.<genexpr>A  s     T&Sdaqz&Ss   )strict   )	placement)rs   r>   U)na_value)rE   )r8   )6rB   r   r#   r   namerI   reindexrA   rC   emptyobjectgetattrr   rD   rE   rangeshaper7   rV   r'   rN   r
   _referencesr   r   reshape_values
_ensure_2dr   asarray_prep_ndarrayliker!   	_get_axes!_check_values_indices_shape_matchTr   listr	   maybe_convert_objectsanyzip	enumerater.   r,   r+   slicekindr   r   nanr-   construct_array_type_from_sequencer/   )valuesrI   rH   r7   rV   infer_objectvdtyper>   nrJ   obj_columnsmaybe_datetimedvalblock_valuesbpnbirW   s                     rM   ndarray_to_mgrr      s5   
 "&9e^*LMML&)$$?{{&.=LLE^^E*F 6{{w2s7||XXfF3FVWd+FD6""&9%&@&@ frzz>:;;a v||A//A q!t/  F
 XF   
  A a.%!CDD'00 '1E&:&:T"      ?E#f+./G"7+GVedSS&9e,--.u*M*M%%D&.)) vT:[[]F;;!^^B*F	FY.	/	/^^((*F^^FF#	FRZZ8	9	9U]nV\\5&I&I XXf4s;FZZ'FF#
 #65V\\U2
 QaNE &fW=XXF
 }/&,,*G*G6l !
 ! %% !&$(*/!#'!2 ! 	 
 Tc+d&STTT  )88GA /a8NSTDUV8  L
  c'l 34Bf>B4L	6<<,,38J8L8LRVV,6l %[1
 24 **,;;D;NuQA/
 2 	 
 E#g,/0&T:t
7|q+& CV

s    8WA:W'6W)W$ A
W*c                <   U R                   S   [        U5      :w  d  U R                   S   [        U5      :w  ad  U R                   S   Ss=:X  a  [        U5      :  a  O  O[        S5      eU R                   n[        U5      [        U5      4n[        SU SU 35      eg)zP
Check that the shape implied by our axes matches the actual shape of the
data.
r=   r   z)Empty data passed with indices specified.zShape of passed values is z, indices imply N)r|   rA   rF   )r   rI   rH   passedimplieds        rM   r   r   e  s     ||A#g,&&,,q/SZ*G <<?a,#e*,HIIu:s7|,5fX=MgYWXX +Hr\   r7   rV   c                  UGb  [        U5      nUb9  [        U[        R                  5      (       d  UR                  /[        U5      -  nO[        R                  /[        U5      -  n[        5       n[        U R                  5       5      n[        U R                  5       5      n[        U5       HT  u  p UR                  U
5      nX   nXU	'   [        U5      (       d  M1  [!        U5      (       d  MC  UR                  U	5        MV     UcD  U(       a1  [#        [        U5       V	Vs/ s H  u  pX;  d  M  UPM     snn	5      nO[#        U5      nO[        U5      nU(       aN  [%        U5      (       d>  U H8  n	['        XY   [        U5      Ub  UO[        R                  " S5      5      nXU	'   M:     Og[)        [        U R                  5       5      5      nU(       a  [+        U5      O
[-        S5      nU Vs/ s H  n[.        R0                  " X   5      PM     nnU(       a  U Vs/ s H}  n[        U[2        5      (       a  UR5                  5       OT[        U[*        5      (       d/  [        U[6        5      (       a)  [9        UR                  5      (       a  UR5                  SS9OUPM     nn[;        XRXUS9$ ! [         a    UR                  U	5         GM"  f = fs  snn	f s  snf s  snf )z
Segregate Series based on type and coerce into matrices.
Needs to handle a lot of exceptional cases.

Used in DataFrame.__init__
ry   r   TrQ   r^   )r'   rB   rC   r7   ru   rA   r   setkeysr   r   r   get_locKeyErroraddr   r   r?   r   r   r)   r#   r&   commaybe_iterable_to_listr   rV   r   r   rN   )rW   rI   rH   r7   rV   rG   midxs	data_keysdata_valuesr   columnidxr   rK   r   krJ   s                    rM   dict_to_mgrr   w  su     w'Zrxx%@%@nn%G4FffXG,F -	4;;=)"7+IA''/  $E1IDKK		! , = &+4V+<O+<xqU+<O 'v. 'E )%008IJ".EBHHX4F
  q	  'tDIIK'89!%%+=+;?CDt!#,,TW5tD  
  a00 
 #1e,,&q)449LQWW9U9U FFF%
 	  	 
  %$OOo  		! P* E

s+   6J3%K
4K
3"K"BK!3KKc                
   [        U S   5      (       a  Uc  [        U S   R                  5      n[        XUS9u  pA[        U5      nUc8  [	        U S   [
        5      (       a  [        U 5      nO[        [        U 5      5      nXAU4$ )z9
Convert a single sequence of arrays to multiple arrays.
r   rP   )	r   r'   _fieldsrT   rB   r   _get_names_from_indexr&   rA   )rW   rH   rI   r7   rG   s        rM   nested_data_to_arraysr     sz     d1g7?tAw/U;OF7#G}d1gy)))$/E!#d),EE!!r\   c                    [        U 5      S:  =(       aZ    [        U S   5      =(       aE    [        U S   SS5      S:H  =(       a+    [        U [        5      =(       a    U R
                  S:H  (       + $ )z/
Check if we should use nested_data_to_arrays.
r   rE   r=   rr   )rA   r   rz   rB   r   rE   )rW   s    rM   treat_as_nestedr     sc    
 	D	A 	Fa!	FDGVQ'1,	F D.1Ddii1nE	r\   c                @   [        U 5      S:X  a  [        R                  " S[        S9$ [	        U [
        5      (       a   [        U 5      nUS[        R                  4   $ S n[        U S   5      (       a-  [        R                  " U  Vs/ s H
  oC" U5      PM     sn5      n Oj[	        U S   [        R                  5      (       a@  U S   R                  S:X  a-  [        R                  " U  Vs/ s H
  oC" U5      PM     sn5      n OU" U 5      n [        U 5      $ s  snf s  snf )Nr   )r   r   rP   .c                ~    [        U 5      (       a  [        U [        5      (       a  U $ [        U SS9n [	        U 5      nU$ )NTr;   )r   rB   r   r   r   )vress     rM   convert"_prep_ndarraylike.<locals>.convert  s9    A*Q"="=H!40$Q' 
r\   )rA   rC   rx   ry   rB   r{   r    newaxisr   r   rD   rE   r   )r   rV   rK   r   r   s        rM   r   r     s     6{a xxf--	FE	"	"v&3

?## F1Iv6v!71:v67	F1Irzz	*	*vay~~/Bv6v!71:v67f 7 7s   D*Dc                    U R                   S:X  a"  U R                  U R                  S   S45      n U $ U R                   S:w  a  [        SU R                   35      eU $ )z:
Reshape 1D values, raise on anything else other than 2D.
r=   r   rr   zMust pass 2-d input. shape=)rE   r~   r|   rF   )r   s    rM   r   r     s\     {{aa! 45 M 
	6v||nEFFMr\   c                v   S n/ n/ nU  GH  n[        U[        [        45      (       ar  Ub  UR                  U5      n[        U[        5      (       a   UR                  ULa  UR                  U5      nUR                  UR                  5        UR                  nGO[        U[        5      (       a  Uc  UR                  S5      n[        U[        [        45      (       a  [        U5      nO[        U5      n[        U[        5      (       d9  UR                  (       a(  SSKJn  U" U5      R                  U5      R                  nO-["        R$                  " XcR                  [&        R(                  S9n[+        XaUSS9n[,        R.                  " Xa5        UR                  S 5        UR                  U5        GM     XE4$ )NOr   )Series)defaultFr   )rB   r   r#   astyperI   rw   appendr}   r   dictr"   r%   r   r$   hasnanspandasr   r	   fast_multigetrC   r   r!   r   require_length_match)rW   rI   r7   oindexhomogenizedr>   valr   s           rM   r@   r@   )  s^    FKDcIu-.. jj'#y))ciiu.D kk%(KK(++C#t$$ >"\\#.Fem^%DEE%c*C s)C!%44 . +--e4<<C ++CPC 5uEC$$S0KK3O R r\   c                   [        U 5      S:X  a  [        S5      $ [        5       n/ nSnSnSnU  H  n[        U[        5      (       a  SnUR                  UR                  5        M7  [        U[        5      (       a,  SnUR                  [        UR                  5       5      5        Mx  [        U5      (       a/  [        USS5      S:X  a  SnUR                  [        U5      5        M  [        U[        R                  5      (       d  M  UR                  S:  d  M  [!        S5      e   U(       d  U(       d  [!        S5      eU(       a  [#        U5      nOU(       a
  [#        USS9nU(       az  [        U5      S:  a  [!        S	5      eU(       a  [!        S
5      eUR%                  5       nU(       a,  U[        W5      :w  a  SU S[        U5       3n	[!        U	5      eO[        U5      n['        W5      $ )zJ
Try to infer an Index from the passed data, raise ValueError on failure.
r   FTrE   r=   z,Per-column arrays must each be 1-dimensionalz2If using all scalar values, you must pass an indexsortz%All arrays must be of the same lengthz<Mixing dicts with non-Series may lead to ambiguous ordering.zarray length z does not match index length )rA   r&   r   rB   r   r   rI   r   r   r   r   rz   r   rC   rD   rE   rF   r*   popr'   )
rW   raw_lengthsindexeshave_raw_arrayshave_series
have_dictsr   rI   
raw_lengthmsgs
             rM   r?   r?   ]  s   
 4yA~Q%K,.GOKJc9%%KNN399%T""JNN4
+,#73#:a#?"OOOCH%RZZ((SXX\KLL  ;MNNg&	gE2{aDEEN  !__&
SZ'#J< 0!%j\+  !o% ( "*-Er\   c                8   Ub  UR                  U5      (       d  / nUR                  U5      n[        U5       HY  u  pgUS:X  a9  [        R                  " U[
        S9nUR                  [        R                  5        OX   nUR                  U5        M[     Un UnX4$ )z9
Preemptively (cheaply) reindex arrays with new columns.
r_   rP   )	equalsget_indexerr   rC   rx   ry   fillr   r   )	rG   rY   rH   length
new_arraysindexerr   r   rK   s	            rM   rU   rU     s     ~~k***,J!--g6G!'*7((68CHHRVV$ )C!!#& +  F!Kr\   c                   [        S U  5       5      nU(       d  [        [        U 5      5      $ [        [	        [        U 5      5      5      nSn[        U 5       H'  u  pE[        USS 5      nUb  XbU'   M  SU 3X$'   US-  nM)     [        U5      $ )Nc              3  @   #    U  H  n[        US S5      SLv   M     g7f)rv   N)rz   )rm   ss     rM   ro   (_get_names_from_index.<locals>.<genexpr>  s     Kd640<ds   r   rv   zUnnamed r=   )r   r&   rA   r   r{   r   rz   r#   )rW   has_some_namerI   countr   r   r   s          rM   r   r     s    KdKKMSY'' s4y!12EE$Avt$=!H!%)EHQJE   <r\   c                t    Uc  [        U 5      nO[        U5      nUc  [        U5      nX#4$ [        U5      nX#4$ rk   )r&   r'   )NKrI   rH   s       rM   r   r     sJ     }a U#" > w'>r\   c                6    SSK Jn  [        [        X5      5      $ )as  
Converts a list of dataclass instances to a list of dictionaries.

Parameters
----------
data : List[Type[dataclass]]

Returns
--------
list_dict : List[dict]

Examples
--------
>>> from dataclasses import dataclass
>>> @dataclass
... class Point:
...     x: int
...     y: int

>>> dataclasses_to_dicts([Point(1, 2), Point(2, 3)])
[{'x': 1, 'y': 2}, {'x': 2, 'y': 3}]

r   )asdict)dataclassesr   r   map)rW   r   s     rM   dataclasses_to_dictsr     s    0 #F!""r\   c                   [        U 5      (       d  [        U [        R                  5      (       a  U R                  R
                  bv  [        U R                  R
                  5      nU Vs/ s H  o0U   PM	     nn[        U 5      S:X  a1  [        U5       H"  u  pVUR                  S:X  d  M  USS2S4   XE'   M$     XA4$ / [        / 5      4$ [        U [        R                  5      (       aP  U R                  R
                  b9  Uc  [        U R                  R
                  5      nU Vs/ s H  opU   PM	     nnXA4$ [        U S   [        [        45      (       a  [        U 5      nO|[        U S   [        R                  5      (       a  [        X5      u  paOL[        U S   [         5      (       a  [#        X5      u  paO&U  Vs/ s H  n[        U5      PM     n n[        U 5      n[%        XaU5      u  pX4$ s  snf s  snf s  snf )z
Return list of arrays, columns.

Returns
-------
list[ArrayLike]
    These will become columns in a DataFrame.
Index
    This will become frame.columns.

Notes
-----
Ensures that len(result_arrays) == len(result_index).
Nr   rr   )rA   rB   rC   rD   r7   namesr'   r   rE   r#   r   tuple_list_to_arraysr   Mapping_list_of_dict_to_arraysr   _list_of_series_to_arrays_finalize_columns_and_data)
rW   rH   r7   rv   rG   r   rK   r   rJ   contents
             rM   rT   rT     s   $ t99dBJJ''zz+&tzz'7'78189t*9t9> #,F"388q=(+AqD	FI #4 &<###	D"**	%	%$***:*:*F?DJJ,,-G#*+7aq'7+$q'D%=))d#	DGS[[	)	).t=W	DGY	'	'0?W #''$Qa$'d#1#FG? :  , (s   *G0&G5=G:c                    [        U S   [        5      (       a  [        R                  " U 5      nU$ [        R                  " U 5      nU$ )Nr   )rB   r   r	   to_object_array_tuplesto_object_array)rW   r   s     rM   r   r   0  sC     $q'5!!,,T2 N %%d+Nr\   c                   Uc9  U  Vs/ s H"  n[        U[        [        45      (       d  M   UPM$     nn[        USS9n0 n/ nU  H  n[	        USS 5      nUc  [        [        U5      5      n[        U5      U;   a  U[        U5         nOUR                  U5      =o[        U5      '   [        USS9n	UR                  [        R                  " X5      5        M     [        R                  " U5      n
X4$ s  snf )NFr   rI   Tr;   )rB   r   r   r(   rz   r&   rA   idr   r   r   r   take_ndrC   vstack)rW   rH   rJ   	pass_dataindexer_cachealigned_valuesr   rI   r   r   r   s              rM   r   r   ;  s      $Q1
1y,6O(PQ	Q(?+-MN7D)=!#a&)Ee9%#BuI.G161B1B71KKGBuI.q5j00AB  ii'G) Rs
   C2C2c                f   U  Vs/ s H"  n[        U5      [        L a  UO
[        U5      PM$     n nUcX  S U  5       n[        S U  5       5      (       + n[        R                  " X4S9n[        U5      n[        R                  " X5      nXa4$ [        R                  " U [        U5      5      nXa4$ s  snf )a  
Convert list of dicts to numpy arrays

if `columns` is not passed, column names are inferred from the records
- for OrderedDict and dicts, the column names match
  the key insertion-order from the first record to the last.
- For other kinds of dict-likes, the keys are lexically sorted.

Parameters
----------
data : iterable
    collection of records (OrderedDict, dict)
columns: iterables or None

Returns
-------
content : np.ndarray[object, ndim=2]
columns : Index
c              3  T   #    U  H  n[        UR                  5       5      v   M      g 7frk   )r   r   )rm   rJ   s     rM   ro   *_list_of_dict_to_arrays.<locals>.<genexpr>v  s     ,t!tAFFH~~ts   &(c              3  B   #    U  H  n[        U[        5      v   M     g 7frk   )rB   r   )rm   ds     rM   ro   r   w  s     9Dqz!T**D   r   )typer   r   r	   fast_unique_multiple_list_genr'   dicts_to_arrayr   )rW   rH   r  genr   pre_colsr   s          rM   r   r   Z  s    2 8<<t!aDAd1g-tD<,t,9D99944SDx( $$T4  $$T4=9 =s   )B.c                    [        U R                  5      n [        X15      nU(       a*  US   R
                  [        R                  :X  a	  [        X2S9nX14$ ! [         a  n[	        U5      UeSnAff = f)z?
Ensure we have valid columns, cast object dtypes if possible.
Nr   rP   )	r   r   _validate_or_indexify_columnsAssertionErrorrF   r7   rC   object_convert_object_array)r   rH   r7   contentserrs        rM   r   r     sk     GIIH'/B
 HQK%%3'>  'o3&'s   A 
A1 A,,A1c                   Uc  [        [        U 5      5      nU$ [        U[        5      =(       a    [	        S U 5       5      nU(       d;  [        U5      [        U 5      :w  a#  [        [        U5       S[        U 5       S35      eU(       a|  [        U Vs1 s H  n[        U5      iM     sn5      S:  a  [        S5      eU(       aA  [        US   5      [        U 5      :w  a&  [        [        US   5       S[        U 5       S35      eU$ s  snf )ah  
If columns is None, make numbers as column names; Otherwise, validate that
columns have valid length.

Parameters
----------
content : list of np.ndarrays
columns : Index or None

Returns
-------
Index
    If columns is None, assign positional column index value as columns.

Raises
------
1. AssertionError when content is not composed of list of lists, and if
    length of columns is not equal to length of content.
2. ValueError when content is list of lists, but length of each sub-list
    is not equal
3. ValueError when content is list of lists, but length of sub-list is
    not equal to length of content
c              3  B   #    U  H  n[        U[        5      v   M     g 7frk   )rB   r   )rm   cols     rM   ro   0_validate_or_indexify_columns.<locals>.<genexpr>  s      7
-4cJsD!!Wr  z! columns passed, passed data had z columnsr=   z<Length of columns passed for MultiIndex columns is differentr   )r&   rA   rB   r   allr  rF   )r   rH   
is_mi_listr  s       rM   r
  r
    s   4 G-2 N-  . 
3 7
-47
 4

 c'lc'l: w<. A#g,xX  0CH01A5 R 
 3wqz?c'l: 71:''H7|nH.  N 1s   D
c                T   ^^^ UUU4S jnU  Vs/ s H
  oT" U5      PM     nnU$ s  snf )a  
Internal function to convert object array.

Parameters
----------
content: List[np.ndarray]
dtype: np.dtype or ExtensionDtype
dtype_backend: Controls if nullable/pyarrow dtypes are returned.
coerce_float: Cast floats that are integers to int.

Returns
-------
List[ArrayLike]
c           	     <  > T[         R                  " S5      :w  Ga  TS:g  =(       d    [        T[        5      n[        R
                  " U TUS9n Tc  U R                  [         R                  " S5      :X  a  TS:g  n[        R
                  " U SSU[         R                  " S5      S9n U(       aM  U R                  [         R                  " S5      :X  a)  [        5       nUR                  5       nUR                  XS9n U $ TS:w  aC  [        U [         R                  5      (       a$  U R                  R                  S	;   a
  [        U SS
9n U $ [        T[        5      (       a#  TR                  5       nUR                  U TSS9n U $ TR                  S;   a  [        U T5      n U $ )Nr   numpy)	try_floatrh   FTrd   re   rP   iufbrb   r   mM)rC   r7   rB   r   r	   r   r   r   r   rD   r   pd_arrayr   r   )	rK   to_nullablerh   	new_dtypearr_clsclscoerce_floatr7   dtype_backends	         rM   r   %convert_object_array.<locals>.convert  sv   BHHSM! (72Xj6XK++&*5C }99-0=0H-33 ).,02K)+'):C 1SYY"((3-5O$/M	"+"@"@"B%44S4J& 
% #g-*S"**2M2Myy~~/&s7  
 E>22 002((E(F 
 t# -S%8
r\   rl   )r   r7   r"  r!  r   rK   rG   s    ```   rM   r  r    s-    ,4l '..gsgclgF.M /s   %)
rH   r#   r7   DtypeObj | Noner8   boolr9   r%  returnr5   )rW   znp.rec.recarray | np.ndarrayr7   r$  rV   r%  r&  r5   )r7   r$  rV   r%  r&  r5   )r   
np.ndarrayrI   r#   rH   r#   r&  None)rW   r   r7   r$  rV   r%  r&  r5   )
rW   r2   rH   Index | NonerI   r)  r7   r$  r&  z$tuple[list[ArrayLike], Index, Index])r&  r%  )T)rV   r%  r&  r'  )r   r'  r&  r'  )rI   r#   r7   r$  r&  z!tuple[list[ArrayLike], list[Any]])r&  r#   )
rG   list[ArrayLike]rY   r#   rH   r)  r   intr&  tuple[list[ArrayLike], Index])
r   r+  r   r+  rI   r)  rH   r)  r&  ztuple[Index, Index]rk   )rH   r)  r7   r$  r&  r,  )rW   zlist[tuple | list]r&  r'  )rW   r   rH   r)  r&  tuple[np.ndarray, Index])rW   z
list[dict]rH   r)  r&  r-  )r   r'  rH   r)  r7   r$  r&  r,  )r   zlist[np.ndarray]rH   r)  r&  r#   )r  F)
r   zlist[npt.NDArray[np.object_]]r7   r$  r"  strr!  r%  r&  r*  )c__doc__
__future__r   collectionsr   typingr   r   r  rC   r   pandas._configr   pandas._libsr	   pandas.core.dtypes.astyper
   pandas.core.dtypes.castr   r   r   r   pandas.core.dtypes.commonr   r   r   r   r   r   pandas.core.dtypes.dtypesr   r   pandas.core.dtypes.genericr   r   pandas.core.dtypes.missingr   pandas.corer   r   r   pandas.core.arraysr   pandas.core.arrays.string_r   pandas.core.constructionr   r  r   r    r!   pandas.core.indexes.apir"   r#   r$   r%   r&   r'   r(   r)   r*   pandas.core.internals.blocksr+   r,   r-   r.   pandas.core.internals.managersr/   r0   collections.abcr1   r2   pandas._typingr3   r4   r5   r6   rN   r[   r   r   r   r   r   r   r   r@   r?   rU   r   r   r   rT   r   r   r   r   r
  r  rl   r\   rM   <module>rD     sF  
 # 
   -  4   , . 2 
 
 
 
 
  "!88
 8 8 8 8v
& 	
  La#2a:>aaHYY$Y/4Y	Y. "UP
UP
 UP UP UPp"
"" " 	"
 *"4	#L11.1&1h7t*/:FPS"6$
'2>$#D ;?66(76"6r
 >'
'' 'T  #	,44(44
4t !	N*NN N 	N
 Nr\   