#include #include #include using namespace std; int days(int y, int m) { switch (m) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: return 31; case 2: if (y % 4 == 0) { return 29; } else { return 28; } default: return 30; } } string res(char inp[]) { int len = strlen(inp); if (len < 10 || len > 11 || inp[6] != '/') { return "invalid"; } for (int i = 0; i < len; i ++) { if (i != 6 && (inp[i] < '0' || inp[i] > '9')) { return "invalid"; } } int y = 10 * (inp[0] - '0') + inp[1] - '0'; int m = 10 * (inp[2] - '0') + inp[3] - '0'; int d = 10 * (inp[4] - '0') + inp[5] - '0'; long long c = 100 * (inp[7] - '0') + 10 * (inp[8] - '0') + inp[9] - '0'; if (len == 11) { c = 10 * c + inp[10] - '0'; } c += 10000 * d + 1000000 * m + 100000000ll * y; if (y > 9 && y < 20) { return "invalid"; } bool girl = false; if (m > 50) { girl = true; m -= 50; } if (m > 12 || m < 1) { return "invalid"; } if (d > days(y, m) || d < 1) { return "invalid"; } if (c % 11 != 0) { return "invalid"; } if (girl) { return "girl"; } else { return "boy"; } } int main() { char inp[100]; scanf("%s", inp); while (inp[0] != 'e') { printf("%s\n", res(inp).c_str()); scanf("%s", inp); } return 0; }