





"""simple docstring"""






from __future__ import annotations

def     __A      (			a_						:list   ,       a_						:int   ,       a_						:int   ,       a_						:int)		->		list:
				__a :						Any			       =  []
				__a :						int			       =  input_list[low:mid], input_list[mid : high + 1]
				while left and right:
								result.append((left if left[0] <= right[0] else right).pop(0))
				__a :						int			       =  result + left + right
				return input_list

def     __A      (			a_						:list)		->		list:
				if len(a_) <= 1:
								return input_list
				__a :						List[str]			       =  list(a_)

				# iteration for two-way merging
				__a :						Optional[int]			       =  2
				while p <= len(a_):
								# getting low, high and middle value for merge-sort of single list
								for i in range(0   ,       len(a_)   ,       a_):
												__a :						List[str]			       =  i
												__a :						int			       =  i + p - 1
												__a :						Dict			       =  (low + high + 1) // 2
												__a :						Optional[Any]			       =  merge(a_   ,       a_   ,       a_   ,       a_)
								# final merge of last two parts
								if p * 2 >= len(a_):
												__a :						Dict			       =  i
												__a :						int			       =  merge(a_   ,       0   ,       a_   ,       len(a_) - 1)
												break
								p *= 2

				return input_list


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






"""simple docstring"""






from math import log

from scipy.constants import Boltzmann, physical_constants

A 			=  300  # TEMPERATURE (unit = K)

def     __A      (			a_						:float   ,       a_						:float   ,       a_						:float   ,       )		->		float:

				if donor_conc <= 0:
								raise ValueError('''Donor concentration should be positive''')
				elif acceptor_conc <= 0:
								raise ValueError('''Acceptor concentration should be positive''')
				elif intrinsic_conc <= 0:
								raise ValueError('''Intrinsic concentration should be positive''')
				elif donor_conc <= intrinsic_conc:
								raise ValueError(
								    '''Donor concentration should be greater than intrinsic concentration''')
				elif acceptor_conc <= intrinsic_conc:
								raise ValueError(
								    '''Acceptor concentration should be greater than intrinsic concentration''')
				else:
								return (
								    Boltzmann
								    * T
								    * log((donor_conc * acceptor_conc) / intrinsic_conc**2)
								    / physical_constants["electron volt"][0]
								)


if __name__ == "__main__":
		import doctest

		doctest.testmod()