On the Subject of >:3

oh no he evil now

Module accepts the input when LEDs turn red. Type in the emoticon that obeys the rules below, then press RETURN.

The "number" in the rules refers to the number, that starts at 0 and refers to current point count (the bottom-left black rectangle on SVG).

The module solves after pressing RETURN when your point count is not less than required points.

The rules use values A, B, C, D. To find those, refer to the second page.

Only the topmost rule of value should be applied.

Rules:

  • If number is divisible by:
    • A², start with <,
    • A, start with >,
    • else, start with nothing.
  • If number is divisible by:
    • B², add X,
    • B, add ;,
    • else, add :.
  • If number is divisible by:
    • C³+C², add ),
    • C³, add >,
    • C²+C, add },
    • C², add |,
    • C, add ],
    • else, add 3.
  • If number is divisible by:
    • D², add C,
    • D, add c,
    • else, add nothing.
  • If number is divisible by A+B+C+D, insert O between eyes and smile,
  • If number is divisible by 67, put the character for eyes twice (in case of X, use xX).

Values:

Find base values and modify them later by these rules:

  • A is equal to sum of SN digits.
  • B is equal to number of batteries + number of battery holders.
  • C is equal to number of unlit indicators + 3 * number of lit indicators.
  • D is equal to number of port plates + sum of values of each port, using this table:
PortParallelSerialDVI-DPS/2Stereo RCARJ-45
Value246513
  • Modifications:
    • Always check those rules in order A, B, C, D.
    • If value is less than 3, set it to 3.
    • If value is equal to any previous values, set it to the smallest prime number that's greater than matching value. This rule may be repeated several times.

Pressing any button will double the waiting timer when LEDs aren't lit. If emoticon can be reversed (for example: >:] -> [:<), you may input reversed version of it to get extra points.