






def      a_ (      _A  )			->			int:







				"""simple docstring"""
				if not isinstance(_A      ,   _A  ) or number < 0:
								raise ValueError('Input must be a non-negative integer'  )

				snake_case__									=     0
				while number:
								# This way we arrive at next set bit (next 1) instead of looping
								# through each bit and checking for 1s hence the
								# loop won't run 32 times it will only run the number of `1` times
								number &= number - 1
								count += 1
				return count


if __name__ == "__main__":
							import doctest

							doctest.testmod()












from __future__ import annotations
def      a_ (      _A      ,   _A  )			->			str:







				"""simple docstring"""
				# Checks if the entire collection has been sorted
				if len(_A  ) <= 1 or n <= 1:
								return

				insert_next(_A      ,   n - 1  )
				rec_insertion_sort(_A      ,   n - 1  )
def      a_ (      _A      ,   _A  )			->			Tuple:







				"""simple docstring"""
				# Checks order between adjacent elements
				if index >= len(_A  ) or collection[index - 1] <= collection[index]:
								return

				# Swaps adjacent elements since they are not in ascending order
				snake_case__							,						snake_case__									=     (
				    collection[index],
				    collection[index - 1],
				)

				insert_next(_A      ,   index + 1  )


if __name__ == "__main__":
							__UpperCamelCase					:		Optional[int]	  =						input("""Enter integers separated by spaces: """)
							__UpperCamelCase					:		list[int]	  =						[int(num) for num in numbers.split()]
							rec_insertion_sort(number_list, len(number_list))
							print(number_list)




