import java.math.BigInteger; import java.util.ArrayList; import java.util.Arrays; import java.util.Scanner; public class Main implements Runnable { public static void main(String[] args) { new Thread(null, new Main(), "", 512 * 1024 * 1024).start(); } long powmod(long a, long n, long mod) { if(n==0) return 1; return powmod(a*a%mod,n/2,mod)*(n%2==1?a:1)%mod; } long gcd(long a,long b) { if(a==0)return b; return gcd(b%a,a); } boolean[] isPrime=new boolean[100000]; int[] phi=new int[100000]; int[] f=new int[100000]; { Arrays.setAll(phi, i->i); Arrays.fill(isPrime, true); isPrime[0]=isPrime[1]=false; Arrays.fill(f, 1); for(int i=2;i