





"""simple docstring"""




from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available, is_vision_available


SCREAMING_SNAKE_CASE_						       =	{
    """configuration_bridgetower""": [
        """BRIDGETOWER_PRETRAINED_CONFIG_ARCHIVE_MAP""",
        """BridgeTowerConfig""",
        """BridgeTowerTextConfig""",
        """BridgeTowerVisionConfig""",
    ],
    """processing_bridgetower""": ["""BridgeTowerProcessor"""],
}

try:
      if not is_vision_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      SCREAMING_SNAKE_CASE_						       =	["""BridgeTowerImageProcessor"""]

try:
      if not is_torch_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      SCREAMING_SNAKE_CASE_						       =	[
          """BRIDGETOWER_PRETRAINED_MODEL_ARCHIVE_LIST""",
          """BridgeTowerForContrastiveLearning""",
          """BridgeTowerForImageAndTextRetrieval""",
          """BridgeTowerForMaskedLM""",
          """BridgeTowerModel""",
          """BridgeTowerPreTrainedModel""",
      ]


if TYPE_CHECKING:
      from .configuration_bridgetower import (
          BRIDGETOWER_PRETRAINED_CONFIG_ARCHIVE_MAP,
          BridgeTowerConfig,
          BridgeTowerTextConfig,
          BridgeTowerVisionConfig,
      )
      from .processing_bridgetower import BridgeTowerProcessor

      try:
            if not is_vision_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from .image_processing_bridgetower import BridgeTowerImageProcessor

      try:
            if not is_torch_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from .modeling_bridgetower import (
                BRIDGETOWER_PRETRAINED_MODEL_ARCHIVE_LIST,
                BridgeTowerForContrastiveLearning,
                BridgeTowerForImageAndTextRetrieval,
                BridgeTowerForMaskedLM,
                BridgeTowerModel,
                BridgeTowerPreTrainedModel,
            )


else:
      import sys

      SCREAMING_SNAKE_CASE_						       =	_LazyModule(__name__, globals()["""__file__"""], _import_structure)









def        __lowercase       (				_SCREAMING_SNAKE_CASE = 50     )			->       int:


      '''simple docstring'''


      SCREAMING_SNAKE_CASE		=						[1] * (length + 1)

      for row_length in range(3			,						length + 1     ):
            for block_length in range(3			,						row_length + 1     ):
                  for block_start in range(row_length - block_length     ):
                        ways_number[row_length] += ways_number[
                            row_length - block_start - block_length - 1
                        ]

                  ways_number[row_length] += 1

      return ways_number[length]


if __name__ == "__main__":
      print(F'''{solution() = }''')


