code: 
  
  def 		SCREAMING_SNAKE_CASE__				(							_UpperCAmelCase				)					-> tuple[int, int]:
  
  
  
      '''simple docstring'''
  
  
  
  
  
  
      if len(_UpperCAmelCase				) == 1:
          return a[0], a[0]
      else:
          # split A into half.
          lowerCAmelCase    			=      a[: len(_UpperCAmelCase				) // 2]
          lowerCAmelCase    			=      a[len(_UpperCAmelCase				) // 2 :]
  
          # 2 sub problems, 1/2 of original size.
          lowerCAmelCase    			=      max_difference(_UpperCAmelCase				)
          lowerCAmelCase    			=      max_difference(_UpperCAmelCase				)
  
          # get min of first and max of second
          # linear time
          lowerCAmelCase    			=      min(_UpperCAmelCase				)
          lowerCAmelCase    			=      max(_UpperCAmelCase				)
  
          # 3 cases, either (small1, big1),
          # (min_first, max_second), (small2, big2)
          # constant comparisons
          if biga - smalla > max_second - min_first and biga - smalla > biga - smalla:
              return smalla, biga
          elif biga - smalla > max_second - min_first:
              return smalla, biga
          else:
              return min_first, max_second
  
  
  if __name__ == "__main__":
   import doctest
  
   doctest.testmod()
  
  
  
  
  
  
style_context: 
  
  from typing import TYPE_CHECKING
  
  from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_tokenizers_available, is_torch_available
  
  
  __A   :     Optional[int]      =			{
      '''configuration_splinter''': ['''SPLINTER_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''SplinterConfig'''],
      '''tokenization_splinter''': ['''SplinterTokenizer'''],
  }
  
  try:
   if not is_tokenizers_available():
    raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
   pass
  else:
   __A   :     Optional[int]      =			['''SplinterTokenizerFast''']
  
  try:
   if not is_torch_available():
    raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
   pass
  else:
   __A   :     Union[str, Any]      =			[
       '''SPLINTER_PRETRAINED_MODEL_ARCHIVE_LIST''',
       '''SplinterForQuestionAnswering''',
       '''SplinterForPreTraining''',
       '''SplinterLayer''',
       '''SplinterModel''',
       '''SplinterPreTrainedModel''',
   ]
  
  
  if TYPE_CHECKING:
   from .configuration_splinter import SPLINTER_PRETRAINED_CONFIG_ARCHIVE_MAP, SplinterConfig
   from .tokenization_splinter import SplinterTokenizer
  
   try:
    if not is_tokenizers_available():
     raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
    pass
   else:
    from .tokenization_splinter_fast import SplinterTokenizerFast
  
   try:
    if not is_torch_available():
     raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
    pass
   else:
    from .modeling_splinter import (
        SPLINTER_PRETRAINED_MODEL_ARCHIVE_LIST,
        SplinterForPreTraining,
        SplinterForQuestionAnswering,
        SplinterLayer,
        SplinterModel,
        SplinterPreTrainedModel,
    )
  
  
  else:
   import sys
  
   __A   :     Optional[Any]      =			_LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)
  
  
  
  
  
  