


"""simple docstring"""





from typing import TYPE_CHECKING

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


snake_case__						:   Tuple			 = {
    '''configuration_groupvit''': [
        '''GROUPVIT_PRETRAINED_CONFIG_ARCHIVE_MAP''',
        '''GroupViTConfig''',
        '''GroupViTOnnxConfig''',
        '''GroupViTTextConfig''',
        '''GroupViTVisionConfig''',
    ],
}

try:
 if not is_torch_available():
  raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
 pass
else:
 snake_case__						:   Optional[Any]			 = [
     '''GROUPVIT_PRETRAINED_MODEL_ARCHIVE_LIST''',
     '''GroupViTModel''',
     '''GroupViTPreTrainedModel''',
     '''GroupViTTextModel''',
     '''GroupViTVisionModel''',
 ]

try:
 if not is_tf_available():
  raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
 pass
else:
 snake_case__						:   Optional[int]			 = [
     '''TF_GROUPVIT_PRETRAINED_MODEL_ARCHIVE_LIST''',
     '''TFGroupViTModel''',
     '''TFGroupViTPreTrainedModel''',
     '''TFGroupViTTextModel''',
     '''TFGroupViTVisionModel''',
 ]

if TYPE_CHECKING:
 from .configuration_groupvit import (
     GROUPVIT_PRETRAINED_CONFIG_ARCHIVE_MAP,
     GroupViTConfig,
     GroupViTOnnxConfig,
     GroupViTTextConfig,
     GroupViTVisionConfig,
 )

 try:
  if not is_torch_available():
   raise OptionalDependencyNotAvailable()
 except OptionalDependencyNotAvailable:
  pass
 else:
  from .modeling_groupvit import (
      GROUPVIT_PRETRAINED_MODEL_ARCHIVE_LIST,
      GroupViTModel,
      GroupViTPreTrainedModel,
      GroupViTTextModel,
      GroupViTVisionModel,
  )

 try:
  if not is_tf_available():
   raise OptionalDependencyNotAvailable()
 except OptionalDependencyNotAvailable:
  pass
 else:
  from .modeling_tf_groupvit import (
      TF_GROUPVIT_PRETRAINED_MODEL_ARCHIVE_LIST,
      TFGroupViTModel,
      TFGroupViTPreTrainedModel,
      TFGroupViTTextModel,
      TFGroupViTVisionModel,
  )

else:
 import sys

 snake_case__						:   Tuple			 = _LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)






"""simple docstring"""





def    _snake_case  (  _snake_case :	list	):

      def merge(_snake_case :	list       ,      _snake_case :	list	) -> list:

            def _merge():
                  while left and right:
                        yield (left if left[0] <= right[0] else right).pop(0	)
                  yield from left
                  yield from right

            return list(_merge()	)

      if len(_snake_case	) <= 1:
            return collection
      lowerCAmelCase    :		Union[str, Any]				=      len(_snake_case	) // 2
      return merge(merge_sort(collection[:mid]	)       ,      merge_sort(collection[mid:]	)	)


if __name__ == "__main__":
 import doctest

 doctest.testmod()
 snake_case__						:   Optional[Any]			 = input('''Enter numbers separated by a comma:\n''').strip()
 snake_case__						:   Union[str, Any]			 = [int(item) for item in user_input.split(''',''')]
 print(*merge_sort(unsorted), sep=''',''')


