


'''simple docstring'''






def      UpperCAmelCase      (		lowerCamelCase_  :int ):







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

		snake_case_		:							List[str]			       =						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()



'''simple docstring'''






from abc import ABC, abstractmethod
from argparse import ArgumentParser
class 						__UpperCamelCase	(						lowercase__							):





							@staticmethod
							@abstractmethod
							def 		a__   (  _UpperCamelCase		:ArgumentParser			):
									raise NotImplementedError()





							@abstractmethod
							def 		a__   (  self		:Optional[Any]			):
									raise NotImplementedError()