'''simple docstring'''


def  _lowerCamelCase   (				lowerCamelCase_ :							float     ,					lowerCamelCase_ :							float     ,					lowerCamelCase_ :							int       ):



					"""simple docstring"""





					if principal <= 0:
										raise Exception('Principal borrowed must be > 0'       )
					if rate_per_annum < 0:
										raise Exception('Rate of interest must be >= 0'       )
					if years_to_repay <= 0 or not isinstance(lowerCamelCase_     ,					lowerCamelCase_       ):
										raise Exception('Years to repay must be an integer > 0'       )

					# Yearly rate is divided by 12 to get monthly rate
					UpperCAmelCase_							:       Optional[Any]       =				rate_per_annum / 12

					# Years to repay is multiplied by 12 to get number of payments as payment is monthly
					UpperCAmelCase_							:       List[str]       =				years_to_repay * 12

					return (
					    principal
					    * rate_per_month
					    * (1 + rate_per_month) ** number_of_payments
					    / ((1 + rate_per_month) ** number_of_payments - 1)
					)


if __name__ == "__main__":
	import doctest

	doctest.testmod()







'''simple docstring'''


def  _lowerCamelCase   (				lowerCamelCase_ :							str     ,					lowerCamelCase_ :							str = " "       ):



     """simple docstring"""





     UpperCAmelCase_							:       str       =				[]

     UpperCAmelCase_							:       List[Any]       =				0
     for index, char in enumerate(lowerCamelCase_       ):
          if char == separator:
               split_words.append(string[last_index:index]       )
               UpperCAmelCase_							:       Optional[Any]       =				index + 1
          elif index + 1 == len(lowerCamelCase_       ):
               split_words.append(string[last_index : index + 1]       )
     return split_words


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

 testmod()






