  from .initializers import ICNR, ConvolutionAware
  from .layers import PixelShuffler, ReflectionPadding2D, Swish, KResizeImages
  from .normalization import InstanceNormalization
  
  logger = logging.getLogger(__name__)  # pylint: disable=invalid-name
  
  
  _CONFIG = {}
  _NAMES = {}
 
</s> remove _CONFIG = dict()
_NAMES = dict()
 </s> add _CONFIG = {}
_NAMES = {} </s> remove from keras.layers import (Activation, Add, BatchNormalization, Concatenate, Conv2D as KConv2D,
                          Conv2DTranspose, DepthwiseConv2D as KDepthwiseConv2d, LeakyReLU, PReLU,
                          SeparableConv2D, UpSampling2D)
from keras.initializers import he_uniform, VarianceScaling
 </s> add from lib.utils import get_backend
 </s> remove from keras import backend as K
from keras import initializers
 </s> add  </s> remove from lib.utils import (FaceswapError, get_backend, get_tf_version, KerasFinder, safe_shutdown,
 </s> add from lib.utils import (FaceswapError, get_backend, get_tf_version, safe_shutdown, </s> remove from keras.initializers import RandomNormal
from keras.layers import Input, LeakyReLU

 </s> add 
if get_backend() == "amd":
    from keras.layers import (
        Activation, Add, BatchNormalization, Concatenate, Conv2D as KConv2D, Conv2DTranspose,
        DepthwiseConv2D as KDepthwiseConv2d, LeakyReLU, PReLU, SeparableConv2D, UpSampling2D)
    from keras.initializers import he_uniform, VarianceScaling  # pylint:disable=no-name-in-module
else:
    # Ignore linting errors from Tensorflow's thoroughly broken import system
    from tensorflow.keras.layers import (  # noqa pylint:disable=no-name-in-module,import-error
        Activation, Add, BatchNormalization, Concatenate, Conv2D as KConv2D, Conv2DTranspose,
        DepthwiseConv2D as KDepthwiseConv2d, LeakyReLU, PReLU, SeparableConv2D, UpSampling2D)
    from tensorflow.keras.initializers import he_uniform, VarianceScaling  # noqa pylint:disable=no-name-in-module,import-error


  from .initializers import ICNR, ConvolutionAware
  from .layers import PixelShuffler, ReflectionPadding2D, Swish, KResizeImages
  from .normalization import InstanceNormalization
  
if get_backend() == "amd":
    from keras.layers import (
        Activation, Add, BatchNormalization, Concatenate, Conv2D as KConv2D, Conv2DTranspose,
        DepthwiseConv2D as KDepthwiseConv2d, LeakyReLU, PReLU, SeparableConv2D, UpSampling2D)
    from keras.initializers import he_uniform, VarianceScaling  # pylint:disable=no-name-in-module
else:
    # Ignore linting errors from Tensorflow's thoroughly broken import system
    from tensorflow.keras.layers import (  # noqa pylint:disable=no-name-in-module,import-error
        Activation, Add, BatchNormalization, Concatenate, Conv2D as KConv2D, Conv2DTranspose,
        DepthwiseConv2D as KDepthwiseConv2d, LeakyReLU, PReLU, SeparableConv2D, UpSampling2D)
    from tensorflow.keras.initializers import he_uniform, VarianceScaling  # noqa pylint:disable=no-name-in-module,import-error


  logger = logging.getLogger(__name__)  # pylint: disable=invalid-name
  
  
  _CONFIG = {}
  _NAMES = {}
keep keep keep add keep keep keep keep keep
 Update all Keras Imports to be conditional (#1214)

* Remove custom keras importer

* first round keras imports fix

* launcher.py: Remove KerasFinder references

* 2nd round keras imports update (lib and extract)

* 3rd round keras imports update (train)

* remove KerasFinder from tests

* 4th round keras imports update (tests) 
lib/model/nn_blocks.py