

def 							__SCREAMING_SNAKE_CASE							(			lowerCAmelCase:					float					, lowerCAmelCase:					list[float]	)				->    float:
				if discount_rate < 0:
								raise ValueError("Discount rate cannot be negative"	)
				if not cash_flows:
								raise ValueError("Cash flows list cannot be empty"	)
				_UpperCAmelCase    :						Union[str, Any]							=      sum(
				    cash_flow / ((1 + discount_rate) ** i) for i, cash_flow in enumerate(lowerCAmelCase	)	)
				return round(lowerCAmelCase					, ndigits=2	)


if __name__ == "__main__":
					import doctest

					doctest.testmod()





def 							__SCREAMING_SNAKE_CASE							(			lowerCAmelCase:					int	)				->    int:
				if not isinstance(lowerCAmelCase					, lowerCAmelCase	):
								raise TypeError("Input value must be an 'int' type"	)

				_UpperCAmelCase    :						List[Any]							=      0
				while number:
								position += 1
								number >>= 1

				return position


if __name__ == "__main__":
					import doctest

					doctest.testmod()


