


"""simple docstring"""






from __future__ import annotations


def __lowercase  (   lowerCamelCase_	:   Dict	):
				for r in range(1    ,       UpperCamelCase_	):
								SCREAMING_SNAKE_CASE__  				=					[]
								for x in range(n - 1	):
												SCREAMING_SNAKE_CASE__  				=					pow(UpperCamelCase_    ,       UpperCamelCase_    ,       UpperCamelCase_	)
												if val in li:
																break
												li.append(UpperCamelCase_	)
								else:
												return r
				return None


if __name__ == "__main__":
	_lowerCamelCase  =	int(input('Enter a prime number q: '))
	_lowerCamelCase  =	find_primitive(q)
	if a is None:
		print(f"""Cannot find the primitive for the value: {a!r}""")
	else:
		_lowerCamelCase  =	int(input('Enter private key of A: '))
		_lowerCamelCase  =	pow(a, a_private, q)
		_lowerCamelCase  =	int(input('Enter private key of B: '))
		_lowerCamelCase  =	pow(a, b_private, q)

		_lowerCamelCase  =	pow(b_public, a_private, q)
		_lowerCamelCase  =	pow(a_public, b_private, q)

		print('The key value generated by A is: ', a_secret)
		print('The key value generated by B is: ', b_secret)







from __future__ import annotations




def 			lowerCAmelCase_			(				UpperCamelCase_	)  ->		int | None:
       for r in range(1       ,		UpperCamelCase_	):
              UpperCamelCase_ 							=	[]
              for x in range(n - 1	):
                     UpperCamelCase_ 							=	pow(UpperCamelCase_       ,		UpperCamelCase_       ,		UpperCamelCase_	)
                     if val in li:
                            break
                     li.append(UpperCamelCase_	)
              else:
                     return r
       return None


if __name__ == "__main__":
     _UpperCAmelCase										=					int(input('Enter a prime number q: '))
     _UpperCAmelCase										=					find_primitive(q)
     if a is None:
          print(f'''Cannot find the primitive for the value: {a!r}''')
     else:
          _UpperCAmelCase										=					int(input('Enter private key of A: '))
          _UpperCAmelCase										=					pow(a, a_private, q)
          _UpperCAmelCase										=					int(input('Enter private key of B: '))
          _UpperCAmelCase										=					pow(a, b_private, q)

          _UpperCAmelCase										=					pow(b_public, a_private, q)
          _UpperCAmelCase										=					pow(a_public, b_private, q)

          print('The key value generated by A is: ', a_secret)
          print('The key value generated by B is: ', b_secret)

