{"abstract":"A knight is offered the square two ranks straight below it.","category":"Chess move legality","checks":8,"contract":"Input: {\"board\": {square: piece}, \"from\": square of a knight}. Squares are indexed 0..63 with a1=0, h1=7, a8=56. Return the sorted list of pseudo-legal knight destinations: on the board, not wrapping across the a/h file edge, and not occupied by a piece of the knight's colour.","contract_signature":"x","evaluation_group":"w2-chess_move_legality-knight-index-targets","failed_approach":"Repeating -17 in place of -15 omits a knight jump and duplicates another.","family":"w2-chess_move_legality-knight-index-targets-offset-table","id":"FA-82356","implementations":{"attempt":{"sha256":"6b2df1263f4df3fdeeee3b755c2b2e0683c38ef8887b5426bf8e3c9c4de10403","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    def idx(s): return (int(s[1])-1)*8 + ord(s[0])-97\n    def name(i): return 'abcdefgh'[i%8]+str(i//8+1)\n    b=x['board']; f=idx(x['from']); me=b[x['from']]\n    out=[]\n    for d in (6,10,15,17,-6,-10,-17,-17):\n        t=f+d\n        if t<0 or t>63: continue\n        if abs(t%8-f%8)>2: continue\n        occ=b.get(name(t))\n        if occ and occ.isupper()==me.isupper(): continue\n        out.append(name(t))\n    return sorted(out)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('corner a1', {'board': {'a1': 'N'}, 'from': 'a1'}, ['b3', 'c2']),\n  ('h-file knight', {'board': {'h3': 'N'}, 'from': 'h3'}, ['f2', 'f4', 'g1', 'g5']),\n  ('g-file knight', {'board': {'g5': 'n'}, 'from': 'g5'}, ['e4', 'e6', 'f3', 'f7', 'h3', 'h7']),\n  ('b-file knight', {'board': {'b4': 'N'}, 'from': 'b4'}, ['a2', 'a6', 'c2', 'c6', 'd3', 'd5']),\n  ('centre with own and enemy',\n   {'board': {'c6': 'p', 'd4': 'N', 'e6': 'P', 'f5': 'B'}, 'from': 'd4'},\n   ['b3', 'b5', 'c2', 'c6', 'e2', 'f3']),\n  ('black knight own pieces', {'board': {'c4': 'q', 'd7': 'p', 'e5': 'n', 'f3': 'P'}, 'from': 'e5'},\n   ['c6', 'd3', 'f3', 'f7', 'g4', 'g6']),\n  ('knight on g2', {'board': {'e1': 'Q', 'g2': 'N'}, 'from': 'g2'}, ['e3', 'f4', 'h4']),\n  ('knight c2 reaches a1 area', {'board': {'c2': 'n'}, 'from': 'c2'},\n   ['a1', 'a3', 'b4', 'd4', 'e1', 'e3'])],\n [('h-file knight', {'board': {'h3': 'N'}, 'from': 'h3'}, ['f2', 'f4', 'g1', 'g5']),\n  ('g-file knight', {'board': {'g5': 'n'}, 'from': 'g5'}, ['e4', 'e6', 'f3', 'f7', 'h3', 'h7']),\n  ('b-file knight', {'board': {'b4': 'N'}, 'from': 'b4'}, ['a2', 'a6', 'c2', 'c6', 'd3', 'd5']),\n  ('centre with own and enemy',\n   {'board': {'c6': 'p', 'd4': 'N', 'e6': 'P', 'f5': 'B'}, 'from': 'd4'},\n   ['b3', 'b5', 'c2', 'c6', 'e2', 'f3']),\n  ('black knight own pieces', {'board': {'c4': 'q', 'd7': 'p', 'e5': 'n', 'f3': 'P'}, 'from': 'e5'},\n   ['c6', 'd3', 'f3', 'f7', 'g4', 'g6']),\n  ('h8 corner', {'board': {'h8': 'n'}, 'from': 'h8'}, ['f7', 'g6']),\n  ('knight to a1 from b3', {'board': {'a1': 'r', 'b3': 'N'}, 'from': 'b3'},\n   ['a1', 'a5', 'c1', 'c5', 'd2', 'd4']),\n  ('top rank knight', {'board': {'c7': 'N'}, 'from': 'c7'}, ['a6', 'a8', 'b5', 'd5', 'e6', 'e8'])],\n [('b-file knight', {'board': {'b4': 'N'}, 'from': 'b4'}, ['a2', 'a6', 'c2', 'c6', 'd3', 'd5']),\n  ('centre with own and enemy',\n   {'board': {'c6': 'p', 'd4': 'N', 'e6': 'P', 'f5': 'B'}, 'from': 'd4'},\n   ['b3', 'b5', 'c2', 'c6', 'e2', 'f3']),\n  ('black knight own pieces', {'board': {'c4': 'q', 'd7': 'p', 'e5': 'n', 'f3': 'P'}, 'from': 'e5'},\n   ['c6', 'd3', 'f3', 'f7', 'g4', 'g6']),\n  ('h8 corner', {'board': {'h8': 'n'}, 'from': 'h8'}, ['f7', 'g6']),\n  ('knight to a1 from b3', {'board': {'a1': 'r', 'b3': 'N'}, 'from': 'b3'},\n   ['a1', 'a5', 'c1', 'c5', 'd2', 'd4']),\n  ('top rank knight', {'board': {'c7': 'N'}, 'from': 'c7'}, ['a6', 'a8', 'b5', 'd5', 'e6', 'e8']),\n  ('knight on c8', {'board': {'c8': 'n'}, 'from': 'c8'}, ['a7', 'b6', 'd6', 'e7']),\n  ('knight on b7', {'board': {'b7': 'N'}, 'from': 'b7'}, ['a5', 'c5', 'd6', 'd8'])],\n [('corner a1', {'board': {'a1': 'N'}, 'from': 'a1'}, ['b3', 'c2']),\n  ('centre with own and enemy',\n   {'board': {'c6': 'p', 'd4': 'N', 'e6': 'P', 'f5': 'B'}, 'from': 'd4'},\n   ['b3', 'b5', 'c2', 'c6', 'e2', 'f3']),\n  ('black knight own pieces', {'board': {'c4': 'q', 'd7': 'p', 'e5': 'n', 'f3': 'P'}, 'from': 'e5'},\n   ['c6', 'd3', 'f3', 'f7', 'g4', 'g6']),\n  ('knight to a1 from b3', {'board': {'a1': 'r', 'b3': 'N'}, 'from': 'b3'},\n   ['a1', 'a5', 'c1', 'c5', 'd2', 'd4']),\n  ('top rank knight', {'board': {'c7': 'N'}, 'from': 'c7'}, ['a6', 'a8', 'b5', 'd5', 'e6', 'e8']),\n  ('knight on g2', {'board': {'e1': 'Q', 'g2': 'N'}, 'from': 'g2'}, ['e3', 'f4', 'h4']),\n  ('knight on c8', {'board': {'c8': 'n'}, 'from': 'c8'}, ['a7', 'b6', 'd6', 'e7']),\n  ('knight on b7', {'board': {'b7': 'N'}, 'from': 'b7'}, ['a5', 'c5', 'd6', 'd8'])],\n [('corner a1', {'board': {'a1': 'N'}, 'from': 'a1'}, ['b3', 'c2']),\n  ('h-file knight', {'board': {'h3': 'N'}, 'from': 'h3'}, ['f2', 'f4', 'g1', 'g5']),\n  ('g-file knight', {'board': {'g5': 'n'}, 'from': 'g5'}, ['e4', 'e6', 'f3', 'f7', 'h3', 'h7']),\n  ('black knight own pieces', {'board': {'c4': 'q', 'd7': 'p', 'e5': 'n', 'f3': 'P'}, 'from': 'e5'},\n   ['c6', 'd3', 'f3', 'f7', 'g4', 'g6']),\n  ('h8 corner', {'board': {'h8': 'n'}, 'from': 'h8'}, ['f7', 'g6']),\n  ('knight on g2', {'board': {'e1': 'Q', 'g2': 'N'}, 'from': 'g2'}, ['e3', 'f4', 'h4']),\n  ('knight c2 reaches a1 area', {'board': {'c2': 'n'}, 'from': 'c2'},\n   ['a1', 'a3', 'b4', 'd4', 'e1', 'e3']),\n  ('knight on b7', {'board': {'b7': 'N'}, 'from': 'b7'}, ['a5', 'c5', 'd6', 'd8'])]]\nfor label, args, expected in fixtures[N-1]:\n    try:\n        actual = solve(args)\n    except Exception as exc:\n        actual = 'error:' + type(exc).__name__\n    check(label, actual, 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":"37fdf89f6beb60b676041b7355ebb886ff3a3808aa3fe71225c6fbdc455cf66d","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    def idx(s): return (int(s[1])-1)*8 + ord(s[0])-97\n    def name(i): return 'abcdefgh'[i%8]+str(i//8+1)\n    b=x['board']; f=idx(x['from']); me=b[x['from']]\n    out=[]\n    for d in (6,10,15,17,-6,-10,-15,-16):\n        t=f+d\n        if t<0 or t>63: continue\n        if abs(t%8-f%8)>2: continue\n        occ=b.get(name(t))\n        if occ and occ.isupper()==me.isupper(): continue\n        out.append(name(t))\n    return sorted(out)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('corner a1', {'board': {'a1': 'N'}, 'from': 'a1'}, ['b3', 'c2']),\n  ('h-file knight', {'board': {'h3': 'N'}, 'from': 'h3'}, ['f2', 'f4', 'g1', 'g5']),\n  ('g-file knight', {'board': {'g5': 'n'}, 'from': 'g5'}, ['e4', 'e6', 'f3', 'f7', 'h3', 'h7']),\n  ('b-file knight', {'board': {'b4': 'N'}, 'from': 'b4'}, ['a2', 'a6', 'c2', 'c6', 'd3', 'd5']),\n  ('centre with own and enemy',\n   {'board': {'c6': 'p', 'd4': 'N', 'e6': 'P', 'f5': 'B'}, 'from': 'd4'},\n   ['b3', 'b5', 'c2', 'c6', 'e2', 'f3']),\n  ('black knight own pieces', {'board': {'c4': 'q', 'd7': 'p', 'e5': 'n', 'f3': 'P'}, 'from': 'e5'},\n   ['c6', 'd3', 'f3', 'f7', 'g4', 'g6']),\n  ('knight on g2', {'board': {'e1': 'Q', 'g2': 'N'}, 'from': 'g2'}, ['e3', 'f4', 'h4']),\n  ('knight c2 reaches a1 area', {'board': {'c2': 'n'}, 'from': 'c2'},\n   ['a1', 'a3', 'b4', 'd4', 'e1', 'e3'])],\n [('h-file knight', {'board': {'h3': 'N'}, 'from': 'h3'}, ['f2', 'f4', 'g1', 'g5']),\n  ('g-file knight', {'board': {'g5': 'n'}, 'from': 'g5'}, ['e4', 'e6', 'f3', 'f7', 'h3', 'h7']),\n  ('b-file knight', {'board': {'b4': 'N'}, 'from': 'b4'}, ['a2', 'a6', 'c2', 'c6', 'd3', 'd5']),\n  ('centre with own and enemy',\n   {'board': {'c6': 'p', 'd4': 'N', 'e6': 'P', 'f5': 'B'}, 'from': 'd4'},\n   ['b3', 'b5', 'c2', 'c6', 'e2', 'f3']),\n  ('black knight own pieces', {'board': {'c4': 'q', 'd7': 'p', 'e5': 'n', 'f3': 'P'}, 'from': 'e5'},\n   ['c6', 'd3', 'f3', 'f7', 'g4', 'g6']),\n  ('h8 corner', {'board': {'h8': 'n'}, 'from': 'h8'}, ['f7', 'g6']),\n  ('knight to a1 from b3', {'board': {'a1': 'r', 'b3': 'N'}, 'from': 'b3'},\n   ['a1', 'a5', 'c1', 'c5', 'd2', 'd4']),\n  ('top rank knight', {'board': {'c7': 'N'}, 'from': 'c7'}, ['a6', 'a8', 'b5', 'd5', 'e6', 'e8'])],\n [('b-file knight', {'board': {'b4': 'N'}, 'from': 'b4'}, ['a2', 'a6', 'c2', 'c6', 'd3', 'd5']),\n  ('centre with own and enemy',\n   {'board': {'c6': 'p', 'd4': 'N', 'e6': 'P', 'f5': 'B'}, 'from': 'd4'},\n   ['b3', 'b5', 'c2', 'c6', 'e2', 'f3']),\n  ('black knight own pieces', {'board': {'c4': 'q', 'd7': 'p', 'e5': 'n', 'f3': 'P'}, 'from': 'e5'},\n   ['c6', 'd3', 'f3', 'f7', 'g4', 'g6']),\n  ('h8 corner', {'board': {'h8': 'n'}, 'from': 'h8'}, ['f7', 'g6']),\n  ('knight to a1 from b3', {'board': {'a1': 'r', 'b3': 'N'}, 'from': 'b3'},\n   ['a1', 'a5', 'c1', 'c5', 'd2', 'd4']),\n  ('top rank knight', {'board': {'c7': 'N'}, 'from': 'c7'}, ['a6', 'a8', 'b5', 'd5', 'e6', 'e8']),\n  ('knight on c8', {'board': {'c8': 'n'}, 'from': 'c8'}, ['a7', 'b6', 'd6', 'e7']),\n  ('knight on b7', {'board': {'b7': 'N'}, 'from': 'b7'}, ['a5', 'c5', 'd6', 'd8'])],\n [('corner a1', {'board': {'a1': 'N'}, 'from': 'a1'}, ['b3', 'c2']),\n  ('centre with own and enemy',\n   {'board': {'c6': 'p', 'd4': 'N', 'e6': 'P', 'f5': 'B'}, 'from': 'd4'},\n   ['b3', 'b5', 'c2', 'c6', 'e2', 'f3']),\n  ('black knight own pieces', {'board': {'c4': 'q', 'd7': 'p', 'e5': 'n', 'f3': 'P'}, 'from': 'e5'},\n   ['c6', 'd3', 'f3', 'f7', 'g4', 'g6']),\n  ('knight to a1 from b3', {'board': {'a1': 'r', 'b3': 'N'}, 'from': 'b3'},\n   ['a1', 'a5', 'c1', 'c5', 'd2', 'd4']),\n  ('top rank knight', {'board': {'c7': 'N'}, 'from': 'c7'}, ['a6', 'a8', 'b5', 'd5', 'e6', 'e8']),\n  ('knight on g2', {'board': {'e1': 'Q', 'g2': 'N'}, 'from': 'g2'}, ['e3', 'f4', 'h4']),\n  ('knight on c8', {'board': {'c8': 'n'}, 'from': 'c8'}, ['a7', 'b6', 'd6', 'e7']),\n  ('knight on b7', {'board': {'b7': 'N'}, 'from': 'b7'}, ['a5', 'c5', 'd6', 'd8'])],\n [('corner a1', {'board': {'a1': 'N'}, 'from': 'a1'}, ['b3', 'c2']),\n  ('h-file knight', {'board': {'h3': 'N'}, 'from': 'h3'}, ['f2', 'f4', 'g1', 'g5']),\n  ('g-file knight', {'board': {'g5': 'n'}, 'from': 'g5'}, ['e4', 'e6', 'f3', 'f7', 'h3', 'h7']),\n  ('black knight own pieces', {'board': {'c4': 'q', 'd7': 'p', 'e5': 'n', 'f3': 'P'}, 'from': 'e5'},\n   ['c6', 'd3', 'f3', 'f7', 'g4', 'g6']),\n  ('h8 corner', {'board': {'h8': 'n'}, 'from': 'h8'}, ['f7', 'g6']),\n  ('knight on g2', {'board': {'e1': 'Q', 'g2': 'N'}, 'from': 'g2'}, ['e3', 'f4', 'h4']),\n  ('knight c2 reaches a1 area', {'board': {'c2': 'n'}, 'from': 'c2'},\n   ['a1', 'a3', 'b4', 'd4', 'e1', 'e3']),\n  ('knight on b7', {'board': {'b7': 'N'}, 'from': 'b7'}, ['a5', 'c5', 'd6', 'd8'])]]\nfor label, args, expected in fixtures[N-1]:\n    try:\n        actual = solve(args)\n    except Exception as exc:\n        actual = 'error:' + type(exc).__name__\n    check(label, actual, 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 toy model with an explicitly stated contract; boards are {square: piece} with white upper-case and black lower-case pieces; no claim of full FIDE Laws conformance. 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-chess_move_legality-knight-index-targets-offset-table","generated_at":"2026-09-29T14:50:11.416906+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Move validators gate every move in engines, servers and arbiters; accepting an illegal move or rejecting a legal one corrupts the game record.","root_cause":"One of the eight index offsets is -16 instead of -17.","sha256":"99b1f054a1eaa8c7e136d75dcae2ac3bceba83f473e3edc620ba27facf2267a7","title":"Mistyped knight offset produces a pawn-like step · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verified":true,"visibility":"public","verification":{"attempt":{"elapsed_ms":39.34,"exit_code":1,"observations":[{"actual":["b3","c2"],"check":"corner a1","expected":["b3","c2"],"passed":true},{"actual":["f2","f4","g1","g1","g5"],"check":"h-file knight","expected":["f2","f4","g1","g5"],"passed":false},{"actual":["e4","e6","f3","f3","f7","h7"],"check":"g-file knight","expected":["e4","e6","f3","f7","h3","h7"],"passed":false},{"actual":["a2","a2","a6","c6","d3","d5"],"check":"b-file knight","expected":["a2","a6","c2","c6","d3","d5"],"passed":false},{"actual":["b3","b5","c2","c2","c6","f3"],"check":"centre with own and enemy","expected":["b3","b5","c2","c6","e2","f3"],"passed":false},{"actual":["c6","d3","d3","f7","g4","g6"],"check":"black knight own pieces","expected":["c6","d3","f3","f7","g4","g6"],"passed":false},{"actual":["e3","f4","h4"],"check":"knight on g2","expected":["e3","f4","h4"],"passed":true},{"actual":["a1","a3","b4","d4","e1","e3"],"check":"knight c2 reaches a1 area","expected":["a1","a3","b4","d4","e1","e3"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"corner a1\", \"actual\": [\"b3\", \"c2\"], \"expected\": [\"b3\", \"c2\"], \"passed\": true}, {\"check\": \"h-file knight\", \"actual\": [\"f2\", \"f4\", \"g1\", \"g1\", \"g5\"], \"expected\": [\"f2\", \"f4\", \"g1\", \"g5\"], \"passed\": false}, {\"check\": \"g-file knight\", \"actual\": [\"e4\", \"e6\", \"f3\", \"f3\", \"f7\", \"h7\"], \"expected\": [\"e4\", \"e6\", \"f3\", \"f7\", \"h3\", \"h7\"], \"passed\": false}, {\"check\": \"b-file knight\", \"actual\": [\"a2\", \"a2\", \"a6\", \"c6\", \"d3\", \"d5\"], \"expected\": [\"a2\", \"a6\", \"c2\", \"c6\", \"d3\", \"d5\"], \"passed\": false}, {\"check\": \"centre with own and enemy\", \"actual\": [\"b3\", \"b5\", \"c2\", \"c2\", \"c6\", \"f3\"], \"expected\": [\"b3\", \"b5\", \"c2\", \"c6\", \"e2\", \"f3\"], \"passed\": false}, {\"check\": \"black knight own pieces\", \"actual\": [\"c6\", \"d3\", \"d3\", \"f7\", \"g4\", \"g6\"], \"expected\": [\"c6\", \"d3\", \"f3\", \"f7\", \"g4\", \"g6\"], \"passed\": false}, {\"check\": \"knight on g2\", \"actual\": [\"e3\", \"f4\", \"h4\"], \"expected\": [\"e3\", \"f4\", \"h4\"], \"passed\": true}, {\"check\": \"knight c2 reaches a1 area\", \"actual\": [\"a1\", \"a3\", \"b4\", \"d4\", \"e1\", \"e3\"], \"expected\": [\"a1\", \"a3\", \"b4\", \"d4\", \"e1\", \"e3\"], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.481,"exit_code":1,"observations":[{"actual":["b3","c2"],"check":"corner a1","expected":["b3","c2"],"passed":true},{"actual":["f2","f4","g5","h1"],"check":"h-file knight","expected":["f2","f4","g1","g5"],"passed":false},{"actual":["e4","e6","f7","g3","h3","h7"],"check":"g-file knight","expected":["e4","e6","f3","f7","h3","h7"],"passed":false},{"actual":["a6","b2","c2","c6","d3","d5"],"check":"b-file knight","expected":["a2","a6","c2","c6","d3","d5"],"passed":false},{"actual":["b3","b5","c6","d2","e2","f3"],"check":"centre with own and enemy","expected":["b3","b5","c2","c6","e2","f3"],"passed":false},{"actual":["c6","e3","f3","f7","g4","g6"],"check":"black knight own pieces","expected":["c6","d3","f3","f7","g4","g6"],"passed":false},{"actual":["e3","f4","h4"],"check":"knight on g2","expected":["e3","f4","h4"],"passed":true},{"actual":["a1","a3","b4","d4","e1","e3"],"check":"knight c2 reaches a1 area","expected":["a1","a3","b4","d4","e1","e3"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"corner a1\", \"actual\": [\"b3\", \"c2\"], \"expected\": [\"b3\", \"c2\"], \"passed\": true}, {\"check\": \"h-file knight\", \"actual\": [\"f2\", \"f4\", \"g5\", \"h1\"], \"expected\": [\"f2\", \"f4\", \"g1\", \"g5\"], \"passed\": false}, {\"check\": \"g-file knight\", \"actual\": [\"e4\", \"e6\", \"f7\", \"g3\", \"h3\", \"h7\"], \"expected\": [\"e4\", \"e6\", \"f3\", \"f7\", \"h3\", \"h7\"], \"passed\": false}, {\"check\": \"b-file knight\", \"actual\": [\"a6\", \"b2\", \"c2\", \"c6\", \"d3\", \"d5\"], \"expected\": [\"a2\", \"a6\", \"c2\", \"c6\", \"d3\", \"d5\"], \"passed\": false}, {\"check\": \"centre with own and enemy\", \"actual\": [\"b3\", \"b5\", \"c6\", \"d2\", \"e2\", \"f3\"], \"expected\": [\"b3\", \"b5\", \"c2\", \"c6\", \"e2\", \"f3\"], \"passed\": false}, {\"check\": \"black knight own pieces\", \"actual\": [\"c6\", \"e3\", \"f3\", \"f7\", \"g4\", \"g6\"], \"expected\": [\"c6\", \"d3\", \"f3\", \"f7\", \"g4\", \"g6\"], \"passed\": false}, {\"check\": \"knight on g2\", \"actual\": [\"e3\", \"f4\", \"h4\"], \"expected\": [\"e3\", \"f4\", \"h4\"], \"passed\": true}, {\"check\": \"knight c2 reaches a1 area\", \"actual\": [\"a1\", \"a3\", \"b4\", \"d4\", \"e1\", \"e3\"], \"expected\": [\"a1\", \"a3\", \"b4\", \"d4\", \"e1\", \"e3\"], \"passed\": true}], \"passed\": false}\n"}},"member_only":{"stages":["fixed"],"fields":["implementations.fixed","verification.fixed","harness","repair"],"note":"The verified repair, its recorded checks, the repair description, and the scoring harness are available to members."}}