




"""simple docstring"""




def 					a__				(       snake_case__       )		->      int:
			assert (
			    isinstance(UpperCamelCase__ ,				UpperCamelCase__       ) and number_of_steps > 0
			), F'number_of_steps needs to be positive integer, your input {number_of_steps}'
			if number_of_steps == 1:
						return 1
			lowerCamelCase   ,     lowerCamelCase       =      1, 1
			for _ in range(number_of_steps - 1       ):
						lowerCamelCase   ,     lowerCamelCase       =      current + previous, current
			return current


if __name__ == "__main__":
			import doctest

			doctest.testmod()









"""simple docstring"""




from collections.abc import Sequence



def 					a__				(       snake_case__ ,				snake_case__ = False       )		->      float:
			if not arr:
						return 0

			lowerCamelCase       =      0 if allow_empty_subarrays else float("""-inf"""       )
			lowerCamelCase       =      0.0
			for num in arr:
						lowerCamelCase       =      max(0 if allow_empty_subarrays else num ,				curr_sum + num       )
						lowerCamelCase       =      max(snake_case__ ,				snake_case__       )

			return max_sum


if __name__ == "__main__":
					from doctest import testmod

					testmod()

					lowerCAmelCase							:    Optional[int]  							=							[-2, 1, -3, 4, -1, 2, 1, -5, 4]
					print(F"""{max_subarray_sum(nums) = }""")



