import java.io.IOException; import java.io.InputStream; import java.io.PrintWriter; import java.util.Arrays; import java.util.NoSuchElementException; import java.util.Scanner; import java.util.function.BinaryOperator; public class Main implements Runnable { public static void main(String[] args) throws IOException { new Thread(null, new Main(), "", Runtime.getRuntime().maxMemory()).start(); } long inv(long a) { return pow(a,p-2); } long ADD(long a,long b) { return a+b>=p?a+b-p:a+b; } long SUB(long a,long b) { return ADD(a,p-b); } long[] mul(long[] a, long[] b) { long[] c=new long[a.length+b.length-1]; for (int i=0;i