On the Subject of Valves
Xoooooooooooooooooooooooooor
- ⚫⚫⚪
- ⚫⚫⚫
- ⚪⚪⚫
- ⚪⚪⚪
- ⚫⚪⚪
- ⚪⚪⚪
- ⚪⚪⚫
- ⚪⚫⚫
- ⚪⚫⚪
- ⚫⚫⚪
- ⚪⚫⚫
- ⚫⚪⚪
- ⚪⚪⚫
- ⚪⚫⚫
- ⚫⚪⚪
- ⚪⚪⚪
- ⚫⚫⚪
- ⚫⚫⚫
- ⚪⚫⚫
- ⚫⚫⚫
- ⚫⚫⚪
- ⚪⚫⚪
- ⚫⚪⚪
- ⚪⚪⚪
- ⚪⚫⚪
- ⚪⚫⚫
- ⚪⚫⚪
- ⚫⚫⚪
- ⚪⚪⚫
- ⚫⚫⚫
- ⚪⚪⚪
- ⚪⚪⚫
- ⚫⚫⚫
- ⚪⚫⚪
- ⚫⚪⚫
- ⚫⚫⚪
-
Find the sum of serial# digits in the list on the left and let current# be this combination.
If the sum is 0, skip all steps and press down valves 1 and 3.
-
Take the first character of the serial#:
- Number ⇒ move up by that many steps.
- Letter ⇒ move down by A1Z26 % 10 steps.
Let the combination given by the new position be new#.
Compare current# and new# and look up the action in the table below.
| 0 matches | Move one more in the direction moved; and reuse this table. |
| 1 match | current# = ~new# |
| 2 matches | current# = new# |
| 3 matches | Go to step 3. |
Repeat this for all characters in the serial#.
- If the module’s knobs are silver: invert current#.
- Submit module# ^ current# by pushing down the resulting white valves.
| ^ | The xor operation. Using white as 1. |
| ~ | The bitwise negation. E.g. ~⚫⚪⚫= ⚪⚫⚪ |
| module# | The colours of the valves on the module. |