
    +h8                         S SK r SSKJrJrJr  S\ R
                  R                  4S jrS\ R
                  R                  4S jrS\ R
                  R                  4S jr	g)    N   )"_ALL_TRANSFORMER_BLOCK_IDENTIFIERS_ATTENTION_CLASSES_FEEDFORWARD_CLASSESmodulec                   ^ / nU R                  5        Hh  u  mn[        U4S j[         5       5      n[        U[        R
                  R                  5      nU(       d  ML  U(       d  MU  UR                  TU45        Mj     U$ )Nc              3   F   >#    U  H  nTR                  U5      v   M     g 7fN)endswith).0
identifiernames     O/home/james-whalen/.local/lib/python3.13/site-packages/diffusers/hooks/utils.py	<genexpr>A_get_identifiable_transformer_blocks_in_module.<locals>.<genexpr>   s     &vSuZt}}Z'@'@Sus   !)named_modulesanyr   
isinstancetorchnn
ModuleListappend)r   #module_list_with_transformer_blocks	submodulename_endswith_identifieris_modulelistr   s        @r   ._get_identifiable_transformer_blocks_in_moduler      sm    *,'!//1i#&&vSu&v#v "9ehh.A.AB##/66i7HI	 2
 /.    c                     / nU R                  5        H.  u  p#[        U[        5      (       d  M  UR                  X#45        M0     U$ r
   )r   r   r   r   )r   attention_layersr   r   s       r   ,_get_identifiable_attention_layers_in_moduler!      sD    !//1i!344##T$56 2 r   c                     / nU R                  5        H.  u  p#[        U[        5      (       d  M  UR                  X#45        M0     U$ r
   )r   r   r   r   )r   feedforward_layersr   r   s       r   ._get_identifiable_feedforward_layers_in_moduler$   &   sD    !//1i!566%%t&78 2 r   )
r   _commonr   r   r   r   Moduler   r!   r$    r   r   <module>r(      sL     a a/588?? / 588?? r   