On the Subject of Fax Matrix

I am the boss!

The module consists of a 10×10 grid of buttons, two displays (which can show horizontal and vertical clues), and two buttons on the top left side. The left button can check for validation of the puzzle, or reset if on phase 2, and the right button can toggle flagging or clear the grid if on phase 2. During phase one, holding down the right button for a second and releasing will reset the grid.

Solve the nonogram puzzle with the clues provided, and determine the transformations made on the grid to obtain a valid data matrix consisting of a generated 7-digit number.

Phase 1: Solving the Nonogram

  • There will be a 10×10 nonogram to solve.
  • Each numbered clue hints at the squares that must be filled in that row/column.
  • Each digit represents a set of adjacent squares that must be filled in that row/column.
  • When there are multiple digits in one clue, there needs to be multiple sets of squares that have unfilled squares between them.
  • You can switch between Fill mode and Flag mode (where the right button's LED on the top left is white, this mode is for flagging where the unfilled squares are).

Pressing the top left button will check the entire grid. If each clue in the row/column is satisfied, the background of the grid will fade to white, the clues will disappear, and the top left buttons’ texts will change to Reset and Clear respectively. This will progress to phase 2. All of the markings made before checking will also disappear.

However, if each clue in the row/column isn’t satisfied, the module will not progress, and will incur a strike.

Phase 2: Determining Transformations

To determine how the grid is transformed, convert all of the characters of the serial number into arrow directions by taking their alphabetic positions (A1Z26) of all of the letters, and taking the numbers as themselves, then taking them modulo 6, +1 (1 is up, 6 is up-left).

Start at the center of the hexagonal grid. Perform all moves of all directions from left to right (moving wraps around the hexagonal grid), applying the transformation given on the hexagonal grid using the table below.

FQ FG S N R SR SC

If the instruction involves quadrants, split the entire grid into 4 5×5 grids (they will be numbered in reading order), then take the alphabetic position or number of the Nth character of the serial number (where N is current instruction position), modulo 4 + 1. This is Quadrant A. Then take the right of the Nth character of the serial number wrapped around, modulo 4 + 1. This is Quadrant B. If both quadrant indexes are the same, add one to Quadrant B before moduloing again.

FQFlip Quadrant A vertically if the alphabetic position of the Nth letter or number of the serial number is even, otherwise horizontally.
FGFlip the grid vertically if the alphabetic position of the Nth letter or number of the serial number is even, otherwise horizontal.
SSwap Quadrant A with Quadrant B.
NDo nothing to the grid/quadrant.
RRotate the quadrants clockwise if the alphabetic position of the Nth letter or number of the serial number is even, otherwise counterclockwise.
SRShift the rows up by one if the alphabetic position of the Nth letter or number of the serial number is even, otherwise down by one.
SCShift the columns right by one if the alphabetic position of the Nth letter or number of the serial number is even, otherwise left by one.

Once you apply all transformations, scan the data matrix to obtain a 7-digit number. This will be the number you need to submit to the module.

Using the keyboard or keypad, type in the 7-digit number. Press backspace on the keyboard to clear submission. Once all 7 digits have been inputted, the module will start ringing. The module is solved if the correct number and data matrix has been validated. Otherwise, a strike will incur and the module will reset the grid back to its previous state.

APPENDIX D4T4M4TR1X:

A Data Matrix is a two-dimensional code consisting of black and white cells arranged in a square pattern. An example of a 7-digit number encoded into a data matrix is shown below.