
    I ju;              	      P   S SK Jr  S SKJrJrJr  S SKJrJrJ	r	  S SK
Jr  \(       a  S SKJrJr  0 SS_SS_S	S
_SS
_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_SS_S S!_S"S#S#S$S$S%S%S&.ErS1S' jrS2S( jrS3S) jr\" S*5       " S+ S,5      5       r\" S-5      S4S. j5       rS,S//rg0)5    )annotations)CallableHashableSequence)TYPE_CHECKINGAnyNoReturn)
set_module)	DataFrameSeries__add__+__radd____sub__-__rsub____mul__*__rmul____truediv__/__rtruediv____floordiv__z//__rfloordiv____mod__%__rmod____ge__z>=__gt__>__le__z<=__lt__<__eq__z==z!=&|^)__ne____and____rand____or____ror____xor____rxor__c                .   ^  [        U 4S jU 5       5      $ )Nc              3  t   >#    U  H-  n[        U[        5      (       a  UR                  T5      OUv   M/     g 7fN)
isinstance
Expression_eval_expression).0xdfs     `/root/GenerationalWealth/GenerationalWealth/venv/lib/python3.13/site-packages/pandas/core/col.py	<genexpr>_parse_args.<locals>.<genexpr>6   s0      LPq*Q
";";2BDs   58)tuple)r7   argss   ` r8   _parse_argsr=   4   s     LP      c           	         UR                  5        VVs0 s H.  u  p#U[        U[        5      (       a  UR                  U 5      OU_M0     snn$ s  snnf r1   )itemsr2   r3   r4   )r7   kwargskeyvals       r8   _parse_kwargsrD   ;   sO     &HC 	C)D)DS!!"%#M&  s   5Ac                    SR                  S U  5       5      nSR                  S UR                  5        5       5      n/ nU(       a  UR                  U5        U(       a  UR                  U5        SR                  U5      $ )Nz, c              3  8   #    U  H  n[        U5      v   M     g 7fr1   )repr)r5   args     r8   r9   ,_pretty_print_args_kwargs.<locals>.<genexpr>D   s     6#DIIs   c              3  6   #    U  H  u  pU S U< 3v   M     g7f)=N )r5   kvs      r8   r9   rI   E   s     D^TQqc1%L^s   )joinr@   append)r<   rA   inputs_reprkwargs_reprall_argss        r8   _pretty_print_args_kwargsrT   C   sb    ))666K))DV\\^DDKH$$99Xr>   zpandas.api.typingc                  .   \ rS rSrSr S4       S5S jjrS6S jr S7         S8S jjrS9S jrS:S jr	S:S jr
S:S	 jrS:S
 jrS:S jrS:S jrS:S jrS:S jrS:S jrS:S jrS:S jrS:S jrS:S jrS:S jrS:S jrS:S jrS:S jrS:S jrS;S jrS;S jrS:S jrS:S jrS:S jrS:S jr S:S jr!S:S  jr"S:S! jr#S:S" jr$S<S# jr%S<S$ jr&S<S% jr'S<S& jr(          S=S' jr)S>S( jr*S?S) jr+S@S* jr,SAS+ jr-SBS, jr.SCS- jr/SDS. jr0SDS/ jr1SDS0 jr2SES1 jr3S2r4g3)Fr3   P   zx
Class representing a deferred column.

