#include <stdio.h>
#include <iostream>

using namespace std;

int abs(int n) {
    return n < 0 ? -n : n;
}

int main() {
    int N, M;
    string pixel;

    freopen("in.txt", "r", stdin);

    cin >> N >> M;
    for (int i = 0; i < N; ++i) {
        for (int j = 0; j < M; ++j) {
            cin >> pixel;
            cout << "#";
            for (int k = 1; k < 7; k += 2) {
                int initial = (pixel[k] - 'A') * 16 + (pixel[k + 1] - 'A');
                int first = (pixel[k] - 'A') * 16 + (pixel[k] - 'A');
                int second = (pixel[k + 1] - 'A') * 16 + (pixel[k + 1] - 'A');

                if (abs(initial - first) == abs(initial - second)) {
                    cout << min(pixel[k], pixel[k + 1]);
                } else {
                    if (abs(initial - first) < abs(initial - second)) {
                        cout << pixel[k];
                    } else {
                        cout << pixel[k + 1];
                    }
                }
            }
            cout << " ";
        }
        cout << endl;
    }

    return 0;
}