o
    2h,                     @   s*  d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZ d dlmZ d d	lmZ d d
lmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dl m!Z! d dl"m#Z# d dl$m%Z% d dl&m'Z' d dl(m)Z) d dl*m+Z+ d dl,m-Z- d dl.m/Z/ d dl0m1Z1 d dl2m3Z3 d dl2m4Z4 d dl5m6Z6 d dl7m8Z8 d dl9m:Z: d dl;m<Z< d d l=m>Z> d d!l?m@Z@ d d"l?mAZA d d#lBmCZC d d$lBmDZD d d%lEmFZF d d&lEmGZG d d'lHmIZI d d(lHmJZJ d d)lKmLZL d d*lKmMZM d d+lNmOZO d d,lNmPZP d d-lQmRZR d d.lQmSZS d d/lTmUZU d d0lTmVZV d d1lWmXZX d d2lYmZZZ d d3l[m\Z\ d d4l]m^Z^ d d5l_m`Z` d d6lambZb d d7lcmdZd d d8lemfZf d d9lgmhZh d d:limjZj d d;lkmlZl d d<lmmnZn d d=lompZp d d>lqmrZr d d?lsmtZt d d@lumvZv d dAlwmxZx d dBlymzZz d dCl{m|Z| d dDl}m~Z~ d dElmZ d dFlmZ d dGlmZ d dHlmZ d dIlmZ d dJlmZ d dKlmZ d dLlmZ d dMlmZ d dNlmZ d dOlmZ d dPlmZ d dQlmZ d dRlmZ d dSlmZ d dTlmZ d dUlmZ d dVlmZ d dWlmZ d dXlmZ d dYlmZ d dZlmZ d d[lmZ d d\lmZ d d]lmZ d d^lmZ d d_lmZ d d`lmZ d dalmZ d dblmZ d dclmZ d ddlmZ d delmZ d dflmZ d dglmZ d dhlmZ d dilmZ d djlmZ d dklmZ d dllmZ d dmlmZ d dnlmZ d dolmZ d dplmZ d dqlmZ d drlmZ d dslmZ d dtlmZ d dulmZ d dvlmZ d dwlmZ d dxlmZ d dylmZ d dzlmZ d d{lmZ d d|lmZ d d}lmZ d d~lmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlm Z  d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dl	m
Z
 d dl	mZ d dlmZ d dlmZ d dlmZ eddd ZeddddZdS )    )keras_export)
Activation)ELU)	LeakyReLU)PReLU)ReLU)Softmax)AdditiveAttention)	Attention)GroupedQueryAttention)MultiHeadAttention)Conv1D)Conv1DTranspose)Conv2D)Conv2DTranspose)Conv3D)Conv3DTranspose)DepthwiseConv1D)DepthwiseConv2D)SeparableConv1D)SeparableConv2D)Dense)EinsumDense)	Embedding)Identity)Input)
InputLayer)Lambda)Masking)Wrapper)	InputSpec)Layer)Add)add)Average)average)Concatenate)concatenate)Dot)dot)Maximum)maximum)Minimum)minimum)Multiply)multiply)Subtract)subtract)BatchNormalization)GroupNormalization)LayerNormalization)RMSNormalization)SpectralNormalization)UnitNormalization)AveragePooling1D)AveragePooling2D)AveragePooling3D)GlobalAveragePooling1D)GlobalAveragePooling2D)GlobalAveragePooling3D)GlobalMaxPooling1D)GlobalMaxPooling2D)GlobalMaxPooling3D)MaxPooling1D)MaxPooling2D)MaxPooling3D)CategoryEncoding)Discretization)HashedCrossing)Hashing)AugMix)AutoContrast)
CenterCrop)CutMix)Equalization)MaxNumBoundingBoxes)MixUp)RandAugment)RandomBrightness)RandomColorDegeneration)RandomColorJitter)RandomContrast)
RandomCrop)RandomElasticTransform)RandomErasing)
RandomFlip)RandomGaussianBlur)RandomGrayscale)	RandomHue)RandomInvert)RandomPerspective)RandomPosterization)RandomRotation)RandomSaturation)RandomSharpness)RandomShear)RandomTranslation)
RandomZoom)Resizing)Solarization)IndexLookup)IntegerLookup)MelSpectrogram)Normalization)Pipeline)	Rescaling)STFTSpectrogram)StringLookup)TextVectorization)ActivityRegularization)AlphaDropout)Dropout)GaussianDropout)GaussianNoise)SpatialDropout1D)SpatialDropout2D)SpatialDropout3D)
Cropping1D)
Cropping2D)
Cropping3D)Flatten)Permute)RepeatVector)Reshape)UpSampling1D)UpSampling2D)UpSampling3D)ZeroPadding1D)ZeroPadding2D)ZeroPadding3D)Bidirectional)
ConvLSTM1D)
ConvLSTM2D)
ConvLSTM3D)GRU)GRUCell)LSTM)LSTMCell)RNN)	SimpleRNN)SimpleRNNCell)StackedRNNCells)TimeDistributed)serialization_libzkeras.layers.serializec                 C   s
   t | S )zReturns the layer configuration as a Python dict.

    Args:
        layer: A `keras.layers.Layer` instance to serialize.

    Returns:
        Python dict which contains the configuration of the layer.
    )r   serialize_keras_object)layer r   T/var/www/html/chatgem/venv/lib/python3.10/site-packages/keras/src/layers/__init__.py	serialize   s   

