


from ...utils import (
    OptionalDependencyNotAvailable,
    is_flax_available,
    is_torch_available,
    is_transformers_available,
)


try:
 if not (is_transformers_available() and is_torch_available()):
  raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
 from ...utils.dummy_torch_and_transformers_objects import *  # noqa F403
else:
 from .multicontrolnet import MultiControlNetModel
 from .pipeline_controlnet import StableDiffusionControlNetPipeline
 from .pipeline_controlnet_imgaimg import StableDiffusionControlNetImgaImgPipeline
 from .pipeline_controlnet_inpaint import StableDiffusionControlNetInpaintPipeline


if is_transformers_available() and is_flax_available():
 from .pipeline_flax_controlnet import FlaxStableDiffusionControlNetPipeline









def    __lowerCamelCase					(							__a   :str    )		->				list:






		"""simple docstring"""

		A__        =   [0] * len(__a    )

		for i in range(1    ,     len(__a    )    ):
				# use last results for better performance - dynamic programming
				A__        =   prefix_result[i - 1]
				while j > 0 and input_string[i] != input_string[j]:
						A__        =   prefix_result[j - 1]

				if input_string[i] == input_string[j]:
						j += 1
				A__        =   j

		return prefix_result







def    __lowerCamelCase					(							__a   :str    )		->				int:






		"""simple docstring"""

		return max(prefix_function(__a    )    )


if __name__ == "__main__":
					import doctest

					doctest.testmod()



