
def        __UpperCamelCase					(    lowerCAmelCase__							:    list  ):

 def merge(lowerCAmelCase__							:    list  ,       lowerCAmelCase__							:    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(lowerCAmelCase__  ) <= 1:
  return collection
 __a			:  str		    =  len(lowerCAmelCase__  ) // 2
 return merge(merge_sort(collection[:mid]  )  ,       merge_sort(collection[mid:]  )  )


if __name__ == "__main__":
      import doctest

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


def        __UpperCamelCase					(    lowerCAmelCase__							:    str  ,       lowerCAmelCase__							:    str  ):
 __a			:  Any		    =  len(lowerCAmelCase__  )
 __a			:  Union[str, Any]		    =  []
 for i in range(len(lowerCAmelCase__  ) - pat_len + 1  ):
  __a			:  List[Any]		    =  True
  for j in range(lowerCAmelCase__  ):
   if s[i + j] != pattern[j]:
    __a			:  Union[str, Any]		    =  False
    break
  if match_found:
   position.append(lowerCAmelCase__  )
 return position


if __name__ == "__main__":
      assert naive_pattern_search('ABCDEFG', 'DE') == [3]
      print(naive_pattern_search('ABAAABCDBBABCDDEBCABC', 'ABC'))
