{"abstract":"Part-present bits travel backwards along the conveyor model.","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":"Inserting the sensor at index 0 but dropping index 0 of the old register loses the part at the load station.","family":"w2-plc-ladder-logic-scan-cycles-bsl-conveyor-tracking-shift-direction","id":"FA-92116","implementations":{"attempt":{"sha256":"4f014beba2f2941530d239d3eee56213deec521aa238a158e4db210700275fe6","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[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: 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: 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: 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: 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   [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  ['regression: 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  ['regression: 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  ['control: 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 [['regression: 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  ['regression: scenario 4',\n   [2,\n    [[False, 0],\n     [True, 1],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [False, 0],\n     [True, 0]]],\n   [['00', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['01', 0],\n    ['01', 0],\n    ['00', 1]]],\n  ['regression: 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: 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: 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  ['control: 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: 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   [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: 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: 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: 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: 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  ['control: scenario 3',\n   [6, [[False, 1], [False, 0], [True, 0], [True, 1], [True, 0], [False, 0], [True, 0], [True, 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  ['regression: scenario 4',\n   [2,\n    [[False, 0],\n     [True, 0],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [False, 0],\n     [True, 1],\n     [True, 0],\n     [True, 0],\n     [True, 0]]],\n   [['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0]]]],\n [['regression: 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  ['regression: scenario 3',\n   [3,\n    [[False, 1],\n     [False, 1],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [True, 1],\n     [False, 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    ['100', 0],\n    ['010', 0],\n    ['010', 0],\n    ['010', 0]]],\n  ['regression: 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: 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: 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  ['regression: 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 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  ['control: scenario 4',\n   [1,\n    [[True, 1],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 1],\n     [False, 1],\n     [False, 1],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [False, 1],\n     [False, 0],\n     [True, 0],\n     [False, 1]]],\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    ['1', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 0],\n    ['0', 0]]]],\n [['regression: scenario 5',\n   [6,\n    [[True, 0],\n     [True, 1],\n     [False, 0],\n     [False, 1],\n     [False, 0],\n     [False, 1],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 1],\n     [True, 1],\n     [False, 0],\n     [False, 1],\n     [False, 0],\n     [True, 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    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['010000', 0]]],\n  ['regression: scenario 7',\n   [6,\n    [[True, 1],\n     [False, 0],\n     [False, 1],\n     [False, 0],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [False, 1],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [True, 1]]],\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    ['110000', 0],\n    ['110000', 0],\n    ['110000', 0],\n    ['111000', 0],\n    ['111000', 0],\n    ['111000', 0],\n    ['111100', 0]]],\n  ['regression: 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: 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: 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  ['regression: 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":"146e30ee509eb5afc8279ec103e6b3abc3444a71a7d6d87f87e2468045d235c1","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 = bits[1:] + [1 if sensor else 0]\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: 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: 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: 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: 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   [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  ['regression: 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  ['regression: 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  ['control: 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 [['regression: 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  ['regression: scenario 4',\n   [2,\n    [[False, 0],\n     [True, 1],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [False, 0],\n     [True, 0]]],\n   [['00', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['01', 0],\n    ['01', 0],\n    ['00', 1]]],\n  ['regression: 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: 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: 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  ['control: 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: 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   [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: 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: 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: 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: 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  ['control: scenario 3',\n   [6, [[False, 1], [False, 0], [True, 0], [True, 1], [True, 0], [False, 0], [True, 0], [True, 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  ['regression: scenario 4',\n   [2,\n    [[False, 0],\n     [True, 0],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [False, 0],\n     [True, 1],\n     [True, 0],\n     [True, 0],\n     [True, 0]]],\n   [['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0]]]],\n [['regression: 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  ['regression: scenario 3',\n   [3,\n    [[False, 1],\n     [False, 1],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [True, 1],\n     [False, 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    ['100', 0],\n    ['010', 0],\n    ['010', 0],\n    ['010', 0]]],\n  ['regression: 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: 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: 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  ['regression: 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 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  ['control: scenario 4',\n   [1,\n    [[True, 1],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 1],\n     [False, 1],\n     [False, 1],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [False, 1],\n     [False, 0],\n     [True, 0],\n     [False, 1]]],\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    ['1', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 0],\n    ['0', 0]]]],\n [['regression: scenario 5',\n   [6,\n    [[True, 0],\n     [True, 1],\n     [False, 0],\n     [False, 1],\n     [False, 0],\n     [False, 1],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 1],\n     [True, 1],\n     [False, 0],\n     [False, 1],\n     [False, 0],\n     [True, 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    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['010000', 0]]],\n  ['regression: scenario 7',\n   [6,\n    [[True, 1],\n     [False, 0],\n     [False, 1],\n     [False, 0],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [False, 1],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [True, 1]]],\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    ['110000', 0],\n    ['110000', 0],\n    ['110000', 0],\n    ['111000', 0],\n    ['111000', 0],\n    ['111000', 0],\n    ['111100', 0]]],\n  ['regression: 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: 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: 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  ['regression: 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":"e9d35eff6214be3fd4c334d8267d985b696f385cb9b5670409145a873ab73ac4","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: 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: 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: 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: 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   [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  ['regression: 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  ['regression: 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  ['control: 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 [['regression: 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  ['regression: scenario 4',\n   [2,\n    [[False, 0],\n     [True, 1],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [False, 0],\n     [True, 0]]],\n   [['00', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['01', 0],\n    ['01', 0],\n    ['00', 1]]],\n  ['regression: 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: 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: 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  ['control: 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: 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   [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: 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: 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: 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: 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  ['control: scenario 3',\n   [6, [[False, 1], [False, 0], [True, 0], [True, 1], [True, 0], [False, 0], [True, 0], [True, 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  ['regression: scenario 4',\n   [2,\n    [[False, 0],\n     [True, 0],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [False, 0],\n     [True, 1],\n     [True, 0],\n     [True, 0],\n     [True, 0]]],\n   [['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['00', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0],\n    ['10', 0]]]],\n [['regression: 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  ['regression: scenario 3',\n   [3,\n    [[False, 1],\n     [False, 1],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [True, 0],\n     [True, 1],\n     [False, 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    ['100', 0],\n    ['010', 0],\n    ['010', 0],\n    ['010', 0]]],\n  ['regression: 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: 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: 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  ['regression: 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 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  ['control: scenario 4',\n   [1,\n    [[True, 1],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 1],\n     [False, 1],\n     [False, 1],\n     [False, 0],\n     [False, 1],\n     [True, 0],\n     [False, 1],\n     [False, 0],\n     [True, 0],\n     [False, 1]]],\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    ['1', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 1],\n    ['0', 0],\n    ['0', 0]]]],\n [['regression: scenario 5',\n   [6,\n    [[True, 0],\n     [True, 1],\n     [False, 0],\n     [False, 1],\n     [False, 0],\n     [False, 1],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 1],\n     [True, 1],\n     [False, 0],\n     [False, 1],\n     [False, 0],\n     [True, 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    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['100000', 0],\n    ['010000', 0]]],\n  ['regression: scenario 7',\n   [6,\n    [[True, 1],\n     [False, 0],\n     [False, 1],\n     [False, 0],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [False, 0],\n     [False, 1],\n     [False, 0],\n     [False, 0],\n     [True, 1],\n     [True, 0],\n     [False, 0],\n     [True, 1]]],\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    ['110000', 0],\n    ['110000', 0],\n    ['110000', 0],\n    ['111000', 0],\n    ['111000', 0],\n    ['111000', 0],\n    ['111100', 0]]],\n  ['regression: 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: 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: 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  ['regression: 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-shift-direction","generated_at":"2026-09-29T14:51:42.539355+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":"Insert the sensor at index 0 and drop the far-end bit.","root_cause":"The shift drops bit 0 and appends the sensor at the far end.","sha256":"0ba98fa4611679e5dea83f45b1edc9bad4fc4cb95e646b4cdddf0cf97882fd5d","title":"Shift register moves tracking bits toward the load end · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":42.635,"exit_code":1,"observations":[{"actual":[["100",0],["100",0],["000",0],["000",0],["100",0],["100",0],["000",0]],"check":"regression: three stage track","expected":[["100",0],["100",0],["010",0],["010",0],["101",0],["101",0],["010",1]],"passed":false},{"actual":[["10",0],["10",0],["10",0],["10",0],["00",0]],"check":"regression: clock held high","expected":[["10",0],["10",0],["10",0],["10",0],["01",0]],"passed":false},{"actual":[["1",0],["1",0],["0",1],["0",1],["1",0]],"check":"control: single stage","expected":[["1",0],["1",0],["0",1],["0",1],["1",0]],"passed":true},{"actual":[["000",0],["000",0],["000",0],["100",0],["100",0]],"check":"regression: 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],["100000",0],["100000",0],["100000",0],["100000",0]],"check":"regression: 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":false},{"actual":[["00",0],["00",0],["00",0],["00",0],["00",0],["10",0],["10",0],["00",0]],"check":"regression: scenario 2","expected":[["00",0],["00",0],["00",0],["00",0],["00",0],["10",0],["10",0],["01",0]],"passed":false},{"actual":[["00000",0],["00000",0],["00000",0],["10000",0],["10000",0],["10000",0],["00000",0],["00000",0],["00000",0],["00000",0],["00000",0]],"check":"regression: 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":false},{"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":"control: 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}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: three stage track\", \"actual\": [[\"100\", 0], [\"100\", 0], [\"000\", 0], [\"000\", 0], [\"100\", 0], [\"100\", 0], [\"000\", 0]], \"expected\": [[\"100\", 0], [\"100\", 0], [\"010\", 0], [\"010\", 0], [\"101\", 0], [\"101\", 0], [\"010\", 1]], \"passed\": false}, {\"check\": \"regression: clock held high\", \"actual\": [[\"10\", 0], [\"10\", 0], [\"10\", 0], [\"10\", 0], [\"00\", 0]], \"expected\": [[\"10\", 0], [\"10\", 0], [\"10\", 0], [\"10\", 0], [\"01\", 0]], \"passed\": false}, {\"check\": \"control: 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: 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\": \"regression: 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], [\"100000\", 0], [\"100000\", 0], [\"100000\", 0], [\"100000\", 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\": false}, {\"check\": \"regression: scenario 2\", \"actual\": [[\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"10\", 0], [\"10\", 0], [\"00\", 0]], \"expected\": [[\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"10\", 0], [\"10\", 0], [\"01\", 0]], \"passed\": false}, {\"check\": \"regression: scenario 3\", \"actual\": [[\"00000\", 0], [\"00000\", 0], [\"00000\", 0], [\"10000\", 0], [\"10000\", 0], [\"10000\", 0], [\"00000\", 0], [\"00000\", 0], [\"00000\", 0], [\"00000\", 0], [\"00000\", 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\": false}, {\"check\": \"control: 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}], \"passed\": false}\n"},"broken":{"elapsed_ms":43.821,"exit_code":1,"observations":[{"actual":[["001",0],["001",0],["010",1],["010",1],["101",0],["101",0],["010",1]],"check":"regression: three stage track","expected":[["100",0],["100",0],["010",0],["010",0],["101",0],["101",0],["010",1]],"passed":false},{"actual":[["01",0],["01",0],["01",0],["01",0],["10",1]],"check":"regression: clock held high","expected":[["10",0],["10",0],["10",0],["10",0],["01",0]],"passed":false},{"actual":[["1",0],["1",0],["0",1],["0",1],["1",0]],"check":"control: single stage","expected":[["1",0],["1",0],["0",1],["0",1],["1",0]],"passed":true},{"actual":[["000",0],["000",0],["000",0],["001",0],["001",0]],"check":"regression: sensor changes on edge scan","expected":[["000",0],["000",0],["000",0],["100",0],["100",0]],"passed":false},{"actual":[["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["000000",0],["000001",0],["000001",0],["000001",0],["000001",0],["000011",1],["000011",1],["000011",1],["000011",1]],"check":"regression: 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":false},{"actual":[["00",0],["00",0],["00",0],["00",0],["00",0],["01",0],["01",0],["10",1]],"check":"regression: scenario 2","expected":[["00",0],["00",0],["00",0],["00",0],["00",0],["10",0],["10",0],["01",0]],"passed":false},{"actual":[["00000",0],["00000",0],["00000",0],["00001",0],["00001",0],["00001",0],["00010",1],["00010",1],["00010",1],["00010",1],["00010",1]],"check":"regression: 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":false},{"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":"control: 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}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: three stage track\", \"actual\": [[\"001\", 0], [\"001\", 0], [\"010\", 1], [\"010\", 1], [\"101\", 0], [\"101\", 0], [\"010\", 1]], \"expected\": [[\"100\", 0], [\"100\", 0], [\"010\", 0], [\"010\", 0], [\"101\", 0], [\"101\", 0], [\"010\", 1]], \"passed\": false}, {\"check\": \"regression: clock held high\", \"actual\": [[\"01\", 0], [\"01\", 0], [\"01\", 0], [\"01\", 0], [\"10\", 1]], \"expected\": [[\"10\", 0], [\"10\", 0], [\"10\", 0], [\"10\", 0], [\"01\", 0]], \"passed\": false}, {\"check\": \"control: 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: sensor changes on edge scan\", \"actual\": [[\"000\", 0], [\"000\", 0], [\"000\", 0], [\"001\", 0], [\"001\", 0]], \"expected\": [[\"000\", 0], [\"000\", 0], [\"000\", 0], [\"100\", 0], [\"100\", 0]], \"passed\": false}, {\"check\": \"regression: scenario 1\", \"actual\": [[\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000000\", 0], [\"000001\", 0], [\"000001\", 0], [\"000001\", 0], [\"000001\", 0], [\"000011\", 1], [\"000011\", 1], [\"000011\", 1], [\"000011\", 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\": false}, {\"check\": \"regression: scenario 2\", \"actual\": [[\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"01\", 0], [\"01\", 0], [\"10\", 1]], \"expected\": [[\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"00\", 0], [\"10\", 0], [\"10\", 0], [\"01\", 0]], \"passed\": false}, {\"check\": \"regression: scenario 3\", \"actual\": [[\"00000\", 0], [\"00000\", 0], [\"00000\", 0], [\"00001\", 0], [\"00001\", 0], [\"00001\", 0], [\"00010\", 1], [\"00010\", 1], [\"00010\", 1], [\"00010\", 1], [\"00010\", 1]], \"expected\": [[\"00000\", 0], [\"00000\", 0], [\"00000\", 0], [\"10000\", 0], [\"10000\", 0], [\"10000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0], [\"01000\", 0]], \"passed\": false}, {\"check\": \"control: 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}], \"passed\": false}\n"},"fixed":{"elapsed_ms":41.127,"exit_code":0,"observations":[{"actual":[["100",0],["100",0],["010",0],["010",0],["101",0],["101",0],["010",1]],"check":"regression: 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":"regression: clock held high","expected":[["10",0],["10",0],["10",0],["10",0],["01",0]],"passed":true},{"actual":[["1",0],["1",0],["0",1],["0",1],["1",0]],"check":"control: single stage","expected":[["1",0],["1",0],["0",1],["0",1],["1",0]],"passed":true},{"actual":[["000",0],["000",0],["000",0],["100",0],["100",0]],"check":"regression: 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":"regression: 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":"regression: 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":"regression: 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},{"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":"control: 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}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: 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\": \"regression: 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: 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: 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\": \"regression: 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\": \"regression: 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\": \"regression: 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}, {\"check\": \"control: 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}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}