'''simple docstring'''





import os
import unittest

from huggingface_hub.utils import are_progress_bars_disabled

import transformers.models.bart.tokenization_bart
from transformers import logging
from transformers.testing_utils import CaptureLogger, mockenv, mockenv_context
from transformers.utils.logging import disable_progress_bar, enable_progress_bar




class        __A      ( unittest.TestCase	):



    def 					_lowercase						(self    :    Tuple ):
         UpperCAmelCase_           =   logging.get_logger()

         # the current default level is logging.WARNING
         UpperCAmelCase_           =   logging.get_verbosity()

         logging.set_verbosity_error()
         self.assertEqual(logger.getEffectiveLevel()   ,			logging.get_verbosity() )

         logging.set_verbosity_warning()
         self.assertEqual(logger.getEffectiveLevel()   ,			logging.get_verbosity() )

         logging.set_verbosity_info()
         self.assertEqual(logger.getEffectiveLevel()   ,			logging.get_verbosity() )

         logging.set_verbosity_debug()
         self.assertEqual(logger.getEffectiveLevel()   ,			logging.get_verbosity() )

         # restore to the original level
         logging.set_verbosity(__a )



    def 					_lowercase						(self    :    Tuple ):
         UpperCAmelCase_           =   logging.get_verbosity()

         UpperCAmelCase_           =   logging.get_logger("transformers.models.bart.tokenization_bart" )
         UpperCAmelCase_           =   "Testing 1, 2, 3"

         # should be able to log warnings (if default settings weren't overridden by `pytest --log-level-all`)
         if level_origin <= logging.WARNING:
              with CaptureLogger(__a ) as cl:
                   logger.warning(__a )
              self.assertEqual(cl.out   ,			msg + "\n" )

         # this is setting the level for all of `transformers.*` loggers
         logging.set_verbosity_error()

         # should not be able to log warnings
         with CaptureLogger(__a ) as cl:
              logger.warning(__a )
         self.assertEqual(cl.out   ,			"" )

         # should be able to log warnings again
         logging.set_verbosity_warning()
         with CaptureLogger(__a ) as cl:
              logger.warning(__a )
         self.assertEqual(cl.out   ,			msg + "\n" )

         # restore to the original level
         logging.set_verbosity(__a )



    @mockenv(TRANSFORMERS_VERBOSITY="error" )
    def 					_lowercase						(self    :    Optional[Any] ):
         # reset for the env var to take effect, next time some logger call is made
         transformers.utils.logging._reset_library_root_logger()
         # this action activates the env var
         UpperCAmelCase_           =   logging.get_logger("transformers.models.bart.tokenization_bart" )

         UpperCAmelCase_           =   os.getenv("TRANSFORMERS_VERBOSITY"   ,			__a )
         UpperCAmelCase_           =   logging.log_levels[env_level_str]

         UpperCAmelCase_           =   logging.get_verbosity()
         self.assertEqual(
             __a   ,			__a   ,			f"""TRANSFORMERS_VERBOSITY={env_level_str}/{env_level}, but internal verbosity is {current_level}"""   ,			)

         # restore to the original level
         UpperCAmelCase_           =   ""
         transformers.utils.logging._reset_library_root_logger()



    @mockenv(TRANSFORMERS_VERBOSITY="super-error" )
    def 					_lowercase						(self    :    Optional[int] ):
         # reset for the env var to take effect, next time some logger call is made
         transformers.utils.logging._reset_library_root_logger()
         UpperCAmelCase_           =   logging.logging.getLogger()
         with CaptureLogger(__a ) as cl:
              # this action activates the env var
              logging.get_logger("transformers.models.bart.tokenization_bart" )
         self.assertIn("Unknown option TRANSFORMERS_VERBOSITY=super-error"   ,			cl.out )

         # no need to restore as nothing was changed






    def 					_lowercase						(self    :    Dict ):
         # testing `logger.warning_advice()`
         transformers.utils.logging._reset_library_root_logger()

         UpperCAmelCase_           =   logging.get_logger("transformers.models.bart.tokenization_bart" )
         UpperCAmelCase_           =   "Testing 1, 2, 3"

         with mockenv_context(TRANSFORMERS_NO_ADVISORY_WARNINGS="1" ):
              # nothing should be logged as env var disables this method
              with CaptureLogger(__a ) as cl:
                   logger.warning_advice(__a )
              self.assertEqual(cl.out   ,			"" )

         with mockenv_context(TRANSFORMERS_NO_ADVISORY_WARNINGS="" ):
              # should log normally as TRANSFORMERS_NO_ADVISORY_WARNINGS is unset
              with CaptureLogger(__a ) as cl:
                   logger.warning_advice(__a )
              self.assertEqual(cl.out   ,			msg + "\n" )





def 	lowerCAmelCase_				(					)    ->      Optional[Any]:


     '''simple docstring'''




     disable_progress_bar()
     assert are_progress_bars_disabled()

     enable_progress_bar()
     assert not are_progress_bars_disabled()









'''simple docstring'''


def 				__lowerCamelCase				(   A__    )       ->	list:






   """simple docstring"""
   UpperCamelCase					=  len(A__    )
   for i in range(1    ,						A__    ):
      UpperCamelCase					=  collection[i]
      UpperCamelCase					=  0
      UpperCamelCase					=  i - 1

      while low <= high:
         UpperCamelCase					=  (low + high) // 2
         if val < collection[mid]:
            UpperCamelCase					=  mid - 1
         else:
            UpperCamelCase					=  mid + 1
      for j in range(A__    ,						A__    ,						-1    ):
         UpperCamelCase					=  collection[j - 1]
      UpperCamelCase					=  val
   return collection


if __name__ == "__main__":
   _lowerCamelCase	:       int      	=	input("Enter numbers separated by a comma:\n").strip()
   _lowerCamelCase	:       Union[str, Any]      	=	[int(item) for item in user_input.split(",")]
   print(binary_insertion_sort(unsorted))

