#include<iostream>
using namespace std;
long long d_num[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
bool rn(long long y){
if(y%100==0)return y%400==0;
else return y%4==0;
}
void solve(){
long long r;
cin>>r;
long long d=1,m=1,y=4713;
d_num[2]=28;
for(;r>=((y%4==1)?366:365)&&y>0;){
r-=(y%4==1)?366:365;
y--;
}
if(y>=1){
d_num[2]=(y%4==1)?29:28;
for(;r>=d_num[m];){
r-=d_num[m];
m++;
}
d=1+r;
cout<<d<<' '<<m<<' '<<y<<" BC"<<'\n';
return;
}
y=1;
for(;r>=((y%4==0)?366:365)&&y<1582;){
r-=(y%4==0)?366:365;
y++;
}
if(y<1582){
d_num[2]=(y%4==0)?29:28;
for(;r>=d_num[m];){
r-=d_num[m];
m++;
}
d=r+1;
cout<<d<<' '<<m<<' '<<y<<'\n';
return;
}
if(y==1582){
if(r<=276){
for(;r>=d_num[m]&&m<10;){
r-=d_num[m];
m++;
}
d=r+1;
cout<<d<<' '<<m<<' '<<y<<'\n';
return;
}
r-=276;
m=10,d=15;
if(r<=17){
d=d+r-1;
cout<<d<<' '<<m<<' '<<y<<'\n';
return;
}
r-=17;
m=11,d=1;
if(r<=61){
for(;r>=d_num[m]&&m<12;){
r-=d_num[m];
m++;
}
d=r;
cout<<d<<' '<<m<<' '<<y<<'\n';
return;
}
r-=62;
}
y=1583,m=1,d=1;
for(;r>=((rn(y))?366:365);){
r-=(rn(y))?366:365;
y++;
}
d_num[2]=(rn(y))?29:28;
for(;r>=d_num[m];){
r-=d_num[m];
m++;
}
d=1+r;
cout<<d<<' '<<m<<' '<<y<<'\n';
return;
}
int main(){
long long T;
cin>>T;
while (T--){
solve();
}
return 0;
}