Discussion About Light’s New Car

This is Discussion thread about Light’s New Car

How to handle big values in this question.Even after Applying modulo 10^9 + 7 result is wrong.
#include
using namespace std;
long long MOD=1000000007;
long long power(long long a,long long b){
if(b==0)return 1;
long long half=power(a,b/2);
int long t=(halfhalf);
if(b%2==0)return t%MOD;
else
return (a
t)%MOD;

}

int main(){
int T;
cin>>T;
while(T){
long long a,b;
cin>>a;
cin>>b;
a=a%MOD;
b=b%MOD;
int result=power(a,b);
cout<<result<<endl;
T–;
}

return 0;

}