import java.io.*; import java.util.*; import java.text.*; import java.math.*; import java.util.regex.*; public class Solution { static ArrayList sieve(){ boolean[] arr=new boolean[1000001]; for(int i=2;i ans=new ArrayList(); for(int i=2;i f(long n,ArrayList arr){ long last=n; ArrayList ans=new ArrayList(); for(int i=0;i1&&n%div==0){ n/=div; ans.add(div); } } if(n>1) ans.add(n); return ans; } static long find(long n,ArrayList arr){ if(n==1) return 1; ArrayList temp=f(n,arr); long ans=1; for(int i=0;i arr=sieve(); long ans=0; for(int i=0;i