#include using namespace std; int i, n, m, j; string s; int get_nr(char c1) { if(c1 >= '0' && c1 <= '9') c1 -= '0'; else c1 += 10 - 'A'; return c1; } int get_nr(char c1, char c2) { if(c1 >= '0' && c1 <= '9') c1 -= '0'; else c1 += 10 - 'A'; if(c2 >= '0' && c2 <= '9') c2 -= '0'; else c2 += 10 - 'A'; return c1 * 16 + c2; } string solve(string s) { string ans = "#"; ans += "0"; for(int i = 0; i < 16; ++i) if(i < 10) { if(abs(get_nr(s[1], s[2]) - i * 16 - i) < abs(get_nr(s[1], s[2]) - get_nr(ans[1], ans[1]))) ans[1] = '0' + i; } else { if(abs(get_nr(s[1], s[2]) - i * 16 - i) < abs(get_nr(s[1], s[2]) - get_nr(ans[1], ans[1]))) ans[1] = 'A' + i - 10; } ans += "0"; for(int i = 0; i < 16; ++i) if(i < 10) { if(abs(get_nr(s[3], s[4]) - i * 16 - i) < abs(get_nr(s[3], s[4]) - get_nr(ans[2], ans[2]))) ans[2] = '0' + i; } else { if(abs(get_nr(s[3], s[4]) - i * 16 - i) < abs(get_nr(s[3], s[4]) - get_nr(ans[2], ans[2]))) ans[2] = 'A' + i - 10; } ans += "0"; for(int i = 0; i < 16; ++i) if(i < 10) { if(abs(get_nr(s[5], s[6]) - i * 16 - i) < abs(get_nr(s[5], s[6]) - get_nr(ans[3], ans[3]))) ans[3] = '0' + i; } else { if(abs(get_nr(s[5], s[6]) - i * 16 - i) < abs(get_nr(s[5], s[6]) - get_nr(ans[3], ans[3]))) ans[3] = 'A' + i - 10; } return ans; } int main() { ios_base::sync_with_stdio(0); cin >> n >> m; for(i = 1; i <= n; ++i) for(j = 1; j <= m; ++j) cin >> s, cout << solve(s) << " \n"[j == m]; return 0; }