This is not meant to be instantiated directly. Instead, use :meth:`pandas.col`.
c                (    Xl         X l        X0l        g r1   )_func	_repr_str_needs_parentheses)selffuncrepr_strneeds_parentheses       r8   __init__Expression.__init__X   s     
!"2r>   c                $    U R                  U5      $ r1   )rX   )r[   r7   s     r8   r4   Expression._eval_expressionb   s    zz"~r>   c                v   ^ ^^ [        T[        5      (       a  [        UUU 4S jUUS9$ [        UUU 4S jUUS9$ )Nc                d   > [        TR                  U 5      T5      " TR                  U 5      5      $ r1   getattrr4   r7   opotherr[   s    r8   <lambda>%Expression._with_op.<locals>.<lambda>j   s*    74#8#8#<bA**2.r>   r^   c                F   > [        TR                  U 5      T5      " T5      $ r1   re   rg   s    r8   rj   rk   r   s    74#8#8#<bA%Hr>   )r2   r3   )r[   rh   ri   r]   needs_parenthesess   ```  r8   _with_opExpression._with_ope   sD     eZ(( !2  H!2 r>   c                    U R                   (       a  SU < S3nOU < n[        U[        5      (       a  UR                   (       a
  SU< S3nX#4$ U< nX#4$ )N())rZ   r2   r3   r[   ri   	self_repr
other_reprs       r8   _maybe_wrap_parentheses"Expression._maybe_wrap_parenthesesw   s^    ""D81I(IeZ((U-E-EUIQJ $$ "9J$$r>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr    + rw   ro   rt   s       r8   r   Expression.__add__   1     $ < <U C	}}YC
|/LMMr>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr   rz   r{   rt   s       r8   r   Expression.__radd__   1     $ < <U C	}}Z,c)0MNNr>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr    - r{   rt   s       r8   r   Expression.__sub__   r}   r>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr   r   r{   rt   s       r8   r   Expression.__rsub__   r   r>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr    * r{   rt   s       r8   r   Expression.__mul__   r}   r>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr   r   r{   rt   s       r8   r   Expression.__rmul__   r   r>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )N
__matmul__ @ r{   rt   s       r8   r   Expression.__matmul__   s1     $ < <U C	}}\5Ks:,2OPPr>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )N__rmatmul__r   r{   rt   s       r8   r   Expression.__rmatmul__   s1     $ < <U C	}}]E\YK3PQQr>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )N__pow__ ** r{   rt   s       r8   r   Expression.__pow__   s1     $ < <U C	}}YD/MNNr>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )N__rpow__r   r{   rt   s       r8   r   Expression.__rpow__   s1     $ < <U C	}}Z,d9+0NOOr>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr    / r{   rt   s       r8   r   Expression.__truediv__   s1     $ < <U C	}}]E[J<3PQQr>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr   r   r{   rt   s       r8   r   Expression.__rtruediv__   s1     $ < <U C	}}^Ul#i[4QRRr>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr    // r{   rt   s       r8   r   Expression.__floordiv__   s1     $ < <U C	}}^Ukj\4RSSr>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr   r   r{   rt   s       r8   r   Expression.__rfloordiv__   s1     $ < <U C	}}_e|4	{5STTr>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr   z >= r{   rt   s       r8   r   Expression.__ge__   1     $ < <U C	}}Xu4
|.LMMr>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr   z > r{   rt   s       r8   r   Expression.__gt__   1     $ < <U C	}}Xu3zl.KLLr>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr!   z <= r{   rt   s       r8   r!   Expression.__le__   r   r>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr"   z < r{   rt   s       r8   r"   Expression.__lt__   r   r>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr$   z == r{   rt   s       r8   r$   Expression.__eq__   r   r>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr(   z != r{   rt   s       r8   r(   Expression.__ne__   r   r>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr    % r{   rt   s       r8   r   Expression.__mod__   r}   r>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr   r   r{   rt   s       r8   r   Expression.__rmod__   r   r>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr)    & r{   rt   s       r8   r)   Expression.__and__   r}   r>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr*   r   r{   rt   s       r8   r*   Expression.__rand__   r   r>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr+    | r{   rt   s       r8   r+   Expression.__or__   r   r>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr,   r   r{   rt   s       r8   r,   Expression.__ror__   s1     $ < <U C	}}YS/LMMr>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr-    ^ r{   rt   s       r8   r-   Expression.__xor__   r}   r>   c                V    U R                  U5      u  p#U R                  SX SU 35      $ )Nr.   r   r{   rt   s       r8   r.   Expression.__rxor__   r   r>   c                <   ^  [        U 4S jST R                   3SS9$ )Nc                (   > TR                  U 5      ) $ r1   r4   r7   r[   s    r8   rj   'Expression.__invert__.<locals>.<lambda>       --b11r>   ~Trl   r3   rY   r[   s   `r8   
__invert__Expression.__invert__   s%    1 !
 	
r>   c                   ^  T R                   (       a  ST R                   S3nOST R                   3n[        U 4S jUSS9$ )Nz-(rs   r   c                (   > TR                  U 5      * $ r1   r   r   s    r8   rj   $Expression.__neg__.<locals>.<lambda>  r   r>   Trl   rZ   rY   r3   r[   r]   s   ` r8   __neg__Expression.__neg__   F    ""DNN+1-H4>>*+H1!
 	
r>   c                   ^  T R                   (       a  ST R                   S3nOST R                   3n[        U 4S jUSS9$ )Nz+(rs   r   c                (   > TR                  U 5      7$ r1   r   r   s    r8   rj   $Expression.__pos__.<locals>.<lambda>  r   r>   Trl   r   r   s   ` r8   __pos__Expression.__pos__  r   r>   c                >   ^  [        U 4S jST R                   S3SS9$ )Nc                8   > [        TR                  U 5      5      $ r1   )absr4   r   s    r8   rj   $Expression.__abs__.<locals>.<lambda>  s    s40045r>   zabs(rs   Trl   r   r   s   `r8   __abs__Expression.__abs__  s'    54>>"!$!
 	
r>   c                l   ^^^ SUUU4S jjn[        T0 TD6nTR                   SU S3n[        XW5      $ )Nc                D   > [        U /TQ76 n[        U /TQ76 nT" U0 UD6$ r1   )r=   rD   )r7   parsed_inputsparsed_kwargsinputsrA   ufuncs      r8   r\   (Expression.__array_ufunc__.<locals>.func  s1    '4V4M)"6v6M-9=99r>   rr   rs   r7   r   returnr   rT   __name__r3   )r[   r   methodr   rA   r\   args_strr]   s    ` ``   r8   __array_ufunc__Expression.__array_ufunc__  s@    	: 	:
 -f??nn%Qxj2$))r>   c                4    U R                  SX< SU< S3SS9$ )N__getitem__[]T)rn   )ro   )r[   items     r8   r   Expression.__getitem__%  s,    }}481THA!6$  
 	
r>   c                n   ^^ SUU4S jjn[        S0 TD6nTR                  S-   U-   S-   n[        X55      $ )Nc                ,   > [        U 40 TD6nT" S0 UD6$ )NrL   )rD   )r7   r   r\   rA   s     r8   wrapped+Expression._call_with_func.<locals>.wrapped+  s     )"77M(-((r>   rr   rs   r   rL   r   )r[   r\   rA   r   r   r]   s    ``   r8   _call_with_funcExpression._call_with_func*  s?    	) 	) -6v6==3&1C7',,r>   c                x   ^ ^^^ SU 4S jjm[        T0 TD6nT R                   SU S3n[        UUU4S jU5      $ )Nc                b   > [        U /UQ76 n[        U 40 UD6nTR                  U 5      " U0 UD6$ r1   )r=   rD   r4   )r7   r<   rA   parsed_argsr   r[   s        r8   r\   !Expression.__call__.<locals>.func5  s<    %b040K)"77M((,kK]KKr>   rr   rs   c                   > T" U /TQ70 TD6$ r1   rL   )r7   r<   r\   rA   s    r8   rj   %Expression.__call__.<locals>.<lambda><  s    T"%>t%>v%>r>   )r7   r   r<   r   rA   r   r   r   )rT   rY   r3   )r[   r<   rA   r   r]   r\   s   ```  @r8   __call__Expression.__call__4  s?    	L
 -d=f=nn%Qxj2>IIr>   c               n   ^ ^ T < nT R                   (       a  SU S3nUST 3-  n[        UU 4S jU5      $ )Nrr   rs   .c                :   > [        TR                  U 5      T5      $ r1   re   )r7   namer[   s    r8   rj   (Expression.__getattr__.<locals>.<lambda>C  s    WT-B-B2-F%Mr>   )rZ   r3   )r[   r	  r]   s   `` r8   __getattr__Expression.__getattr__>  s>    X""8*AHavJMxXXr>   c                :   ^ ^ SUU 4S jjnT < S3n[        X#5      $ )a  
Create an expression that evaluates :meth:`Series.case_when` in a DataFrame
context.

This is intended to enable patterns like::

    df.assign(result=pd.col("a").case_when([(pd.col("b") > 0, 1)]))

where conditions/replacements may reference other columns via ``pd.col``.
c                  > TR                  U 5      n/ nT Hc  u  p4[        U[        5      (       a  UR                  U 5      n[        U[        5      (       a  UR                  U 5      nUR                  X445        Me     UR	                  U5      $ r1   )r4   r2   r3   rP   	case_when)r7   ser	evaluated	conditionreplacementcaselistr[   s        r8   r\   "Expression.case_when.<locals>.funcQ  s    ''+CI*2&	i44 ) : :2 >Ik:66"-">">r"BK  )!9: +3 ==++r>   z.case_when(...)r   )r3   )r[   r  r\   r]   s   ``  r8   r  Expression.case_whenE  s&    		, 		, X_-$))r>   c                ,    U R                   =(       d    S$ )Nz	Expr(...))rY   r   s    r8   __repr__Expression.__repr__`  s    ~~,,r>   c                    [        S5      e)Nz+boolean value of an expression is ambiguous	TypeErrorr   s    r8   __bool__Expression.__bool__d  s    EFFr>   c                    [        S5      e)Nz#Expression objects are not iterabler  r   s    r8   __iter__Expression.__iter__g      =>>r>   c                    [        S5      eNz#Expression objects are not copiabler  r   s    r8   __copy__Expression.__copy__j  r"  r>   c                    [        S5      er$  r  )r[   memos     r8   __deepcopy__Expression.__deepcopy__m  r"  r>   )rX   rZ   rY   N)F)r\   zCallable[[DataFrame], Any]r]   strr^   boolr   Noner   )T)
rh   r+  ri   r   r]   r+  rn   r,  r   r3   )ri   r   r   ztuple[str, str])ri   r   r   r3   )ri   objectr   r3   )r   r3   )
r   zCallable[..., Any]r   r+  r   r   rA   r   r   r3   )r   r   r   r3   )r\   r   rA   r   r   r3   )r<   r   rA   r   r   r3   )r	  r+  r   r   )r  zSequence[tuple[Any, Any]]r   r3   )r   r+  )r   r	   )r(  zdict[int, Any] | Noner   r	   )5r   
__module____qualname____firstlineno____doc__r_   r4   ro   rw   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   r   r   r   r   r   r   r  r  r  r  r  r   r%  r)  __static_attributes__rL   r>   r8   r3   r3   P   s    "'	3(3 3 	3
 
