
    `2f                     `    d dl Z d dlZ e j                  e      Z G d d      Z G d d      Zy)    Nc                   2    e Zd ZdZ	 	 	 	 ddZd Zd Zd Zy)ResourceMetaz9
    An object containing metadata about a resource.
    Nc                 R    || _         |g }|| _        || _        || _        || _        y N)service_nameidentifiersclientdataresource_model)selfr   r   r	   r
   r   s         T/var/www/highfloat_scraper/venv/lib/python3.12/site-packages/boto3/resources/base.py__init__zResourceMeta.__init__   s9     )K& 	 -    c                 N    dj                  | j                  | j                        S )Nz"ResourceMeta('{}', identifiers={}))formatr   r   )r   s    r   __repr__zResourceMeta.__repr__2   s&    5<<t//
 	
r   c                     |j                   j                  | j                   j                  k7  ry| j                  |j                  k(  S )NF)	__class____name____dict__)r   others     r   __eq__zResourceMeta.__eq__7   s4    ??##t~~'>'>>}}..r   c                 p    | j                   j                         }|j                  d      }t        |fi |S )z8
        Create a copy of this metadata object.
        r   )r   copypopr   )r   paramsr   s      r   r   zResourceMeta.copy>   s4     ##%zz.1L3F33r   )NNNN)r   
__module____qualname____doc__r   r   r   r    r   r   r   r      s)     -0

/4r   r   c                   .    e Zd ZdZdZ	 d Zd Zd Zd Zy)ServiceResourcez
    A base class for resources.

    :type client: botocore.client
    :param client: A low-level Botocore client instance
    Nc                    | j                   j                         | _         |j                  d      !|j                  d      | j                   _        n8t	        j                  | j                   j
                        | j                   _        t        |      D ],  \  }}t        | d| j                   j                  |   z   |       . |j                         D ]A  \  }}|dk(  r|| j                   j                  vrt        d|       t        | d|z   |       C | j                   j                  D ]  }t        | |      t        d| d       y )Nr	   _zUnknown keyword argument: zRequired parameter z not set)metar   getr	   boto3r   	enumeratesetattrr   items
ValueErrorgetattr)r   argskwargsivaluename
identifiers          r   r   zServiceResource.__init___   s0    IINN$	 ::h+%zz(3DII$||DII,B,BCDII "$ 	AHAuD#		 5 5a 88%@	A
 "<<> 	-KD%x499000 #=dV!DEED#*e,	- ))// 	MJtZ(0 #6zl(!KLL	Mr   c                     g }| j                   j                  D ]+  }|j                  | dt        t	        | |                    - dj                  | j                  j                  dj                  |            S )N=z{}({})z, )	r%   r   appendreprr,   r   r   r   joinr   r   r2   s      r   r   zServiceResource.__repr__   su    ))// 	J,aWT:%> ?@A	 NN##IIk"
 	
r   c                     |j                   j                  | j                   j                  k7  ry| j                  j                  D ]  }t	        | |      t	        ||      k7  s y y)NFT)r   r   r%   r   r,   )r   r   r2   s      r   r   zServiceResource.__eq__   sZ    ??##t~~'>'>> ))// 	JtZ(GE:,FF	 r   c                     g }| j                   j                  D ]  }|j                  t        | |              t	        | j
                  j                  t        |      f      S r   )r%   r   r5   r,   hashr   r   tupler8   s      r   __hash__zServiceResource.__hash__   sT    ))// 	:JwtZ89	:T^^,,eK.@ABBr   )	r   r   r   r   r%   r   r   r   r=   r    r   r   r"   r"   G   s*     DM@	
Cr   r"   )loggingr'   	getLoggerr   loggerr   r"   r    r   r   <module>rA      s8     			8	$/4 /4dTC TCr   