from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


SCREAMING_SNAKE_CASE :	Dict							     =		{
    """configuration_blip_2""": [
        """BLIP_2_PRETRAINED_CONFIG_ARCHIVE_MAP""",
        """Blip2Config""",
        """Blip2QFormerConfig""",
        """Blip2VisionConfig""",
    ],
    """processing_blip_2""": ["""Blip2Processor"""],
}

try:
  if not is_torch_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  SCREAMING_SNAKE_CASE :	Dict							     =		[
      """BLIP_2_PRETRAINED_MODEL_ARCHIVE_LIST""",
      """Blip2Model""",
      """Blip2QFormerModel""",
      """Blip2PreTrainedModel""",
      """Blip2ForConditionalGeneration""",
      """Blip2VisionModel""",
  ]

if TYPE_CHECKING:
  from .configuration_blip_a import (
      BLIP_2_PRETRAINED_CONFIG_ARCHIVE_MAP,
      BlipaConfig,
      BlipaQFormerConfig,
      BlipaVisionConfig,
  )
  from .processing_blip_a import BlipaProcessor

  try:
    if not is_torch_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .modeling_blip_a import (
        BLIP_2_PRETRAINED_MODEL_ARCHIVE_LIST,
        BlipaForConditionalGeneration,
        BlipaModel,
        BlipaPreTrainedModel,
        BlipaQFormerModel,
        BlipaVisionModel,
    )

else:
  import sys

  SCREAMING_SNAKE_CASE :	Optional[int]							     =		_LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)



# Function to print upper half of diamond (pyramid)



def   __A		(			_A					):



 """simple docstring"""


 for i in range(0							,				_A					):
  for _ in range(0							,				n - i - 1					):  # printing spaces
   print(" "							,				end=""					)
  for _ in range(0							,				i + 1					):  # printing stars
   print("* "							,				end=""					)
  print()



def   __A		(			_A					):



 """simple docstring"""


 for i in range(_A							,				0							,				-1					):
  for _ in range(_A							,				0							,				-1					):  # printing stars
   print("* "							,				end=""					)
  print()
  for _ in range(n - i + 1							,				0							,				-1					):  # printing spaces
   print(" "							,				end=""					)



def   __A		(			_A					):



 """simple docstring"""


 if n <= 0:
  print("       ...       ....        nothing printing :("					)
  return
 floyd(_A					)  # upper half
 reverse_floyd(_A					)  # lower half


if __name__ == "__main__":
  print(R"""| /\ | |- |  |-  |--| |\  /| |-""")
  print(R"""|/  \| |- |_ |_  |__| | \/ | |_""")
  SCREAMING_SNAKE_CASE :	Tuple							     =		1
  while K:
    SCREAMING_SNAKE_CASE :	Tuple							     =		int(input("""enter the number and , and see the magic : """))
    print()
    pretty_print(user_number)
    SCREAMING_SNAKE_CASE :	Optional[int]							     =		int(input("""press 0 to exit... and 1 to continue..."""))

  print("""Good Bye...""")


