





from __future__ import annotations




def 		lowerCAmelCase_    (  __UpperCAmelCase:			int      )      ->	bool:
    UpperCamelCase__							:				Tuple          =      str(__UpperCAmelCase      )
    return len(__UpperCAmelCase      ) == 9 and set(__UpperCAmelCase      ) == set('''123456789'''      )




def 		lowerCAmelCase_    (  )      ->	int | None:
    for base_num in range(9999		,   4999		,   -1      ):
        UpperCamelCase__							:				List[str]          =      10_0002 * base_num
        if is_9_pandigital(__UpperCAmelCase      ):
            return candidate

    for base_num in range(333		,   99		,   -1      ):
        UpperCamelCase__							:				Dict          =      100_2003 * base_num
        if is_9_pandigital(__UpperCAmelCase      ):
            return candidate

    return None


if __name__ == "__main__":
  print(F'''{solution() = }''')








def 		lowerCAmelCase_    (  __UpperCAmelCase:			int      )      ->	int:
    if not isinstance(__UpperCAmelCase		,   __UpperCAmelCase      ) or number < 0:
        raise ValueError('''Input must be a non-negative integer'''      )

    UpperCamelCase__							:				Optional[Any]          =      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()

