## Square Mess | solution | ## Yellow |

The 9 by 9 grid of characters represents the memory of a simple computer. (The numbers at top and left are not part of the memory; they merely indicate the indexing system.) In addition, the computer has four registers X, Y, DX, DY, which are all initialized to zero. The computer repeats the following process until encountering the stop code:

1. Print the character at memory location (X,Y).

2. Perform the operation indicated by memory location (X,Y).

3. Replace X by X + DX and Y by Y + DY (modulo 9).

Each character (letter or space) represents a different operation from the following table. An operation (other than "stop", which terminates execution) consists of applying the specified rule simultaneously to DX and DY; for instance, if DX and DY have the values 2 and 3, and the operation is to replace DX by -DX-DY and DY by DX, then the new values of DX and DY will be -5 and 2.

Your task is to determine which character stands for which operation. If you do this correctly, the output of the computer will provide further instructions. Some more things to keep in mind:

- Each operation will be performed at least once.
- Not every memory location will be visited.
- A memory location may be visited more than once.

New value of DX | New value of DY |

DX+1 | DY |

DX-1 | DY |

DX | DY+1 |

DX | DY-1 |

DX+1 | DY+1 |

DX+1 | DY-1 |

DX-1 | DY+1 |

DX-1 | DY-1 |

-DX | DY |

DX | -DY |

DY | DX |

-DY | DX |

DY | -DX |

-DY | -DX |

DX+1 | -DY |

DX-1 | -DY |

-DX | DY+1 |

-DX | DY-1 |

stop | stop |

x--> 012345678 0FM ETY O 1IHIGLM DN y 2SGLHRAE T | 3SITAWK AE | 4 YUOREO R V 5LGRANFAHH 6NY LAFSRW 7FHMAETR U 8GIT ET LW