# Include <iostream>
Int month [13] = {, 31, 31 };
Char month [13] [10] = {"", "January", "February", "March", "Jun L", "may", "June ", "July", "August", "September", "October", "November", "December "};
Char dayofweek [7] [10] = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday "};
Bool leapyear (int x ){
If (X % 400 = 0) return 1;
If (X % 100 = 0) return 0;
If (X % 4 = 0) return 1;
Return 0;
}
Int days (int m, int D, int y ){
If (M> 12) Return-1;
If (y = 1752 & M = 9 & D> 3 & D <14) Return-1;
Int sum = 0, I;
If (Y> 1752 | Y = 1752 & amp; m> 9 | Y = 1752 & amp; M = 9 & amp; D> = 14) sum-= 11;
Bool L;
L = leapyear (y );
If (L & M = 2 & D = 29 | D <= month [m]) sum + = D;
Else return-1;
For (I = 1; I <m; I ++ ){
Sum + = month [I];
}
If (M> 2 & L) sum ++;
Sum + = (Y-1) * 365 + (Y-1)/4-(Y-1)/100 + (Y-1)/400;
Return sum;
}
Int main (){
Int M, D, Y, days;
While (scanf ("% d", & M, & D, & Y) & M ){
Days = days (M, D, y );
If (days =-1) printf ("% d/% d is an invalid date./N", M, D, y );
Else printf ("% S % d, % d is a % s/n", month [m], D, Y, dayofweek [(days + 10) % 7]);
}
Return 0;
}