
def 				a						(							snake_case__:					float						,   snake_case__:					float						,   snake_case__:					float						,   snake_case__:					float						,   snake_case__:					float						,   ):


				'''simple docstring'''
				lowercase_       =					[redshift, radiation_density, matter_density, dark_energy]
				if any(p < 0 for p in parameters					):
								raise ValueError('''All input parameters must be positive'''					)

				if any(p > 1 for p in parameters[1:4]					):
								raise ValueError('''Relative densities cannot be greater than one'''					)
				else:
								lowercase_       =					1 - (matter_density + radiation_density + dark_energy)

								lowercase_       =					(
								    radiation_density * (redshift + 1) ** 4
								    + matter_density * (redshift + 1) ** 3
								    + curvature * (redshift + 1) ** 2
								    + dark_energy
								)

								lowercase_       =					hubble_constant * e_a ** (1 / 2)
								return hubble


if __name__ == "__main__":
						import doctest

						# run doctest
						doctest.testmod()

						# demo LCDM approximation
						__a  			=					0.3

						print(
						    hubble_parameter(
						        hubble_constant=68.3,
						        radiation_density=1E-4,
						        matter_density=matter_density,
						        dark_energy=1 - matter_density,
						        redshift=0,
						    )
						)






def 				a						(							snake_case__:					list					):


				'''simple docstring'''

				if len(snake_case__					) <= 1:
								return [tuple(snake_case__					)]

				lowercase_       =					[]

				def generate(snake_case__:					int						,   snake_case__:					list					):
								if k == 1:
												res.append(tuple(arr[:]					)					)
												return

								generate(k - 1						,   snake_case__					)

								for i in range(k - 1					):
												if k % 2 == 0:  # k is even
																lowercase_  ,	lowercase_       =					arr[k - 1], arr[i]
												else:  # k is odd
																lowercase_  ,	lowercase_       =					arr[k - 1], arr[0]
												generate(k - 1						,   snake_case__					)

				generate(len(snake_case__					)						,   snake_case__					)
				return res


if __name__ == "__main__":
						__a  			=					input('Enter numbers separated by a comma:\n').strip()
						__a  			=					[int(item) for item in user_input.split(',')]
						print(heaps(arr))




