import pandas as pd
import time
defEuler(n:int)->list:if(n!=1):
mul = n
res =[]
factor =2while(n!=1):if(n%factor==0):
n = n / factor
res.append(factor)else:
factor +=1
func =lambda x:1-1/x
res =list(map(func,list(set(res))))for i in res:
mul *= i
returnround(mul)else:return1defPrimitive_root(n:int)->list:
m = Euler(n)
m_lt =[]for i inrange(1, m+1):
m_lt.append(i)
res =[]for a inrange(1,19):
func =lambda x: a**x%n
temp =list(map(func, m_lt))if(len(set(temp))==m):
res.append(a)return res
if __name__=='__main__':
n =19print(Primitive_root(n))