
#if 1
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
#include <map>
#include <set>
#include <unordered_map>
#include <unordered_set>
#include <queue>
#include <stack>
#include <array>
#include <deque>
#include <algorithm>
#include <utility>
#include <cstdint>
#include <functional>
#include <iomanip>
#include <numeric>
#include <assert.h>
#include <bitset>
#include <list>
#include <cmath>
#include <sstream>

#define all_range(C) std::begin(C), std::end(C)


int main()
{
	using std::endl;
	using std::cout;
	using std::cin;

	while (true)
	{
		std::string gengou;
		cin >> gengou;
		if (gengou == "#") { break; }

		int y, m, d;
		cin >> y >> m >> d;
		if ((y > 31) || y == 31 && (
			m > 4
			)) {
			gengou = "?";
			y -= 30;
		}
		cout << gengou << ' '
			<< y << ' '
			<< m << ' '
			<< d << '\n';
	}

	return 0;
}
#endif

