



"""simple docstring"""





from __future__ import annotations






def 						__UpperCAmelCase       (							snake_case_	:	Optional[Any] ,						snake_case_	:	Tuple ,						snake_case_	:	List[str] ,						snake_case_	:	str )				->						Optional[Any]:






   """simple docstring"""


   if (direction == 1 and array[indexa] > array[indexa]) or (
       direction == 0 and array[indexa] < array[indexa]
   ):
      _lowerCAmelCase  ,    _lowerCAmelCase         =		array[indexa], array[indexa]






def 						__UpperCAmelCase       (							snake_case_	:	Optional[Any] ,						snake_case_	:	Optional[Any] ,						snake_case_	:	List[Any] ,						snake_case_	:	Dict )				->						Any:






   """simple docstring"""


   if length > 1:
      _lowerCAmelCase         =		int(length / 2 )
      for i in range(__A ,						low + middle ):
         comp_and_swap(__A ,						__A ,						i + middle ,						__A )
      bitonic_merge(__A ,						__A ,						__A ,						__A )
      bitonic_merge(__A ,						low + middle ,						__A ,						__A )






def 						__UpperCAmelCase       (							snake_case_	:	str ,						snake_case_	:	Union[str, Any] ,						snake_case_	:	Dict ,						snake_case_	:	List[str] )				->						Tuple:






   """simple docstring"""


   if length > 1:
      _lowerCAmelCase         =		int(length / 2 )
      bitonic_sort(__A ,						__A ,						__A ,						1 )
      bitonic_sort(__A ,						low + middle ,						__A ,						0 )
      bitonic_merge(__A ,						__A ,						__A ,						__A )


if __name__ == "__main__":
  SCREAMING_SNAKE_CASE					:  Dict        =						input('''Enter numbers separated by a comma:\n''').strip()
  SCREAMING_SNAKE_CASE					:  List[Any]        =						[int(item.strip()) for item in user_input.split(''',''')]

  bitonic_sort(unsorted, 0, len(unsorted), 1)
  print('''\nSorted array in ascending order is: ''', end='''''')
  print(*unsorted, sep=''', ''')

  bitonic_merge(unsorted, 0, len(unsorted), 0)
  print('''Sorted array in descending order is: ''', end='''''')
  print(*unsorted, sep=''', ''')




'''simple docstring'''





def lowerCAmelCase    (__A):



     """simple docstring"""



     return credit_card_number.startswith(('''34''', '''35''', '''37''', '''4''', '''5''', '''6'''))




def lowerCAmelCase    (__A):



     """simple docstring"""



     _a           =    credit_card_number
     _a           =    0
     _a           =    len(__A) - 2
     for i in range(__A    ,      -1    ,      -2):
          #  double the value of every second digit
          _a           =    int(cc_number[i])
          digit *= 2
          # If doubling of a number results in a two digit number
          # i.e greater than 9(e.g., 6 × 2 = 12),
          # then add the digits of the product (e.g., 12: 1 + 2 = 3, 15: 1 + 5 = 6),
          # to get a single digit number.
          if digit > 9:
               digit %= 10
               digit += 1
          _a           =    cc_number[:i] + str(__A) + cc_number[i + 1 :]
          total += digit

     # Sum up the remaining digits
     for i in range(len(__A) - 1    ,      -1    ,      -2):
          total += int(cc_number[i])

     return total % 10 == 0




def lowerCAmelCase    (__A):



     """simple docstring"""



     _a           =    F'''{credit_card_number} is an invalid credit card number because'''
     if not credit_card_number.isdigit():
          print(F'''{error_message} it has nonnumerical characters.''')
          return False

     if not 13 <= len(__A) <= 16:
          print(F'''{error_message} of its length.''')
          return False

     if not validate_initial_digits(__A):
          print(F'''{error_message} of its first two digits.''')
          return False

     if not luhn_validation(__A):
          print(F'''{error_message} it fails the Luhn check.''')
          return False

     print(F'''{credit_card_number} is a valid credit card number.''')
     return True


if __name__ == "__main__":
  import doctest

  doctest.testmod()
  validate_credit_card_number("4111111111111111")
  validate_credit_card_number("32323")