r   zkeras.layers.deserializeNc                 C   s*   t j| |d}t|tstd|  |S )ak  Returns a Keras layer object via its configuration.

    Args:
        config: A python dict containing a serialized layer configuration.
        custom_objects: Optional dictionary mapping names (strings) to custom
            objects (classes and functions) to be considered during
            deserialization.

    Returns:
        A Keras layer instance.
    )custom_objectszf`keras.layers.deserialize` was passed a `config` object that is not a `keras.layers.Layer`. Received: )r   deserialize_keras_object
isinstancer!   
ValueError)configr   objr   r   r   deserialize   s   
r   )N(  keras.src.api_exportr   'keras.src.layers.activations.activationr    keras.src.layers.activations.elur   'keras.src.layers.activations.leaky_relur   "keras.src.layers.activations.prelur   !keras.src.layers.activations.relur   $keras.src.layers.activations.softmaxr   -keras.src.layers.attention.additive_attentionr	   $keras.src.layers.attention.attentionr
   2keras.src.layers.attention.grouped_query_attentionr   /keras.src.layers.attention.multi_head_attentionr   %keras.src.layers.convolutional.conv1dr   /keras.src.layers.convolutional.conv1d_transposer   %keras.src.layers.convolutional.conv2dr   /keras.src.layers.convolutional.conv2d_transposer   %keras.src.layers.convolutional.conv3dr   /keras.src.layers.convolutional.conv3d_transposer   /keras.src.layers.convolutional.depthwise_conv1dr   /keras.src.layers.convolutional.depthwise_conv2dr   /keras.src.layers.convolutional.separable_conv1dr   /keras.src.layers.convolutional.separable_conv2dr   keras.src.layers.core.denser   "keras.src.layers.core.einsum_denser   keras.src.layers.core.embeddingr   keras.src.layers.core.identityr   !keras.src.layers.core.input_layerr   r   "keras.src.layers.core.lambda_layerr   keras.src.layers.core.maskingr   keras.src.layers.core.wrapperr   keras.src.layers.input_specr    keras.src.layers.layerr!   keras.src.layers.merging.addr"   r#    keras.src.layers.merging.averager$   r%   $keras.src.layers.merging.concatenater&   r'   keras.src.layers.merging.dotr(   r)    keras.src.layers.merging.maximumr*   r+    keras.src.layers.merging.minimumr,   r-   !keras.src.layers.merging.multiplyr.   r/   !keras.src.layers.merging.subtractr0   r1   2keras.src.layers.normalization.batch_normalizationr2   2keras.src.layers.normalization.group_normalizationr3   2keras.src.layers.normalization.layer_normalizationr4   0keras.src.layers.normalization.rms_normalizationr5   5keras.src.layers.normalization.spectral_normalizationr6   1keras.src.layers.normalization.unit_normalizationr7   *keras.src.layers.pooling.average_pooling1dr8   *keras.src.layers.pooling.average_pooling2dr9   *keras.src.layers.pooling.average_pooling3dr:   1keras.src.layers.pooling.global_average_pooling1dr;   1keras.src.layers.pooling.global_average_pooling2dr<   1keras.src.layers.pooling.global_average_pooling3dr=   -keras.src.layers.pooling.global_max_pooling1dr>   -keras.src.layers.pooling.global_max_pooling2dr?   -keras.src.layers.pooling.global_max_pooling3dr@   &keras.src.layers.pooling.max_pooling1drA   &keras.src.layers.pooling.max_pooling2drB   &keras.src.layers.pooling.max_pooling3drC   0keras.src.layers.preprocessing.category_encodingrD   -keras.src.layers.preprocessing.discretizationrE   .keras.src.layers.preprocessing.hashed_crossingrF   &keras.src.layers.preprocessing.hashingrG   :keras.src.layers.preprocessing.image_preprocessing.aug_mixrH   @keras.src.layers.preprocessing.image_preprocessing.auto_contrastrI   >keras.src.layers.preprocessing.image_preprocessing.center_croprJ   :keras.src.layers.preprocessing.image_preprocessing.cut_mixrK   ?keras.src.layers.preprocessing.image_preprocessing.equalizationrL   Gkeras.src.layers.preprocessing.image_preprocessing.max_num_bounding_boxrM   9keras.src.layers.preprocessing.image_preprocessing.mix_uprN   ?keras.src.layers.preprocessing.image_preprocessing.rand_augmentrO   Dkeras.src.layers.preprocessing.image_preprocessing.random_brightnessrP   Lkeras.src.layers.preprocessing.image_preprocessing.random_color_degenerationrQ   Fkeras.src.layers.preprocessing.image_preprocessing.random_color_jitterrR   Bkeras.src.layers.preprocessing.image_preprocessing.random_contrastrS   >keras.src.layers.preprocessing.image_preprocessing.random_croprT   Kkeras.src.layers.preprocessing.image_preprocessing.random_elastic_transformrU   Akeras.src.layers.preprocessing.image_preprocessing.random_erasingrV   >keras.src.layers.preprocessing.image_preprocessing.random_fliprW   Gkeras.src.layers.preprocessing.image_preprocessing.random_gaussian_blurrX   Ckeras.src.layers.preprocessing.image_preprocessing.random_grayscalerY   =keras.src.layers.preprocessing.image_preprocessing.random_huerZ   @keras.src.layers.preprocessing.image_preprocessing.random_invertr[   Ekeras.src.layers.preprocessing.image_preprocessing.random_perspectiver\   Gkeras.src.layers.preprocessing.image_preprocessing.random_posterizationr]   Bkeras.src.layers.preprocessing.image_preprocessing.random_rotationr^   Dkeras.src.layers.preprocessing.image_preprocessing.random_saturationr_   Ckeras.src.layers.preprocessing.image_preprocessing.random_sharpnessr`   ?keras.src.layers.preprocessing.image_preprocessing.random_shearra   Ekeras.src.layers.preprocessing.image_preprocessing.random_translationrb   >keras.src.layers.preprocessing.image_preprocessing.random_zoomrc   ;keras.src.layers.preprocessing.image_preprocessing.resizingrd   ?keras.src.layers.preprocessing.image_preprocessing.solarizationre   +keras.src.layers.preprocessing.index_lookuprf   -keras.src.layers.preprocessing.integer_lookuprg   .keras.src.layers.preprocessing.mel_spectrogramrh   ,keras.src.layers.preprocessing.normalizationri   'keras.src.layers.preprocessing.pipelinerj   (keras.src.layers.preprocessing.rescalingrk   /keras.src.layers.preprocessing.stft_spectrogramrl   ,keras.src.layers.preprocessing.string_lookuprm   1keras.src.layers.preprocessing.text_vectorizationrn   7keras.src.layers.regularization.activity_regularizationro   -keras.src.layers.regularization.alpha_dropoutrp   'keras.src.layers.regularization.dropoutrq   0keras.src.layers.regularization.gaussian_dropoutrr   .keras.src.layers.regularization.gaussian_noisers   /keras.src.layers.regularization.spatial_dropoutrt   ru   rv   %keras.src.layers.reshaping.cropping1drw   %keras.src.layers.reshaping.cropping2drx   %keras.src.layers.reshaping.cropping3dry   "keras.src.layers.reshaping.flattenrz   "keras.src.layers.reshaping.permuter{   (keras.src.layers.reshaping.repeat_vectorr|   "keras.src.layers.reshaping.reshaper}   (keras.src.layers.reshaping.up_sampling1dr~   (keras.src.layers.reshaping.up_sampling2dr   (keras.src.layers.reshaping.up_sampling3dr   )keras.src.layers.reshaping.zero_padding1dr   )keras.src.layers.reshaping.zero_padding2dr   )keras.src.layers.reshaping.zero_padding3dr   "keras.src.layers.rnn.bidirectionalr    keras.src.layers.rnn.conv_lstm1dr    keras.src.layers.rnn.conv_lstm2dr    keras.src.layers.rnn.conv_lstm3dr   keras.src.layers.rnn.grur   r   keras.src.layers.rnn.lstmr   r   keras.src.layers.rnn.rnnr   keras.src.layers.rnn.simple_rnnr   r   &keras.src.layers.rnn.stacked_rnn_cellsr   %keras.src.layers.rnn.time_distributedr   keras.src.savingr   r   r   r   r   r   r   <module>   s(   