#include <stdio.h>
#include <string.h>

char white;

void placedPiece(int x, int y);
void placePiece(int *x, int *y);
void movedPiece(int fromX, int fromY, int toX, int toY);
void movePiece(int *fromX, int *fromY, int *toX, int *toY);

int main() {
    white = 0;
    char s[10]; //stores the data read from stdin
    int numPlaced = 0;
    while (1) {
        scanf("%s", s);
        if (!strcmp(s, "Quit")) return 0; //Quit the game when we read "Quit"
        if (!strcmp(s, "Start")) {
            //The first turn, so we're white and go first
            white = 1;
        } else if (numPlaced<49) {
            int x = s[0]-'A';
            int y = s[1]-'1';
            placedPiece(x, y); //tell the opponent placed a piece
            ++numPlaced;
        } else {
            int fromX = s[0]-'A';
            int fromY = s[1]-'1';
            int toX = s[2]-'A';
            int toY = s[3]-'1';
            movedPiece(fromX, fromY, toX, toY); //tell the opponent moved a piece
        }

        if (numPlaced<49) {
            ++numPlaced;
            int x, y;
            placePiece(&x, &y); //ask to place a piece
            s[0] = x+'A';
            s[1] = y+'1';
            s[2] = 0;
            printf("%s\n", s); //output the move
	    fflush(stdout);
        }
        if (numPlaced>=49) {
            int fromX, fromY, toX, toY;
            movePiece(&fromX, &fromY, &toX, &toY); //ask to move a piece
            s[0] = fromX+'A';
            s[1] = fromY+'1';
            s[2] = toX+'A';
            s[3] = toY+'1';
            s[4] = 0;
            printf("%s\n", s); //output the move
	    fflush(stdout);
        }
    }
}

//x is the diagonal column (columns are diagonal, so the A columns is called 0,
// and has only 3 rows (see the image on codecup.org)
//y is the row, and starts at 0.

void placedPiece(int x, int y) {
    //store the opponents placed piece
}

void placePiece(int* x, int* y) {
    //calculate where to place a piece and store it in the arguments
}

void movedPiece(int fromX, int fromY, int toX, int toY) {
    //store the the opponents move
}

void movePiece(int* fromX, int* fromY, int* toX, int* toY) {
    //calculate a move and store it in the arguments
}


syntax highlighted by Code2HTML, v. 0.9.1