




from __future__ import annotations
def        lowerCamelCase_     (     SCREAMING_SNAKE_CASE ):
			'''simple docstring'''
			SCREAMING_SNAKE_CASE     =       [0] * len(SCREAMING_SNAKE_CASE )
			for i in range(1       ,						len(SCREAMING_SNAKE_CASE ) ):
						SCREAMING_SNAKE_CASE     =       duration_times[i - 1] + waiting_times[i - 1]
			return waiting_times
def        lowerCamelCase_     (     SCREAMING_SNAKE_CASE       ,						SCREAMING_SNAKE_CASE ):
			'''simple docstring'''
			return [
			    duration_time + waiting_times[i]
			    for i, duration_time in enumerate(SCREAMING_SNAKE_CASE )
			]
def        lowerCamelCase_     (     SCREAMING_SNAKE_CASE ):
			'''simple docstring'''
			return sum(SCREAMING_SNAKE_CASE ) / len(SCREAMING_SNAKE_CASE )
def        lowerCamelCase_     (     SCREAMING_SNAKE_CASE ):
			'''simple docstring'''
			return sum(SCREAMING_SNAKE_CASE ) / len(SCREAMING_SNAKE_CASE )


if __name__ == "__main__":
		# process id's
		__A    :				Any    						=	[1, 2, 3]

		# ensure that we actually have processes
		if len(processes) == 0:
				print("""Zero amount of processes""")
				raise SystemExit(0)

		# duration time of all processes
		__A    :				Union[str, Any]    						=	[1_9, 8, 9]

		# ensure we can match each id to a duration time
		if len(duration_times) != len(processes):
				print("""Unable to match all id's with their duration time""")
				raise SystemExit(0)

		# get the waiting times and the turnaround times
		__A    :				Union[str, Any]    						=	calculate_waiting_times(duration_times)
		__A    :				int    						=	calculate_turnaround_times(duration_times, waiting_times)

		# get the average times
		__A    :				str    						=	calculate_average_waiting_time(waiting_times)
		__A    :				Dict    						=	calculate_average_turnaround_time(turnaround_times)

		# print all the results
		print("""Process ID\tDuration Time\tWaiting Time\tTurnaround Time""")
		for i, process in enumerate(processes):
				print(
				    f'''{process}\t\t{duration_times[i]}\t\t{waiting_times[i]}\t\t'''
				    f'''{turnaround_times[i]}'''
				)
		print(f'''Average waiting time = {average_waiting_time}''')
		print(f'''Average turn around time = {average_turnaround_time}''')












def        lowerCamelCase_     (     SCREAMING_SNAKE_CASE       ,						SCREAMING_SNAKE_CASE ):
			'''simple docstring'''
			if n == 0:
						return 1

			elif n % 2 == 1:
						return binary_exponentiation(SCREAMING_SNAKE_CASE       ,						n - 1 ) * a

			else:
						SCREAMING_SNAKE_CASE     =       binary_exponentiation(SCREAMING_SNAKE_CASE       ,						n / 2 )
						return b * b


if __name__ == "__main__":
		try:
				__A    :				Tuple    						=	int(input("""Enter Base : """).strip())
				__A    :				Any    						=	int(input("""Enter Power : """).strip())
		except ValueError:
				print("""Invalid literal for integer""")

		__A    :				Union[str, Any]    						=	binary_exponentiation(BASE, POWER)
		print(f'''{BASE}^({POWER}) : {RESULT}''')






