#define MOD 1000000007;
#include<iostream>
using namespace std;
long long pow(long long a,long long n)
{
long long res=1;
while(n)
{
if(n&1) res=(res*a)%MOD;
a=(a*a)%MOD;
n>>=1;
}
return res;
}
#define MOD 1000000007;
#include<iostream>
using namespace std;
long long pow(long long a,long long n)
{
long long res=1;
while(n)
{
if(n&1) res=(res*a)%MOD;
a=(a*a)%MOD;
n>>=1;
}
return res;
}