"""simple docstring"""
def 		__a  (      _SCREAMING_SNAKE_CASE  )      ->list[int]:
  if len(_SCREAMING_SNAKE_CASE  ) > 1:
    a__:	Dict     				=      len(_SCREAMING_SNAKE_CASE  ) // 2  # Finds the middle of the array
    a__:	List[str]     				=      arr[
        :middle_length
    ]  # Creates an array of the elements in the first half.
    a__:	Any     				=      arr[
        middle_length:
    ]  # Creates an array of the elements in the second half.
    a__:	Tuple     				=      len(_SCREAMING_SNAKE_CASE  )
    a__:	Optional[Any]     				=      len(_SCREAMING_SNAKE_CASE  )
    merge(_SCREAMING_SNAKE_CASE  )  # Starts sorting the left.
    merge(_SCREAMING_SNAKE_CASE  )  # Starts sorting the right
    a__:	Any     				=      0  # Left Counter
    a__:	Union[str, Any]     				=      0  # Right Counter
    a__:	int     				=      0  # Position Counter
    while (
        left_index < left_size and right_index < right_size
    ):  # Runs until the lowers size of the left and right are sorted.
      if left_array[left_index] < right_array[right_index]:
        a__:	Union[str, Any]     				=      left_array[left_index]
        left_index += 1
      else:
        a__:	str     				=      right_array[right_index]
        right_index += 1
      index += 1
    while (
        left_index < left_size
    ):  # Adds the left over elements in the left half of the array
      a__:	List[Any]     				=      left_array[left_index]
      left_index += 1
      index += 1
    while (
        right_index < right_size
    ):  # Adds the left over elements in the right half of the array
      a__:	str     				=      right_array[right_index]
      right_index += 1
      index += 1
  return arr


if __name__ == "__main__":
 import doctest

 doctest.testmod()



from __future__ import annotations



def       __SCREAMING_SNAKE_CASE    (   __UpperCamelCase       :			str      )				->   bool:







  """simple docstring"""





  SCREAMING_SNAKE_CASE__     				= 42
  SCREAMING_SNAKE_CASE__     				= list(__UpperCamelCase      )
  SCREAMING_SNAKE_CASE__				,	SCREAMING_SNAKE_CASE__     				= _vector[:-1], int(_vector[-1]      )
  SCREAMING_SNAKE_CASE__     				= [int(__UpperCamelCase      ) for digit in __vector]

  vector.reverse()
  for i, digit in enumerate(__UpperCamelCase      ):
    if i & 1 == 0:
      SCREAMING_SNAKE_CASE__     				= digit * 2
      if doubled > 9:
        doubled -= 9
      check_digit += doubled
    else:
      check_digit += digit

  return check_digit % 10 == 0


if __name__ == "__main__":
   import doctest

   doctest.testmod()
   assert is_luhn('''79927398713''')
   assert not is_luhn('''79927398714''')
