
    Mwg                     ^    d dl  d dlmZ  G d de      Z G d de      Z G d d	e      Zy
)   )*)Sequencec                       e Zd Zd Zy)
MetaStrictc                     |j                         D ]  \  }}t        |t              s||_         t        j                  | |||      S )N)items
isinstance
Descriptornametype__new__)clsclsnamebasesmethodskvs         T/var/www/horilla/myenv/lib/python3.12/site-packages/openpyxl/descriptors/__init__.pyr   zMetaStrict.__new__	   sC    MMO 	DAq!Z(	 ||C%99    N__name__
__module____qualname__r    r   r   r   r      s    :r   r   c                       e Zd Zy)StrictN)r   r   r   r   r   r   r   r      s    r   r   )	metaclassc                       e Zd Zd Zy)MetaSerialisablec                    g }g }g }g }|j                         D ]9  \  }}	t        |	t              st        |	dd       }
|
r|j	                  |d|
d|f       t        |	dd      r#|j	                  |       |j	                  |       pt        |	t
              r|j	                  |       t        |	t              rut        |	j                  d      r|j	                  |       t        |	j                  t              r t        d |	j                  D              s|j	                  |       t        |	t              r)|j	                  |       < |j                  d      t        |      |d<   t        |      |d	<   |j                  d
      t        t        |            |d
<   |j                  d      t        t        |            |d<   t        j                  | |||      S )N	namespace{}nestedFto_treec              3   4   K   | ]  }t        |d         yw)r%   N)hasattr).0els     r   	<genexpr>z+MetaSerialisable.__new__.<locals>.<genexpr>*   s     Q2I 6Qs   	__attrs____namespaced__
__nested____elements__)r   r	   r
   getattrappendr   Typedr'   expected_typetupleanyAliasgetsortedr   r   )r   r   r   r   attrsr$   elements
namespacedr   r   nss              r   r   zMetaSerialisable.__new__   s   
MMO 	(DAq!Z(A{D1%%qb!*<&=>1h.MM!$OOA&8,OOA&5)q	: *#AOOU;QQR$Q%a/Q+	(. ;;{#+#(<GK $)*$5 !;;|$,$)&.$9GL!;;~&.&+F8,<&=GN#!!#ww??r   Nr   r   r   r   r   r      s    #@r   r   N)basesequencer   r   r   r   r   r   r   r   <module>r>      s3     : :	z 	
%@t %@r   