3 MQ!-0EI	$	%NONONOQROPRSTUNMNMNNNO
NOMNNO
	
	

*'*14*?B*NQ*	*

-JY*6-G???r>   r3   pandasc                   ^  [        T [        5      (       d  S[        T 5       3n[        U5      eSU 4S jjn[	        UST < S35      $ )a{  
Generate deferred object representing a column of a DataFrame.

Any place which accepts ``lambda df: df[col_name]``, such as
:meth:`DataFrame.assign` or :meth:`DataFrame.loc`, can also accept
``pd.col(col_name)``.

.. versionadded:: 3.0.0

Parameters
----------
col_name : Hashable
    Column name.

Returns
-------
`pandas.api.typing.Expression`
    A deferred object representing a column of a DataFrame.

See Also
--------
DataFrame.query : Query columns of a dataframe using string expressions.

Examples
--------

You can use `col` in `assign`.

>>> df = pd.DataFrame({"name": ["beluga", "narwhal"], "speed": [100, 110]})
>>> df.assign(name_titlecase=pd.col("name").str.title())
      name  speed name_titlecase
0   beluga    100         Beluga
1  narwhal    110        Narwhal

You can also use it for filtering.

>>> df.loc[pd.col("speed") > 105]
      name  speed
1  narwhal    110
zExpected Hashable, got: c                   > TU R                   ;  aP  [        U R                   R                  5       5      nSn[        U5      U:  a  US U S-   nST SU S3n[	        U5      eU T   $ )NZ   z...]zColumn 'z;' not found in given DataFrame.

Hint: did you mean one of z	 instead?)columnsr+  tolistlen
ValueError)r7   columns_strmax_lenmsgcol_names       r8   r\   col.<locals>.func  s    2::%bjj//12KG;'))(73f< 8* %--8MD  S/!(|r>   zcol(rs   )r7   r   r   r   )r2   r   typer  r3   )r?  r>  r\   s   `  r8   colrB  q  sK    T h))(h(89n dd8,a011r>   rB  N)r7   r   r<   r   r   ztuple[Any, ...])r7   r   rA   r   r   zdict[str, Any])r<   r   rA   r   r   r+  )r?  r   r   r3   )
__future__r   collections.abcr   r   r   typingr   r   r	   pandas.util._decoratorsr
   r4  r   r   _OP_SYMBOLSr=   rD   rT   r3   rB  __all__rL   r>   r8   <module>rI     sl   " 
  /s s 	
 s  3 C D T s  d c d  c!" d#$ 18
  ]? ]? !]?@	 H;2 ;2| 
r>   