#include <iostream>
#include <cstdio>
#include <array>
using namespace std;
bool isLeapYear(int year) {
return year % 4 == 0 && year % 100 != 0 || year % 400 == 0;
}
array<array<int, 13>, 2> dayTab = {
{ {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},
{0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}
}
};
int main() {
int n;
while (cin >> n) { // 注意 while 处理多个 case
for (int i = 0; i < n; i++) {
int year, month, day;
int add;
cin >> year >> month >> day >> add;
add += (day-1);
day = 1; // 从第一天开始,方便计算
int isLeap = isLeapYear(year);
while (add > dayTab[isLeap][month]) {
add -= dayTab[isLeap][month];
day = 1;
if (month > 12) {
year ++;
isLeap = isLeapYear(year); // 跨年更新闰年标记
month = 1;
} else {
month++;
}
}
day += add;
printf("%04d-%02d-%02d\n", year, month, day);
}
return 0;
}
}
// 64 位输出请用 printf("%lld")