using namespace std;
class Date
{
friend istream& operator>>(istream& cin, Date& d);
private:
int _year;
int _month;
int _day;
public:
Date(int year = 1200, int month = 1, int day = 1)
:_year(year),
_month(month),
_day(day)
{ }
static int GetMonthDay(int year, int month)
{
static int dayArr[] = {0, 31, 28, 31, 30, 31, 30,
31, 31, 30, 31, 30, 31};
if((month == 2) && (((year % 4 == 0) && (year % 100 != 0)) ||
(year % 400 == 0)))
{
return 29;
}
else {
return dayArr[month];
}
}
Date& operator+=(const int day)
{
_day += day;
while(_day > GetMonthDay(_year, _month))
{
_day -= GetMonthDay(_year, _month);
++_month;
if(_month > 12)
{
++_year;
_month = 1;
}
}
return *this;
}
void Print() const
{
printf("%04d-%02d-%02d\n", _year, _month, _day);
}
};
istream& operator>>(istream& cin, Date& d)
{
cin >> d._year >> d._month >> d._day;
return cin;
}
int main()
{
int n = 0;
cin >> n;
while(n--)
{
Date d;
int day = 0;
cin >> d >> day;
d += day;
d.Print();
}
return 0;
}