{"abstract":"The reject solenoid only sees the unloaded part for the single edge scan.","category":"PLC ladder logic scan cycles","checks":8,"contract":"Bit shift left (BSL) register tracking parts on a conveyor. On each rising edge of the encoder clock the bit at the far end (index length-1) moves to the unload bit, every bit moves one position toward the far end, and bit 0 loads the part-present sensor sampled on that same scan. The unload bit holds its value until the next shift. pulses is a list of [clock, sensor]; return [register string index 0 first, unload] per scan.","evaluation_group":"w2-plc-ladder-logic-scan-cycles-bsl-conveyor-tracking","failed_approach":"Clearing the unload bit whenever the clock is low still drops it between encoder pulses.","family":"w2-plc-ladder-logic-scan-cycles-bsl-conveyor-tracking-unload-hold","id":"FA-92131","implementations":{"attempt":{"sha256":"6c1aa6d679fe7c84e084d6299a8ca0ac472fc2159e123d6678587afc31916e7c","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(length, pulses):\n    bits = [0] * length\n    prev = False\n    unload = 0\n    out = []\n    for clock, sensor in pulses:\n        clock = bool(clock)\n        if not clock:\n            unload = 0\n        if clock and not prev:\n            unload = bits[length - 1]\n            bits = [1 if sensor else 0] + bits[:length - 1]\n        prev = clock\n        out.append([''.join(str(b) for b in bits), unload])\n    return out\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression: single stage',\n   [1, [[True, 1], [False, 0], [True, 0], [False, 1], [True, 1]]],\n   [['1', 0], ['1', 0], ['0', 1], ['0', 1], ['1', 0]]],\n  ['regression: scenario 4',\n   [1,\n    [[False, 1],\n     [False, 1],\n     [True, 0],\n     [False, 1],\n     [True, 1],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [False, 1],\n     [False, 1],\n     [True, 0],\n     [True, 0]]],\n   [['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['1', 0],\n    ['1', 0],\n    ['1', 0],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0]]],\n  ['control: three stage track',\n   [3, [[True, 1], [False, 0], [True, 0], [False, 0], [True, 1], [False, 0], [True, 0]]],\n   [['100', 0], ['100', 0], ['010', 0], ['010', 0], ['101', 0], ['101', 0], ['010', 1]]],\n  ['control: clock held high',\n   [2, [[True, 1], [True, 0], [True, 1], [False, 0], [True, 0]]],\n   [['10', 0], ['10', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: sensor changes on edge scan',\n   [3, [[False, 1], [True, 0], [False, 0], [True, 1], [False, 0]]],\n   [['000', 0], ['000', 0], ['000', 0], ['100', 0], ['100', 0]]],\n  ['control: scenario 1',\n   [6,\n    [[True, 0],\n     [True, 0],\n     [False, 1],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [False, 0],\n     [True, 1],\n     [False, 1],\n     [False, 1],\n     [False, 1],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [False, 0]]],\n   [['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['110000', 0],\n    ['110000', 0],\n    ['110000', 0],\n    ['110000', 0]]],\n  ['control: scenario 2',\n   [2, [[False, 0], [False, 0], [False, 0], [False, 0], [False, 1], [True, 1], [False, 0], [True, 0]]],\n   [['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: scenario 3',\n   [5,\n    [[True, 0],\n     [True, 1],\n     [False, 0],\n     [True, 1],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [True, 0],\n     [True, 1],\n     [True, 0]]],\n   [['00000', 0],\n    ['00000', 0],\n    ['00000', 0],\n    ['10000', 0],\n    ['10000', 0],\n    ['10000', 0],\n    ['01000', 0],\n    ['01000', 0],\n    ['01000', 0],\n    ['01000', 0],\n    ['01000', 0]]]],\n [['regression: scenario 3',\n   [1,\n    [[False, 1],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [True, 1],\n     [False, 1],\n     [False, 0],\n     [False, 1],\n     [True, 1],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [True, 1],\n     [False, 0]]],\n   [['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['1', 0],\n    ['1', 0],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['1', 0],\n    ['1', 0]]],\n  ['regression: scenario 11',\n   [1, [[True, 1], [False, 1], [False, 1], [True, 0], [False, 1], [False, 0], [False, 0], [True, 0]]],\n   [['1', 0], ['1', 0], ['1', 0], ['0', 1], ['0', 1], ['0', 1], ['0', 1], ['0', 0]]],\n  ['control: three stage track',\n   [3, [[True, 1], [False, 0], [True, 0], [False, 0], [True, 1], [False, 0], [True, 0]]],\n   [['100', 0], ['100', 0], ['010', 0], ['010', 0], ['101', 0], ['101', 0], ['010', 1]]],\n  ['regression: single stage',\n   [1, [[True, 1], [False, 0], [True, 0], [False, 1], [True, 1]]],\n   [['1', 0], ['1', 0], ['0', 1], ['0', 1], ['1', 0]]],\n  ['control: clock held high',\n   [2, [[True, 1], [True, 0], [True, 1], [False, 0], [True, 0]]],\n   [['10', 0], ['10', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: sensor changes on edge scan',\n   [3, [[False, 1], [True, 0], [False, 0], [True, 1], [False, 0]]],\n   [['000', 0], ['000', 0], ['000', 0], ['100', 0], ['100', 0]]],\n  ['control: scenario 1',\n   [2,\n    [[False, 1],\n     [False, 0],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [True, 0],\n     [True, 0],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [False, 1]]],\n   [['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0]]],\n  ['control: scenario 2',\n   [2,\n    [[True, 0], [False, 1], [False, 1], [True, 0], [False, 1], [False, 0], [True, 0], [False, 1], [True, 0]]],\n   [['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0]]]],\n [['regression: scenario 9',\n   [2,\n    [[False, 0],\n     [False, 0],\n     [False, 1],\n     [True, 1],\n     [True, 1],\n     [False, 1],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [False, 1],\n     [True, 0],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [False, 0]]],\n   [['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['11', 0],\n    ['11', 0],\n    ['11', 0],\n    ['11', 0],\n    ['01', 1],\n    ['01', 1],\n    ['01', 1],\n    ['01', 1],\n    ['01', 1]]],\n  ['regression: scenario 13',\n   [1,\n    [[True, 1],\n     [True, 1],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [False, 0],\n     [False, 1],\n     [True, 0]]],\n   [['1', 0], ['1', 0], ['1', 0], ['0', 1], ['0', 1], ['0', 1], ['0', 1], ['0', 1], ['0', 1], ['0', 0]]],\n  ['control: three stage track',\n   [3, [[True, 1], [False, 0], [True, 0], [False, 0], [True, 1], [False, 0], [True, 0]]],\n   [['100', 0], ['100', 0], ['010', 0], ['010', 0], ['101', 0], ['101', 0], ['010', 1]]],\n  ['regression: single stage',\n   [1, [[True, 1], [False, 0], [True, 0], [False, 1], [True, 1]]],\n   [['1', 0], ['1', 0], ['0', 1], ['0', 1], ['1', 0]]],\n  ['control: clock held high',\n   [2, [[True, 1], [True, 0], [True, 1], [False, 0], [True, 0]]],\n   [['10', 0], ['10', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: sensor changes on edge scan',\n   [3, [[False, 1], [True, 0], [False, 0], [True, 1], [False, 0]]],\n   [['000', 0], ['000', 0], ['000', 0], ['100', 0], ['100', 0]]],\n  ['control: scenario 1',\n   [4,\n    [[False, 0],\n     [False, 1],\n     [True, 1],\n     [True, 1],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [True, 1],\n     [True, 1]]],\n   [['0000', 0],\n    ['0000', 0],\n    ['1000', 0],\n    ['1000', 0],\n    ['1000', 0],\n    ['1000', 0],\n    ['1000', 0],\n    ['1100', 0],\n    ['1100', 0],\n    ['1100', 0],\n    ['1110', 0],\n    ['1110', 0]]],\n  ['regression: scenario 2',\n   [1,\n    [[True, 0],\n     [False, 0],\n     [False, 1],\n     [True, 1],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 1],\n     [True, 1],\n     [True, 1],\n     [False, 1],\n     [True, 0]]],\n   [['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['1', 0],\n    ['1', 0],\n    ['1', 0],\n    ['1', 1],\n    ['1', 1],\n    ['1', 1],\n    ['1', 1],\n    ['1', 1],\n    ['0', 1]]]],\n [['regression: scenario 26',\n   [1,\n    [[False, 1],\n     [False, 1],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [True, 0],\n     [False, 0],\n     [False, 0]]],\n   [['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['1', 0],\n    ['1', 0],\n    ['1', 0],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1]]],\n  ['regression: scenario 29',\n   [2,\n    [[False, 0],\n     [False, 1],\n     [False, 1],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [True, 0],\n     [False, 1],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [False, 0],\n     [False, 1],\n     [False, 0]]],\n   [['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['01', 0],\n    ['01', 0],\n    ['00', 1],\n    ['00', 1],\n    ['00', 1],\n    ['00', 1],\n    ['00', 1],\n    ['00', 1]]],\n  ['control: three stage track',\n   [3, [[True, 1], [False, 0], [True, 0], [False, 0], [True, 1], [False, 0], [True, 0]]],\n   [['100', 0], ['100', 0], ['010', 0], ['010', 0], ['101', 0], ['101', 0], ['010', 1]]],\n  ['regression: single stage',\n   [1, [[True, 1], [False, 0], [True, 0], [False, 1], [True, 1]]],\n   [['1', 0], ['1', 0], ['0', 1], ['0', 1], ['1', 0]]],\n  ['control: clock held high',\n   [2, [[True, 1], [True, 0], [True, 1], [False, 0], [True, 0]]],\n   [['10', 0], ['10', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: sensor changes on edge scan',\n   [3, [[False, 1], [True, 0], [False, 0], [True, 1], [False, 0]]],\n   [['000', 0], ['000', 0], ['000', 0], ['100', 0], ['100', 0]]],\n  ['control: scenario 1',\n   [2, [[True, 0], [False, 1], [True, 0], [False, 0], [False, 1], [False, 1], [True, 1], [True, 1]]],\n   [['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['10', 0], ['10', 0]]],\n  ['control: scenario 2',\n   [3,\n    [[True, 0],\n     [False, 1],\n     [False, 0],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [False, 1],\n     [False, 1],\n     [True, 0],\n     [False, 0],\n     [True, 1]]],\n   [['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['010', 0],\n    ['010', 0],\n    ['101', 0]]]],\n [['regression: scenario 11',\n   [3,\n    [[False, 0],\n     [True, 1],\n     [True, 1],\n     [True, 0],\n     [True, 1],\n     [True, 0],\n     [True, 1],\n     [True, 1],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [True, 1],\n     [False, 1],\n     [True, 1],\n     [True, 0]]],\n   [['000', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['010', 0],\n    ['010', 0],\n    ['010', 0],\n    ['101', 0],\n    ['101', 0],\n    ['110', 1],\n    ['110', 1]]],\n  ['regression: scenario 14',\n   [1,\n    [[False, 1],\n     [True, 1],\n     [False, 1],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [True, 1],\n     [False, 1]]],\n   [['0', 0],\n    ['1', 0],\n    ['1', 0],\n    ['1', 1],\n    ['1', 1],\n    ['1', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['1', 0],\n    ['1', 0],\n    ['1', 0],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1]]],\n  ['control: three stage track',\n   [3, [[True, 1], [False, 0], [True, 0], [False, 0], [True, 1], [False, 0], [True, 0]]],\n   [['100', 0], ['100', 0], ['010', 0], ['010', 0], ['101', 0], ['101', 0], ['010', 1]]],\n  ['regression: single stage',\n   [1, [[True, 1], [False, 0], [True, 0], [False, 1], [True, 1]]],\n   [['1', 0], ['1', 0], ['0', 1], ['0', 1], ['1', 0]]],\n  ['control: clock held high',\n   [2, [[True, 1], [True, 0], [True, 1], [False, 0], [True, 0]]],\n   [['10', 0], ['10', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: sensor changes on edge scan',\n   [3, [[False, 1], [True, 0], [False, 0], [True, 1], [False, 0]]],\n   [['000', 0], ['000', 0], ['000', 0], ['100', 0], ['100', 0]]],\n  ['regression: scenario 1',\n   [3,\n    [[False, 0],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [True, 1],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [False, 1],\n     [False, 1],\n     [True, 0]]],\n   [['000', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['010', 0],\n    ['010', 0],\n    ['010', 0],\n    ['101', 0],\n    ['101', 0],\n    ['010', 1],\n    ['010', 1],\n    ['010', 1],\n    ['010', 1],\n    ['001', 0]]],\n  ['control: scenario 2',\n   [6,\n    [[True, 0],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [False, 1],\n     [False, 0],\n     [True, 0],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [True, 1],\n     [False, 0]]],\n   [['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0]]]]]\nfor label, args, expected in fixtures[N-1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"82c8186809d55dc9cff8be21c1e430cf132f52fe6084c6cac162d4777518bfbe","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(length, pulses):\n    bits = [0] * length\n    prev = False\n    unload = 0\n    out = []\n    for clock, sensor in pulses:\n        clock = bool(clock)\n        unload = 0\n        if clock and not prev:\n            unload = bits[length - 1]\n            bits = [1 if sensor else 0] + bits[:length - 1]\n        prev = clock\n        out.append([''.join(str(b) for b in bits), unload])\n    return out\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression: single stage',\n   [1, [[True, 1], [False, 0], [True, 0], [False, 1], [True, 1]]],\n   [['1', 0], ['1', 0], ['0', 1], ['0', 1], ['1', 0]]],\n  ['regression: scenario 4',\n   [1,\n    [[False, 1],\n     [False, 1],\n     [True, 0],\n     [False, 1],\n     [True, 1],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [False, 1],\n     [False, 1],\n     [True, 0],\n     [True, 0]]],\n   [['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['1', 0],\n    ['1', 0],\n    ['1', 0],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0]]],\n  ['control: three stage track',\n   [3, [[True, 1], [False, 0], [True, 0], [False, 0], [True, 1], [False, 0], [True, 0]]],\n   [['100', 0], ['100', 0], ['010', 0], ['010', 0], ['101', 0], ['101', 0], ['010', 1]]],\n  ['control: clock held high',\n   [2, [[True, 1], [True, 0], [True, 1], [False, 0], [True, 0]]],\n   [['10', 0], ['10', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: sensor changes on edge scan',\n   [3, [[False, 1], [True, 0], [False, 0], [True, 1], [False, 0]]],\n   [['000', 0], ['000', 0], ['000', 0], ['100', 0], ['100', 0]]],\n  ['control: scenario 1',\n   [6,\n    [[True, 0],\n     [True, 0],\n     [False, 1],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [False, 0],\n     [True, 1],\n     [False, 1],\n     [False, 1],\n     [False, 1],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [False, 0]]],\n   [['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['110000', 0],\n    ['110000', 0],\n    ['110000', 0],\n    ['110000', 0]]],\n  ['control: scenario 2',\n   [2, [[False, 0], [False, 0], [False, 0], [False, 0], [False, 1], [True, 1], [False, 0], [True, 0]]],\n   [['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: scenario 3',\n   [5,\n    [[True, 0],\n     [True, 1],\n     [False, 0],\n     [True, 1],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [True, 0],\n     [True, 1],\n     [True, 0]]],\n   [['00000', 0],\n    ['00000', 0],\n    ['00000', 0],\n    ['10000', 0],\n    ['10000', 0],\n    ['10000', 0],\n    ['01000', 0],\n    ['01000', 0],\n    ['01000', 0],\n    ['01000', 0],\n    ['01000', 0]]]],\n [['regression: scenario 3',\n   [1,\n    [[False, 1],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [True, 1],\n     [False, 1],\n     [False, 0],\n     [False, 1],\n     [True, 1],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [True, 1],\n     [False, 0]]],\n   [['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['1', 0],\n    ['1', 0],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['1', 0],\n    ['1', 0]]],\n  ['regression: scenario 11',\n   [1, [[True, 1], [False, 1], [False, 1], [True, 0], [False, 1], [False, 0], [False, 0], [True, 0]]],\n   [['1', 0], ['1', 0], ['1', 0], ['0', 1], ['0', 1], ['0', 1], ['0', 1], ['0', 0]]],\n  ['control: three stage track',\n   [3, [[True, 1], [False, 0], [True, 0], [False, 0], [True, 1], [False, 0], [True, 0]]],\n   [['100', 0], ['100', 0], ['010', 0], ['010', 0], ['101', 0], ['101', 0], ['010', 1]]],\n  ['regression: single stage',\n   [1, [[True, 1], [False, 0], [True, 0], [False, 1], [True, 1]]],\n   [['1', 0], ['1', 0], ['0', 1], ['0', 1], ['1', 0]]],\n  ['control: clock held high',\n   [2, [[True, 1], [True, 0], [True, 1], [False, 0], [True, 0]]],\n   [['10', 0], ['10', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: sensor changes on edge scan',\n   [3, [[False, 1], [True, 0], [False, 0], [True, 1], [False, 0]]],\n   [['000', 0], ['000', 0], ['000', 0], ['100', 0], ['100', 0]]],\n  ['control: scenario 1',\n   [2,\n    [[False, 1],\n     [False, 0],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [True, 0],\n     [True, 0],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [False, 1]]],\n   [['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0]]],\n  ['control: scenario 2',\n   [2,\n    [[True, 0], [False, 1], [False, 1], [True, 0], [False, 1], [False, 0], [True, 0], [False, 1], [True, 0]]],\n   [['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0]]]],\n [['regression: scenario 9',\n   [2,\n    [[False, 0],\n     [False, 0],\n     [False, 1],\n     [True, 1],\n     [True, 1],\n     [False, 1],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [False, 1],\n     [True, 0],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [False, 0]]],\n   [['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['11', 0],\n    ['11', 0],\n    ['11', 0],\n    ['11', 0],\n    ['01', 1],\n    ['01', 1],\n    ['01', 1],\n    ['01', 1],\n    ['01', 1]]],\n  ['regression: scenario 13',\n   [1,\n    [[True, 1],\n     [True, 1],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [False, 0],\n     [False, 1],\n     [True, 0]]],\n   [['1', 0], ['1', 0], ['1', 0], ['0', 1], ['0', 1], ['0', 1], ['0', 1], ['0', 1], ['0', 1], ['0', 0]]],\n  ['control: three stage track',\n   [3, [[True, 1], [False, 0], [True, 0], [False, 0], [True, 1], [False, 0], [True, 0]]],\n   [['100', 0], ['100', 0], ['010', 0], ['010', 0], ['101', 0], ['101', 0], ['010', 1]]],\n  ['regression: single stage',\n   [1, [[True, 1], [False, 0], [True, 0], [False, 1], [True, 1]]],\n   [['1', 0], ['1', 0], ['0', 1], ['0', 1], ['1', 0]]],\n  ['control: clock held high',\n   [2, [[True, 1], [True, 0], [True, 1], [False, 0], [True, 0]]],\n   [['10', 0], ['10', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: sensor changes on edge scan',\n   [3, [[False, 1], [True, 0], [False, 0], [True, 1], [False, 0]]],\n   [['000', 0], ['000', 0], ['000', 0], ['100', 0], ['100', 0]]],\n  ['control: scenario 1',\n   [4,\n    [[False, 0],\n     [False, 1],\n     [True, 1],\n     [True, 1],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [True, 1],\n     [True, 1]]],\n   [['0000', 0],\n    ['0000', 0],\n    ['1000', 0],\n    ['1000', 0],\n    ['1000', 0],\n    ['1000', 0],\n    ['1000', 0],\n    ['1100', 0],\n    ['1100', 0],\n    ['1100', 0],\n    ['1110', 0],\n    ['1110', 0]]],\n  ['regression: scenario 2',\n   [1,\n    [[True, 0],\n     [False, 0],\n     [False, 1],\n     [True, 1],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 1],\n     [True, 1],\n     [True, 1],\n     [False, 1],\n     [True, 0]]],\n   [['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['1', 0],\n    ['1', 0],\n    ['1', 0],\n    ['1', 1],\n    ['1', 1],\n    ['1', 1],\n    ['1', 1],\n    ['1', 1],\n    ['0', 1]]]],\n [['regression: scenario 26',\n   [1,\n    [[False, 1],\n     [False, 1],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [True, 0],\n     [False, 0],\n     [False, 0]]],\n   [['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['1', 0],\n    ['1', 0],\n    ['1', 0],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1]]],\n  ['regression: scenario 29',\n   [2,\n    [[False, 0],\n     [False, 1],\n     [False, 1],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [True, 0],\n     [False, 1],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [False, 0],\n     [False, 1],\n     [False, 0]]],\n   [['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['01', 0],\n    ['01', 0],\n    ['00', 1],\n    ['00', 1],\n    ['00', 1],\n    ['00', 1],\n    ['00', 1],\n    ['00', 1]]],\n  ['control: three stage track',\n   [3, [[True, 1], [False, 0], [True, 0], [False, 0], [True, 1], [False, 0], [True, 0]]],\n   [['100', 0], ['100', 0], ['010', 0], ['010', 0], ['101', 0], ['101', 0], ['010', 1]]],\n  ['regression: single stage',\n   [1, [[True, 1], [False, 0], [True, 0], [False, 1], [True, 1]]],\n   [['1', 0], ['1', 0], ['0', 1], ['0', 1], ['1', 0]]],\n  ['control: clock held high',\n   [2, [[True, 1], [True, 0], [True, 1], [False, 0], [True, 0]]],\n   [['10', 0], ['10', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: sensor changes on edge scan',\n   [3, [[False, 1], [True, 0], [False, 0], [True, 1], [False, 0]]],\n   [['000', 0], ['000', 0], ['000', 0], ['100', 0], ['100', 0]]],\n  ['control: scenario 1',\n   [2, [[True, 0], [False, 1], [True, 0], [False, 0], [False, 1], [False, 1], [True, 1], [True, 1]]],\n   [['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['10', 0], ['10', 0]]],\n  ['control: scenario 2',\n   [3,\n    [[True, 0],\n     [False, 1],\n     [False, 0],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [False, 1],\n     [False, 1],\n     [True, 0],\n     [False, 0],\n     [True, 1]]],\n   [['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['010', 0],\n    ['010', 0],\n    ['101', 0]]]],\n [['regression: scenario 11',\n   [3,\n    [[False, 0],\n     [True, 1],\n     [True, 1],\n     [True, 0],\n     [True, 1],\n     [True, 0],\n     [True, 1],\n     [True, 1],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [True, 1],\n     [False, 1],\n     [True, 1],\n     [True, 0]]],\n   [['000', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['010', 0],\n    ['010', 0],\n    ['010', 0],\n    ['101', 0],\n    ['101', 0],\n    ['110', 1],\n    ['110', 1]]],\n  ['regression: scenario 14',\n   [1,\n    [[False, 1],\n     [True, 1],\n     [False, 1],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [True, 1],\n     [False, 1]]],\n   [['0', 0],\n    ['1', 0],\n    ['1', 0],\n    ['1', 1],\n    ['1', 1],\n    ['1', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['1', 0],\n    ['1', 0],\n    ['1', 0],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1]]],\n  ['control: three stage track',\n   [3, [[True, 1], [False, 0], [True, 0], [False, 0], [True, 1], [False, 0], [True, 0]]],\n   [['100', 0], ['100', 0], ['010', 0], ['010', 0], ['101', 0], ['101', 0], ['010', 1]]],\n  ['regression: single stage',\n   [1, [[True, 1], [False, 0], [True, 0], [False, 1], [True, 1]]],\n   [['1', 0], ['1', 0], ['0', 1], ['0', 1], ['1', 0]]],\n  ['control: clock held high',\n   [2, [[True, 1], [True, 0], [True, 1], [False, 0], [True, 0]]],\n   [['10', 0], ['10', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: sensor changes on edge scan',\n   [3, [[False, 1], [True, 0], [False, 0], [True, 1], [False, 0]]],\n   [['000', 0], ['000', 0], ['000', 0], ['100', 0], ['100', 0]]],\n  ['regression: scenario 1',\n   [3,\n    [[False, 0],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [True, 1],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [False, 1],\n     [False, 1],\n     [True, 0]]],\n   [['000', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['010', 0],\n    ['010', 0],\n    ['010', 0],\n    ['101', 0],\n    ['101', 0],\n    ['010', 1],\n    ['010', 1],\n    ['010', 1],\n    ['010', 1],\n    ['001', 0]]],\n  ['control: scenario 2',\n   [6,\n    [[True, 0],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [False, 1],\n     [False, 0],\n     [True, 0],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [True, 1],\n     [False, 0]]],\n   [['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0]]]]]\nfor label, args, expected in fixtures[N-1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"fixed":{"sha256":"38392b37778342e926280411151ce9d9e08e99dea0f3244350a0854e4e42d846","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(length, pulses):\n    bits = [0] * length\n    prev = False\n    unload = 0\n    out = []\n    for clock, sensor in pulses:\n        clock = bool(clock)\n        if clock and not prev:\n            unload = bits[length - 1]\n            bits = [1 if sensor else 0] + bits[:length - 1]\n        prev = clock\n        out.append([''.join(str(b) for b in bits), unload])\n    return out\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression: single stage',\n   [1, [[True, 1], [False, 0], [True, 0], [False, 1], [True, 1]]],\n   [['1', 0], ['1', 0], ['0', 1], ['0', 1], ['1', 0]]],\n  ['regression: scenario 4',\n   [1,\n    [[False, 1],\n     [False, 1],\n     [True, 0],\n     [False, 1],\n     [True, 1],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [False, 1],\n     [False, 1],\n     [True, 0],\n     [True, 0]]],\n   [['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['1', 0],\n    ['1', 0],\n    ['1', 0],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0]]],\n  ['control: three stage track',\n   [3, [[True, 1], [False, 0], [True, 0], [False, 0], [True, 1], [False, 0], [True, 0]]],\n   [['100', 0], ['100', 0], ['010', 0], ['010', 0], ['101', 0], ['101', 0], ['010', 1]]],\n  ['control: clock held high',\n   [2, [[True, 1], [True, 0], [True, 1], [False, 0], [True, 0]]],\n   [['10', 0], ['10', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: sensor changes on edge scan',\n   [3, [[False, 1], [True, 0], [False, 0], [True, 1], [False, 0]]],\n   [['000', 0], ['000', 0], ['000', 0], ['100', 0], ['100', 0]]],\n  ['control: scenario 1',\n   [6,\n    [[True, 0],\n     [True, 0],\n     [False, 1],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [False, 0],\n     [True, 1],\n     [False, 1],\n     [False, 1],\n     [False, 1],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [False, 0]]],\n   [['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['110000', 0],\n    ['110000', 0],\n    ['110000', 0],\n    ['110000', 0]]],\n  ['control: scenario 2',\n   [2, [[False, 0], [False, 0], [False, 0], [False, 0], [False, 1], [True, 1], [False, 0], [True, 0]]],\n   [['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: scenario 3',\n   [5,\n    [[True, 0],\n     [True, 1],\n     [False, 0],\n     [True, 1],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [True, 0],\n     [True, 1],\n     [True, 0]]],\n   [['00000', 0],\n    ['00000', 0],\n    ['00000', 0],\n    ['10000', 0],\n    ['10000', 0],\n    ['10000', 0],\n    ['01000', 0],\n    ['01000', 0],\n    ['01000', 0],\n    ['01000', 0],\n    ['01000', 0]]]],\n [['regression: scenario 3',\n   [1,\n    [[False, 1],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [True, 1],\n     [False, 1],\n     [False, 0],\n     [False, 1],\n     [True, 1],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [True, 1],\n     [False, 0]]],\n   [['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['1', 0],\n    ['1', 0],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['1', 0],\n    ['1', 0]]],\n  ['regression: scenario 11',\n   [1, [[True, 1], [False, 1], [False, 1], [True, 0], [False, 1], [False, 0], [False, 0], [True, 0]]],\n   [['1', 0], ['1', 0], ['1', 0], ['0', 1], ['0', 1], ['0', 1], ['0', 1], ['0', 0]]],\n  ['control: three stage track',\n   [3, [[True, 1], [False, 0], [True, 0], [False, 0], [True, 1], [False, 0], [True, 0]]],\n   [['100', 0], ['100', 0], ['010', 0], ['010', 0], ['101', 0], ['101', 0], ['010', 1]]],\n  ['regression: single stage',\n   [1, [[True, 1], [False, 0], [True, 0], [False, 1], [True, 1]]],\n   [['1', 0], ['1', 0], ['0', 1], ['0', 1], ['1', 0]]],\n  ['control: clock held high',\n   [2, [[True, 1], [True, 0], [True, 1], [False, 0], [True, 0]]],\n   [['10', 0], ['10', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: sensor changes on edge scan',\n   [3, [[False, 1], [True, 0], [False, 0], [True, 1], [False, 0]]],\n   [['000', 0], ['000', 0], ['000', 0], ['100', 0], ['100', 0]]],\n  ['control: scenario 1',\n   [2,\n    [[False, 1],\n     [False, 0],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [True, 0],\n     [True, 0],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [False, 1]]],\n   [['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0]]],\n  ['control: scenario 2',\n   [2,\n    [[True, 0], [False, 1], [False, 1], [True, 0], [False, 1], [False, 0], [True, 0], [False, 1], [True, 0]]],\n   [['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0]]]],\n [['regression: scenario 9',\n   [2,\n    [[False, 0],\n     [False, 0],\n     [False, 1],\n     [True, 1],\n     [True, 1],\n     [False, 1],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [False, 1],\n     [True, 0],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [False, 0]]],\n   [['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['11', 0],\n    ['11', 0],\n    ['11', 0],\n    ['11', 0],\n    ['01', 1],\n    ['01', 1],\n    ['01', 1],\n    ['01', 1],\n    ['01', 1]]],\n  ['regression: scenario 13',\n   [1,\n    [[True, 1],\n     [True, 1],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [False, 0],\n     [False, 1],\n     [True, 0]]],\n   [['1', 0], ['1', 0], ['1', 0], ['0', 1], ['0', 1], ['0', 1], ['0', 1], ['0', 1], ['0', 1], ['0', 0]]],\n  ['control: three stage track',\n   [3, [[True, 1], [False, 0], [True, 0], [False, 0], [True, 1], [False, 0], [True, 0]]],\n   [['100', 0], ['100', 0], ['010', 0], ['010', 0], ['101', 0], ['101', 0], ['010', 1]]],\n  ['regression: single stage',\n   [1, [[True, 1], [False, 0], [True, 0], [False, 1], [True, 1]]],\n   [['1', 0], ['1', 0], ['0', 1], ['0', 1], ['1', 0]]],\n  ['control: clock held high',\n   [2, [[True, 1], [True, 0], [True, 1], [False, 0], [True, 0]]],\n   [['10', 0], ['10', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: sensor changes on edge scan',\n   [3, [[False, 1], [True, 0], [False, 0], [True, 1], [False, 0]]],\n   [['000', 0], ['000', 0], ['000', 0], ['100', 0], ['100', 0]]],\n  ['control: scenario 1',\n   [4,\n    [[False, 0],\n     [False, 1],\n     [True, 1],\n     [True, 1],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [True, 1],\n     [True, 1]]],\n   [['0000', 0],\n    ['0000', 0],\n    ['1000', 0],\n    ['1000', 0],\n    ['1000', 0],\n    ['1000', 0],\n    ['1000', 0],\n    ['1100', 0],\n    ['1100', 0],\n    ['1100', 0],\n    ['1110', 0],\n    ['1110', 0]]],\n  ['regression: scenario 2',\n   [1,\n    [[True, 0],\n     [False, 0],\n     [False, 1],\n     [True, 1],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 1],\n     [True, 1],\n     [True, 1],\n     [False, 1],\n     [True, 0]]],\n   [['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['1', 0],\n    ['1', 0],\n    ['1', 0],\n    ['1', 1],\n    ['1', 1],\n    ['1', 1],\n    ['1', 1],\n    ['1', 1],\n    ['0', 1]]]],\n [['regression: scenario 26',\n   [1,\n    [[False, 1],\n     [False, 1],\n     [False, 0],\n     [True, 0],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [True, 0],\n     [False, 0],\n     [False, 0]]],\n   [['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['0', 0],\n    ['1', 0],\n    ['1', 0],\n    ['1', 0],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1]]],\n  ['regression: scenario 29',\n   [2,\n    [[False, 0],\n     [False, 1],\n     [False, 1],\n     [True, 1],\n     [True, 0],\n     [False, 1],\n     [True, 0],\n     [False, 1],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [False, 0],\n     [False, 1],\n     [False, 0]]],\n   [['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['01', 0],\n    ['01', 0],\n    ['00', 1],\n    ['00', 1],\n    ['00', 1],\n    ['00', 1],\n    ['00', 1],\n    ['00', 1]]],\n  ['control: three stage track',\n   [3, [[True, 1], [False, 0], [True, 0], [False, 0], [True, 1], [False, 0], [True, 0]]],\n   [['100', 0], ['100', 0], ['010', 0], ['010', 0], ['101', 0], ['101', 0], ['010', 1]]],\n  ['regression: single stage',\n   [1, [[True, 1], [False, 0], [True, 0], [False, 1], [True, 1]]],\n   [['1', 0], ['1', 0], ['0', 1], ['0', 1], ['1', 0]]],\n  ['control: clock held high',\n   [2, [[True, 1], [True, 0], [True, 1], [False, 0], [True, 0]]],\n   [['10', 0], ['10', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: sensor changes on edge scan',\n   [3, [[False, 1], [True, 0], [False, 0], [True, 1], [False, 0]]],\n   [['000', 0], ['000', 0], ['000', 0], ['100', 0], ['100', 0]]],\n  ['control: scenario 1',\n   [2, [[True, 0], [False, 1], [True, 0], [False, 0], [False, 1], [False, 1], [True, 1], [True, 1]]],\n   [['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['00', 0], ['10', 0], ['10', 0]]],\n  ['control: scenario 2',\n   [3,\n    [[True, 0],\n     [False, 1],\n     [False, 0],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [False, 1],\n     [False, 1],\n     [True, 0],\n     [False, 0],\n     [True, 1]]],\n   [['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['000', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['010', 0],\n    ['010', 0],\n    ['101', 0]]]],\n [['regression: scenario 11',\n   [3,\n    [[False, 0],\n     [True, 1],\n     [True, 1],\n     [True, 0],\n     [True, 1],\n     [True, 0],\n     [True, 1],\n     [True, 1],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [True, 1],\n     [False, 1],\n     [True, 1],\n     [True, 0]]],\n   [['000', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['010', 0],\n    ['010', 0],\n    ['010', 0],\n    ['101', 0],\n    ['101', 0],\n    ['110', 1],\n    ['110', 1]]],\n  ['regression: scenario 14',\n   [1,\n    [[False, 1],\n     [True, 1],\n     [False, 1],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [True, 1],\n     [False, 1]]],\n   [['0', 0],\n    ['1', 0],\n    ['1', 0],\n    ['1', 1],\n    ['1', 1],\n    ['1', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['1', 0],\n    ['1', 0],\n    ['1', 0],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1]]],\n  ['control: three stage track',\n   [3, [[True, 1], [False, 0], [True, 0], [False, 0], [True, 1], [False, 0], [True, 0]]],\n   [['100', 0], ['100', 0], ['010', 0], ['010', 0], ['101', 0], ['101', 0], ['010', 1]]],\n  ['regression: single stage',\n   [1, [[True, 1], [False, 0], [True, 0], [False, 1], [True, 1]]],\n   [['1', 0], ['1', 0], ['0', 1], ['0', 1], ['1', 0]]],\n  ['control: clock held high',\n   [2, [[True, 1], [True, 0], [True, 1], [False, 0], [True, 0]]],\n   [['10', 0], ['10', 0], ['10', 0], ['10', 0], ['01', 0]]],\n  ['control: sensor changes on edge scan',\n   [3, [[False, 1], [True, 0], [False, 0], [True, 1], [False, 0]]],\n   [['000', 0], ['000', 0], ['000', 0], ['100', 0], ['100', 0]]],\n  ['regression: scenario 1',\n   [3,\n    [[False, 0],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [False, 0],\n     [True, 1],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [False, 1],\n     [False, 1],\n     [True, 0]]],\n   [['000', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['100', 0],\n    ['010', 0],\n    ['010', 0],\n    ['010', 0],\n    ['101', 0],\n    ['101', 0],\n    ['010', 1],\n    ['010', 1],\n    ['010', 1],\n    ['010', 1],\n    ['001', 0]]],\n  ['control: scenario 2',\n   [6,\n    [[True, 0],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [False, 1],\n     [False, 0],\n     [True, 0],\n     [False, 1],\n     [True, 0],\n     [True, 1],\n     [True, 1],\n     [False, 0]]],\n   [['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0],\n    ['000000', 0]]]]]\nfor label, args, expected in fixtures[N-1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":"A deterministic bounded teaching model of one PLC instruction or rung pattern evaluated scan by scan. The stated contract is a stipulated toy convention, not a claim of conformance to any vendor controller or IEC 61131-3 runtime. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"w2-plc-ladder-logic-scan-cycles-bsl-conveyor-tracking-unload-hold","generated_at":"2026-09-29T14:51:42.927438+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Ladder programs are executed as repeated scans; each defect here changes what a rung, timer, counter or data-table instruction reports on a particular scan, which is how commissioning and field faults are actually observed.","repair":"Hold the unload bit until the next shift overwrites it.","root_cause":"The unload bit is zeroed at the top of every scan.","sha256":"ecbb0bb6c0b12f973e10ef15dd869c7841fdf7a8a00d24d9ebdb4831f66c5a22","title":"Shift register unload bit is cleared between shifts · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":43.911,"exit_code":1,"observations":[{"actual":[["1",0],["1",0],["0",1],["0",0],["1",0]],"check":"regression: single stage","expected":[["1",0],["1",0],["0",1],["0",1],["1",0]],"passed":false},{"actual":[["0",0],["0",0],["0",0],["0",0],["1",0],["1",0],["1",0],["0",1],["0",1],["0",0],["0",0],["0",0],["0",0],["0",0],["0",0],["0",0]],"check":"regression: scenario 4","expected":[["0",0],["0",0],["0",0],["0",0],["1",0],["1",0],["1",0],["0",1],["0",1],["0",1],["0",1],["0",0],["0",0],["0",0],["0",0],["0",0]],"passed":false},{"actual":[["100",0],["100",0],["010",0],["010",0],["101",0],["101",0],["010",1]],"check":"control: three stage track","expected":[["100",0],["100",0],["010",0],["010",0],["101",0],["101",0],["010",1]],"passed":true},{"actual":[["10",0],["10",0],["10",0],["10",0],["01",0]],"check":"control: clock held high","expected":[["10",0],["10",0],["10",0],["10",0],["01",0]],"passed":true},{"actual":[["000",0],["000",0],["000",0],["100",0],["100",0]],"check":"control: sensor changes on edge scan","expected":[["000",0],["000",0],["000",0],["100",0],["100",0]],"passed":true},{"actual":[["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["100000",0],["100000",0],["100000",0],["100000",0],["110000",0],["110000",0],["110000",0],["110000",0]],"check":"control: scenario 1","expected":[["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["100000",0],["100000",0],["100000",0],["100000",0],["110000",0],["110000",0],["110000",0],["110000",0]],"passed":true},{"actual":[["00",0],["00",0],["00",0],["00",0],["00",0],["10",0],["10",0],["01",0]],"check":"control: scenario 2","expected":[["00",0],["00",0],["00",0],["00",0],["00",0],["10",0],["10",0],["01",0]],"passed":true},{"actual":[["00000",0],["00000",0],["00000",0],["10000",0],["10000",0],["10000",0],["01000",0],["01000",0],["01000",0],["01000",0],["01000",0]],"check":"control: scenario 3","expected":[["00000",0],["00000",0],["00000",0],["10000",0],["10000",0],["10000",0],["01000",0],["01000",0],["01000",0],["01000",0],["01000",0]],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: single stage\", \"actual\": [[\"1\", 0], [\"1\", 0], [\"0\", 1], [\"0\", 0], [\"1\", 0]], \"expected\": [[\"1\", 0], [\"1\", 0], [\"0\", 1], [\"0\", 1], [\"1\", 0]], \"passed\": false}, {\"check\": \"regression: scenario 4\", \"actual\": [[\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"1\", 0], [\"1\", 0], [\"1\", 0], [\"0\", 1], [\"0\", 1], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0]], \"expected\": [[\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"1\", 0], [\"1\", 0], [\"1\", 0], [\"0\", 1], [\"0\", 1], [\"0\", 1], [\"0\", 1], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0]], \"passed\": false}, {\"check\": \"control: three stage track\", \"actual\": [[\"100\", 0], [\"100\", 0], [\"010\", 0], [\"010\", 0], [\"101\", 0], [\"101\", 0], [\"010\", 1]], \"expected\": [[\"100\", 0], [\"100\", 0], [\"010\", 0], [\"010\", 0], [\"101\", 0], [\"101\", 0], [\"010\", 1]], \"passed\": true}, {\"check\": \"control: clock held high\", \"actual\": [[\"10\", 0], [\"10\", 0], [\"10\", 0], [\"10\", 0], [\"01\", 0]], \"expected\": [[\"10\", 0], [\"10\", 0], [\"10\", 0], [\"10\", 0], [\"01\", 0]], \"passed\": true}, {\"check\": \"control: sensor changes on edge scan\", \"actual\": [[\"000\", 0], [\"000\", 0], [\"000\", 0], [\"100\", 0], [\"100\", 0]], \"expected\": [[\"000\", 0], [\"000\", 0], [\"000\", 0], [\"100\", 0], [\"100\", 0]], \"passed\": true}, {\"check\": \"control: scenario 1\", \"actual\": [[\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"100000\", 0], [\"100000\", 0], [\"100000\", 0], [\"100000\", 0], [\"110000\", 0], [\"110000\", 0], [\"110000\", 0], [\"110000\", 0]], \"expected\": [[\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"100000\", 0], [\"100000\", 0], [\"100000\", 0], [\"100000\", 0], [\"110000\", 0], [\"110000\", 0], [\"110000\", 0], [\"110000\", 0]], \"passed\": true}, {\"check\": \"control: scenario 2\", \"actual\": [[\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"10\", 0], [\"10\", 0], [\"01\", 0]], \"expected\": [[\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"10\", 0], [\"10\", 0], [\"01\", 0]], \"passed\": true}, {\"check\": \"control: scenario 3\", \"actual\": [[\"00000\", 0], [\"00000\", 0], [\"00000\", 0], [\"10000\", 0], [\"10000\", 0], [\"10000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0]], \"expected\": [[\"00000\", 0], [\"00000\", 0], [\"00000\", 0], [\"10000\", 0], [\"10000\", 0], [\"10000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0]], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.727,"exit_code":1,"observations":[{"actual":[["1",0],["1",0],["0",1],["0",0],["1",0]],"check":"regression: single stage","expected":[["1",0],["1",0],["0",1],["0",1],["1",0]],"passed":false},{"actual":[["0",0],["0",0],["0",0],["0",0],["1",0],["1",0],["1",0],["0",1],["0",0],["0",0],["0",0],["0",0],["0",0],["0",0],["0",0],["0",0]],"check":"regression: scenario 4","expected":[["0",0],["0",0],["0",0],["0",0],["1",0],["1",0],["1",0],["0",1],["0",1],["0",1],["0",1],["0",0],["0",0],["0",0],["0",0],["0",0]],"passed":false},{"actual":[["100",0],["100",0],["010",0],["010",0],["101",0],["101",0],["010",1]],"check":"control: three stage track","expected":[["100",0],["100",0],["010",0],["010",0],["101",0],["101",0],["010",1]],"passed":true},{"actual":[["10",0],["10",0],["10",0],["10",0],["01",0]],"check":"control: clock held high","expected":[["10",0],["10",0],["10",0],["10",0],["01",0]],"passed":true},{"actual":[["000",0],["000",0],["000",0],["100",0],["100",0]],"check":"control: sensor changes on edge scan","expected":[["000",0],["000",0],["000",0],["100",0],["100",0]],"passed":true},{"actual":[["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["100000",0],["100000",0],["100000",0],["100000",0],["110000",0],["110000",0],["110000",0],["110000",0]],"check":"control: scenario 1","expected":[["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["100000",0],["100000",0],["100000",0],["100000",0],["110000",0],["110000",0],["110000",0],["110000",0]],"passed":true},{"actual":[["00",0],["00",0],["00",0],["00",0],["00",0],["10",0],["10",0],["01",0]],"check":"control: scenario 2","expected":[["00",0],["00",0],["00",0],["00",0],["00",0],["10",0],["10",0],["01",0]],"passed":true},{"actual":[["00000",0],["00000",0],["00000",0],["10000",0],["10000",0],["10000",0],["01000",0],["01000",0],["01000",0],["01000",0],["01000",0]],"check":"control: scenario 3","expected":[["00000",0],["00000",0],["00000",0],["10000",0],["10000",0],["10000",0],["01000",0],["01000",0],["01000",0],["01000",0],["01000",0]],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: single stage\", \"actual\": [[\"1\", 0], [\"1\", 0], [\"0\", 1], [\"0\", 0], [\"1\", 0]], \"expected\": [[\"1\", 0], [\"1\", 0], [\"0\", 1], [\"0\", 1], [\"1\", 0]], \"passed\": false}, {\"check\": \"regression: scenario 4\", \"actual\": [[\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"1\", 0], [\"1\", 0], [\"1\", 0], [\"0\", 1], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0]], \"expected\": [[\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"1\", 0], [\"1\", 0], [\"1\", 0], [\"0\", 1], [\"0\", 1], [\"0\", 1], [\"0\", 1], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0]], \"passed\": false}, {\"check\": \"control: three stage track\", \"actual\": [[\"100\", 0], [\"100\", 0], [\"010\", 0], [\"010\", 0], [\"101\", 0], [\"101\", 0], [\"010\", 1]], \"expected\": [[\"100\", 0], [\"100\", 0], [\"010\", 0], [\"010\", 0], [\"101\", 0], [\"101\", 0], [\"010\", 1]], \"passed\": true}, {\"check\": \"control: clock held high\", \"actual\": [[\"10\", 0], [\"10\", 0], [\"10\", 0], [\"10\", 0], [\"01\", 0]], \"expected\": [[\"10\", 0], [\"10\", 0], [\"10\", 0], [\"10\", 0], [\"01\", 0]], \"passed\": true}, {\"check\": \"control: sensor changes on edge scan\", \"actual\": [[\"000\", 0], [\"000\", 0], [\"000\", 0], [\"100\", 0], [\"100\", 0]], \"expected\": [[\"000\", 0], [\"000\", 0], [\"000\", 0], [\"100\", 0], [\"100\", 0]], \"passed\": true}, {\"check\": \"control: scenario 1\", \"actual\": [[\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"100000\", 0], [\"100000\", 0], [\"100000\", 0], [\"100000\", 0], [\"110000\", 0], [\"110000\", 0], [\"110000\", 0], [\"110000\", 0]], \"expected\": [[\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"100000\", 0], [\"100000\", 0], [\"100000\", 0], [\"100000\", 0], [\"110000\", 0], [\"110000\", 0], [\"110000\", 0], [\"110000\", 0]], \"passed\": true}, {\"check\": \"control: scenario 2\", \"actual\": [[\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"10\", 0], [\"10\", 0], [\"01\", 0]], \"expected\": [[\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"10\", 0], [\"10\", 0], [\"01\", 0]], \"passed\": true}, {\"check\": \"control: scenario 3\", \"actual\": [[\"00000\", 0], [\"00000\", 0], [\"00000\", 0], [\"10000\", 0], [\"10000\", 0], [\"10000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0]], \"expected\": [[\"00000\", 0], [\"00000\", 0], [\"00000\", 0], [\"10000\", 0], [\"10000\", 0], [\"10000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0]], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":42.556,"exit_code":0,"observations":[{"actual":[["1",0],["1",0],["0",1],["0",1],["1",0]],"check":"regression: single stage","expected":[["1",0],["1",0],["0",1],["0",1],["1",0]],"passed":true},{"actual":[["0",0],["0",0],["0",0],["0",0],["1",0],["1",0],["1",0],["0",1],["0",1],["0",1],["0",1],["0",0],["0",0],["0",0],["0",0],["0",0]],"check":"regression: scenario 4","expected":[["0",0],["0",0],["0",0],["0",0],["1",0],["1",0],["1",0],["0",1],["0",1],["0",1],["0",1],["0",0],["0",0],["0",0],["0",0],["0",0]],"passed":true},{"actual":[["100",0],["100",0],["010",0],["010",0],["101",0],["101",0],["010",1]],"check":"control: three stage track","expected":[["100",0],["100",0],["010",0],["010",0],["101",0],["101",0],["010",1]],"passed":true},{"actual":[["10",0],["10",0],["10",0],["10",0],["01",0]],"check":"control: clock held high","expected":[["10",0],["10",0],["10",0],["10",0],["01",0]],"passed":true},{"actual":[["000",0],["000",0],["000",0],["100",0],["100",0]],"check":"control: sensor changes on edge scan","expected":[["000",0],["000",0],["000",0],["100",0],["100",0]],"passed":true},{"actual":[["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["100000",0],["100000",0],["100000",0],["100000",0],["110000",0],["110000",0],["110000",0],["110000",0]],"check":"control: scenario 1","expected":[["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["100000",0],["100000",0],["100000",0],["100000",0],["110000",0],["110000",0],["110000",0],["110000",0]],"passed":true},{"actual":[["00",0],["00",0],["00",0],["00",0],["00",0],["10",0],["10",0],["01",0]],"check":"control: scenario 2","expected":[["00",0],["00",0],["00",0],["00",0],["00",0],["10",0],["10",0],["01",0]],"passed":true},{"actual":[["00000",0],["00000",0],["00000",0],["10000",0],["10000",0],["10000",0],["01000",0],["01000",0],["01000",0],["01000",0],["01000",0]],"check":"control: scenario 3","expected":[["00000",0],["00000",0],["00000",0],["10000",0],["10000",0],["10000",0],["01000",0],["01000",0],["01000",0],["01000",0],["01000",0]],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: single stage\", \"actual\": [[\"1\", 0], [\"1\", 0], [\"0\", 1], [\"0\", 1], [\"1\", 0]], \"expected\": [[\"1\", 0], [\"1\", 0], [\"0\", 1], [\"0\", 1], [\"1\", 0]], \"passed\": true}, {\"check\": \"regression: scenario 4\", \"actual\": [[\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"1\", 0], [\"1\", 0], [\"1\", 0], [\"0\", 1], [\"0\", 1], [\"0\", 1], [\"0\", 1], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0]], \"expected\": [[\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"1\", 0], [\"1\", 0], [\"1\", 0], [\"0\", 1], [\"0\", 1], [\"0\", 1], [\"0\", 1], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0], [\"0\", 0]], \"passed\": true}, {\"check\": \"control: three stage track\", \"actual\": [[\"100\", 0], [\"100\", 0], [\"010\", 0], [\"010\", 0], [\"101\", 0], [\"101\", 0], [\"010\", 1]], \"expected\": [[\"100\", 0], [\"100\", 0], [\"010\", 0], [\"010\", 0], [\"101\", 0], [\"101\", 0], [\"010\", 1]], \"passed\": true}, {\"check\": \"control: clock held high\", \"actual\": [[\"10\", 0], [\"10\", 0], [\"10\", 0], [\"10\", 0], [\"01\", 0]], \"expected\": [[\"10\", 0], [\"10\", 0], [\"10\", 0], [\"10\", 0], [\"01\", 0]], \"passed\": true}, {\"check\": \"control: sensor changes on edge scan\", \"actual\": [[\"000\", 0], [\"000\", 0], [\"000\", 0], [\"100\", 0], [\"100\", 0]], \"expected\": [[\"000\", 0], [\"000\", 0], [\"000\", 0], [\"100\", 0], [\"100\", 0]], \"passed\": true}, {\"check\": \"control: scenario 1\", \"actual\": [[\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"100000\", 0], [\"100000\", 0], [\"100000\", 0], [\"100000\", 0], [\"110000\", 0], [\"110000\", 0], [\"110000\", 0], [\"110000\", 0]], \"expected\": [[\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"100000\", 0], [\"100000\", 0], [\"100000\", 0], [\"100000\", 0], [\"110000\", 0], [\"110000\", 0], [\"110000\", 0], [\"110000\", 0]], \"passed\": true}, {\"check\": \"control: scenario 2\", \"actual\": [[\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"10\", 0], [\"10\", 0], [\"01\", 0]], \"expected\": [[\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"10\", 0], [\"10\", 0], [\"01\", 0]], \"passed\": true}, {\"check\": \"control: scenario 3\", \"actual\": [[\"00000\", 0], [\"00000\", 0], [\"00000\", 0], [\"10000\", 0], [\"10000\", 0], [\"10000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0]], \"expected\": [[\"00000\", 0], [\"00000\", 0], [\"00000\", 0], [\"10000\", 0], [\"10000\", 0], [\"10000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0]], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}