#include <cstdio>
#include <iostream>
#include <cstring>
#include <algorithm>
#include <cmath>
using namespace std;
/*
蔡勒公式
接下來最近的哪一年裡的同一個日子,和今天的星期數一樣?
比如今天是8月6日,星期日。下一個也是星期日的8月6日發生在2023年。
在公曆中,能被4整除但不能被100整除,或能被400整除的年份即為閏年。
對每組資料輸出答案年份,題目保證答案不會超過四位數。
*/
int solve(int iYear,int iMonth,int iDay)//已知年月日,計算星期
{
int iWeek = ;
int y = , c = , m = , d = ;
if ( iMonth == || iMonth == )
{
c = ( iYear - ) / ;
y = ( iYear - ) % ;
m = iMonth + ;
d = iDay;
}
else
{
c = iYear / ;
y = iYear % ;
m = iMonth;
d = iDay;
}
iWeek = y + y / + c / - * c + * ( m + ) / + d - ;
iWeek = iWeek >= ? ( iWeek % ) : ( iWeek % + );
if ( iWeek == )
{
iWeek = ;
}
return iWeek;
}
bool judge(int y)//是否為閏年
{
if((y%==&&y%!=)||y%==)
return ;
else
return ;
}
int main()
{
int t;
int y,m,d;
scanf("%d",&t);
while(t--)
{
scanf("%d-%d-%d",&y,&m,&d);
bool flag=;
if(judge(y))
{
flag=;
}
int a=solve(y,m,d);
int ans=;
if(flag&&m==&&d==)//如果是閏年的2-29,那麼同樣隻有閏年才有2-29
{
for(int i=y+;i<=;i++)
{
if(solve(i,m,d)==a&&judge(i))//找到相同星期的閏年
{
ans=i;
break;
}
}
}
else
{
ans=y+;
int b=solve(ans,m,d);
while(b!=a)
{
ans++;
b=solve(ans,m,d);
}
}
printf("%d\n",ans);
}
}