
    	h                     ~    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
  S SKJrJrJr   " S S5      r " S S	\5      rg
)    )chain)Serialisable)MinMaxTypedStringStrict)	Worksheet)get_column_letterrange_to_tuplequote_sheetnamec                       \ rS rSrS rSrg)DummyWorksheet   c                     Xl         g Ntitle)selfr   s     J/var/www/html/env/lib/python3.13/site-packages/openpyxl/chart/reference.py__init__DummyWorksheet.__init__   s    
    r   N)__name__
__module____qualname____firstlineno__r   __static_attributes__ r   r   r   r      s    r   r   c                       \ rS rSrSr\" SS\S9r\" SS\S9r\" SS\S9r	\" SS\S9r
\" SS9r      SS
 jrS rS r\rS rS r\S 5       r\S 5       rS r\S 5       rSrg	)	Reference   z!
Normalise cell range references
   i@B )minmaxexpected_typei @  T)
allow_noneNc                     Ub  [        U5      u  pxUu  p#pE[        U5      nXl        X l        X0l        Uc  UnX@l        Uc  UnXPl        g r   )r   r   	worksheetmin_colmin_rowmax_colmax_row)	r   r(   r)   r*   r+   r,   range_string	sheetname
boundariess	            r   r   Reference.__init__'   sX     #$2<$@!I1;.Gg&y1I"?G?Gr   c                     [        U 5      $ r   strr   s    r   __repr__Reference.__repr__?   s    4yr   c                 $   SnU R                   U R                  :X  a  U R                  U R                  :X  a  SnUR	                  U R
                  [        U R                   5      U R                  [        U R                  5      U R                  5      $ )Nz{0}!${1}${2}:${3}${4}z{0}!${1}${2})r)   r+   r*   r,   formatr.   r
   )r   fmts     r   __str__Reference.__str__C   sg    &LLDLL(,!Czz$..+DLL94<<+DLL94<< 	r   c                     U R                   U R                  :X  a  SU R                  -   U R                  -
  $ SU R                  -   U R                   -
  $ )Nr"   )r*   r,   r+   r)   r4   s    r   __len__Reference.__len__R   sB    <<4<<'t||#dll224<<$,,..r   c                 0    [        U 5      [        U5      :H  $ r   r2   )r   others     r   __eq__Reference.__eq__X   s    4yCJ&&r   c              #      #    [        U R                  U R                  S-   5       H1  n[        U R                  U R
                  XR                  U5      v   M3     g7f)z
Return all rows in the range
r"   N)ranger*   r,   r    r(   r)   r+   )r   rows     r   rowsReference.rows\   sA     
 t||A~6CDNNDLL#||SQQ 7s   AAc              #      #    [        U R                  U R                  S-   5       H0  n[        U R                  XR
                  XR                  5      v   M2     g7f)z!
Return all columns in the range
r"   N)rD   r)   r+   r    r(   r*   r,   )r   cols     r   colsReference.colse   s?     
 t||A~6CDNNCsLLQQ 7s   AAc                     SR                  [        U R                  5      U R                  5      nU R                  U R                  :X  a  U =R                  S-  sl        U$ U =R                  S-  sl        U$ )z"
Return and remove the first cell
z{0}{1}r"   )r8   r
   r)   r*   r,   )r   cells     r   popReference.popn   s\     0>M<<4<<'LLAL  LLALr   c                 @    [        U R                  R                  5      $ r   )r   r(   r   r4   s    r   r.   Reference.sheetnamez   s    t~~3344r   )r+   r,   r)   r*   r(   )NNNNNN)r   r   r   r   __doc__r   intr*   r,   r)   r+   r   r-   r   r5   r:   r=   rA   propertyrF   rJ   rN   r.   r   r   r   r   r    r       s     s;Gs;GS9GS9GT*L  "0 G/' R R R R	 5 5r   r    N)	itertoolsr   !openpyxl.descriptors.serialisabler   openpyxl.descriptorsr   r   r   r   openpyxl.worksheet.worksheetr	   openpyxl.utilsr
   r   r   r   r    r   r   r   <module>rZ      s>     :  3  a5 a5r   