
    &Vf"                        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#l@mBZB d d$lCmDZD d d%lCmEZE d d&lFmGZG d d'lFmHZH d d(lImJZJ d d)lImKZK d d*lLmMZM d d+lLmNZN d d,lOmPZP d d-lOmQZQ d d.lRmSZS d d/lRmTZT d d0lUmVZV 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  edx          dy             Z edz          d}d|            Zd{S )~    )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)Layer)Add)add)Average)average)Concatenate)concatenate)Dot)dot)Maximum)maximum)Minimum)minimum)Multiply)multiply)Subtract)subtract)BatchNormalization)GroupNormalization)LayerNormalization)SpectralNormalization)UnitNormalization)AveragePooling1D)AveragePooling2D)AveragePooling3D)GlobalAveragePooling1D)GlobalAveragePooling2D)GlobalAveragePooling3D)GlobalMaxPooling1D)GlobalMaxPooling2D)GlobalMaxPooling3D)MaxPooling1D)MaxPooling2D)MaxPooling3D)MelSpectrogram)CategoryEncoding)
CenterCrop)Discretization)HashedCrossing)Hashing)IndexLookup)IntegerLookup)Normalization)RandomBrightness)RandomContrast)
RandomCrop)
RandomFlip)RandomRotation)RandomTranslation)
RandomZoom)	Rescaling)Resizing)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                 *    t          j        |           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.
    )ry   serialize_keras_object)layers    V/var/www/html/software/conda/lib/python3.11/site-packages/keras/src/layers/__init__.py	serializer~      s     3E:::    zkeras.layers.deserializeNc                     t          j        | |          }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: )ry   deserialize_keras_object
isinstancer!   
ValueError)configr   objs      r}   deserializer      s`     
4%  C c5!! 
>5;> >
 
 	
 Jr   )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.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   5keras.src.layers.normalization.spectral_normalizationr5   1keras.src.layers.normalization.unit_normalizationr6   *keras.src.layers.pooling.average_pooling1dr7   *keras.src.layers.pooling.average_pooling2dr8   *keras.src.layers.pooling.average_pooling3dr9   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_pooling1dr@   &keras.src.layers.pooling.max_pooling2drA   &keras.src.layers.pooling.max_pooling3drB   2keras.src.layers.preprocessing.audio_preprocessingrC   0keras.src.layers.preprocessing.category_encodingrD   *keras.src.layers.preprocessing.center_croprE   -keras.src.layers.preprocessing.discretizationrF   .keras.src.layers.preprocessing.hashed_crossingrG   &keras.src.layers.preprocessing.hashingrH   +keras.src.layers.preprocessing.index_lookuprI   -keras.src.layers.preprocessing.integer_lookuprJ   ,keras.src.layers.preprocessing.normalizationrK   0keras.src.layers.preprocessing.random_brightnessrL   .keras.src.layers.preprocessing.random_contrastrM   *keras.src.layers.preprocessing.random_croprN   *keras.src.layers.preprocessing.random_fliprO   .keras.src.layers.preprocessing.random_rotationrP   1keras.src.layers.preprocessing.random_translationrQ   *keras.src.layers.preprocessing.random_zoomrR   (keras.src.layers.preprocessing.rescalingrS   'keras.src.layers.preprocessing.resizingrT   ,keras.src.layers.preprocessing.string_lookuprU   1keras.src.layers.preprocessing.text_vectorizationrV   7keras.src.layers.regularization.activity_regularizationrW   -keras.src.layers.regularization.alpha_dropoutrX   'keras.src.layers.regularization.dropoutrY   0keras.src.layers.regularization.gaussian_dropoutrZ   .keras.src.layers.regularization.gaussian_noiser[   /keras.src.layers.regularization.spatial_dropoutr\   r]   r^   %keras.src.layers.reshaping.cropping1dr_   %keras.src.layers.reshaping.cropping2dr`   %keras.src.layers.reshaping.cropping3dra   "keras.src.layers.reshaping.flattenrb   "keras.src.layers.reshaping.permuterc   (keras.src.layers.reshaping.repeat_vectorrd   "keras.src.layers.reshaping.reshapere   (keras.src.layers.reshaping.up_sampling1drf   (keras.src.layers.reshaping.up_sampling2drg   (keras.src.layers.reshaping.up_sampling3drh   )keras.src.layers.reshaping.zero_padding1dri   )keras.src.layers.reshaping.zero_padding2drj   )keras.src.layers.reshaping.zero_padding3drk   "keras.src.layers.rnn.bidirectionalrl    keras.src.layers.rnn.conv_lstm1drm    keras.src.layers.rnn.conv_lstm2drn    keras.src.layers.rnn.conv_lstm3dro   keras.src.layers.rnn.grurp   rq   keras.src.layers.rnn.lstmrr   rs   keras.src.layers.rnn.rnnrt   keras.src.layers.rnn.simple_rnnru   rv   &keras.src.layers.rnn.stacked_rnn_cellsrw   %keras.src.layers.rnn.time_distributedrx   keras.src.savingry   r~   r    r   r}   <module>r      s8	   - - - - - - > > > > > > 0 0 0 0 0 0 = = = = = = 4 4 4 4 4 4 2 2 2 2 2 2 8 8 8 8 8 8 K K K K K K : : : : : :      O N N N N N 8 8 8 8 8 8 K K K K K K 8 8 8 8 8 8 K K K K K K 8 8 8 8 8 8 K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K - - - - - - : : : : : : 5 5 5 5 5 5 3 3 3 3 3 3 3 3 3 3 3 3 8 8 8 8 8 8 5 5 5 5 5 5 1 1 1 1 1 1 1 1 1 1 1 1 ( ( ( ( ( ( , , , , , , , , , , , , 4 4 4 4 4 4 4 4 4 4 4 4 < < < < < < < < < < < < , , , , , , , , , , , , 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6                     P O O O O O G G G G G G G G G G G G G G G G G G                M L L L L L L L L L L L L L L L L L ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? M M M M M M M M M M M M A A A A A A H H H H H H I I I I I I : : : : : : C C C C C C G G G G G G F F F F F F M M M M M M I I I I I I A A A A A A A A A A A A I I I I I I O O O O O O A A A A A A > > > > > > < < < < < < E E E E E E O O O O O O      G F F F F F ; ; ; ; ; ; L L L L L L H H H H H H L L L L L L L L L L L L L L L L L L < < < < < < < < < < < < < < < < < < 6 6 6 6 6 6 6 6 6 6 6 6 A A A A A A 6 6 6 6 6 6 A A A A A A A A A A A A A A A A A A C C C C C C C C C C C C C C C C C C < < < < < < 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 ( ( ( ( ( ( , , , , , , * * * * * * . . . . . . ( ( ( ( ( ( 5 5 5 5 5 5 9 9 9 9 9 9 B B B B B B A A A A A A . . . . . . &''	; 	; ('	; ())   *)  r   