/*
A(1,0)=2
A(0,0)=1;
A(n,0)=n+2;(n>=2)
A(n,1)=A(A(n-1,1),0)......=A(A())实际求出A(N-1,1)的大小
A(5,1)=A(A(4,1),0)=A(A(A(3,1),0),0)=
A(A(A(A(2,0),0),0),0)
A(A(A(A(A(A(0,1),1),1),1),1),0)
A(1,1)=A((0,1),0)=A(2,0)=2
A(2,1)=A(A(A(0,1),0),0)=A(A(2,0),0)=A(2,0)=4

所以A(n,1)=n*2

A(0,1)=1
A(n,2)=A(A(n-1,2),1)
A(1,2)=A(A(0,2),1)=A(1,1)=2
A(2,2)=A(A(1,2),1)=A(2,1)=4
A(3,2)=A(A(2,2),1)=A(4,1)=8
A(4,2)=A(A(3,2),1)=16;

所以A(N,2)=2^N;
A(0,2)=1;

/
#include<iostream>
#include<algorithm>
using namespace std;
long long t,n,m,num=1;
int main()
{
cin>>t;
while(t--)
{
cin>>n>>m;
if(n==1&&m==0)
cout<<"2"<<endl;
else if(n==0)
cout<<"1"<<endl;
else if(m==0)
cout<<n+2<<endl;
else if(m==1)
{
cout<<n</algorithm></iostream>
2<<endl;
}
else if(m==2)
{
num=1;
for(int i=0;i<n;i++)
{
num<<=1;
num%=998244353;
}
cout<<num<<endl;
}
}
return 0;
}