{"abstract":"A delayed earlier-timestamped swap overrides a later one.","category":"Fantasy sports scoring","checks":7,"contract":"Apply lineup swaps [time, slot, incoming player] in time order (submission order on equal times). A swap is rejected if either the outgoing or incoming player's game has kicked off at or before the swap time, or if the incoming player already occupies another slot. Return the final lineup, the sorted indices of rejected swaps and the lineup's total points.","contract_signature":"lineup, swaps, kickoffs, points","evaluation_group":"w2-fantasy-sports-scoring-kickoff-lineup-lock","failed_approach":"Sorting equal times by descending submission index reverses same-second swaps.","family":"w2-fantasy-sports-scoring-kickoff-lineup-lock-same-time-submission-order","id":"FA-84971","implementations":{"attempt":{"sha256":"2460061a5956aeff1ca77d232869942e07dea28729e2b78b155b21dc1c4ffb59","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(lineup, swaps, kickoffs, points):\n    cur = dict(lineup)\n    rejected = []\n    order = sorted(range(len(swaps)), key=lambda i: (swaps[i][0], -i))\n    for i in order:\n        t, slot, new = swaps[i]\n        old = cur[slot]\n        if kickoffs[old] <= t or kickoffs[new] <= t:\n            rejected.append(i)\n            continue\n        if new in cur.values():\n            rejected.append(i)\n            continue\n        cur[slot] = new\n    total = sum(points[p] for p in cur.values())\n    return {'final': cur, 'rejected': sorted(rejected), 'total': total}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[150, 'S2', 'p4'], [100, 'S2', 'p6'], [50, 'S3', 'p5'], [100, 'S3', 'p6'], [250, 'S2', 'p5']],\n    {'p0': 100, 'p1': 200, 'p2': 300, 'p3': 200, 'p4': 200, 'p5': 300, 'p6': 200},\n    {'p0': 20, 'p1': 29, 'p2': 2, 'p3': 5, 'p4': 13, 'p5': 17, 'p6': 2}],\n   {'final': {'S1': 'p0', 'S2': 'p4', 'S3': 'p5'}, 'rejected': [3, 4], 'total': 50}),\n  ('partial repair probe: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[300, 'S3', 'p4'], [50, 'S3', 'p4'], [50, 'S1', 'p4'], [200, 'S2', 'p0'], [50, 'S2', 'p4']],\n    {'p0': 300, 'p1': 200, 'p2': 300, 'p3': 300, 'p4': 100, 'p5': 300, 'p6': 200},\n    {'p0': 2, 'p1': 20, 'p2': 15, 'p3': 5, 'p4': 17, 'p5': 4, 'p6': 10}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p4'}, 'rejected': [0, 2, 3, 4], 'total': 39}),\n  ('second regression',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[100, 'S1', 'p2'], [300, 'S3', 'p5'], [50, 'S3', 'p1'], [50, 'S2', 'p4'], [100, 'S2', 'p0']],\n    {'p0': 300, 'p1': 200, 'p2': 300, 'p3': 100, 'p4': 100, 'p5': 300, 'p6': 100},\n    {'p0': 1, 'p1': 27, 'p2': 23, 'p3': 28, 'p4': 22, 'p5': 14, 'p6': 1}],\n   {'final': {'S1': 'p0', 'S2': 'p4', 'S3': 'p2'}, 'rejected': [0, 1, 2, 4], 'total': 46}),\n  ('normal control 1',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[50, 'S1', 'p4']],\n    {'p0': 300, 'p1': 200, 'p2': 200, 'p3': 100, 'p4': 300, 'p5': 300, 'p6': 300},\n    {'p0': 16, 'p1': 6, 'p2': 29, 'p3': 5, 'p4': 4, 'p5': 28, 'p6': 30}],\n   {'final': {'S1': 'p4', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [], 'total': 39}),\n  ('normal control 2',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[250, 'S1', 'p4'], [300, 'S2', 'p6'], [150, 'S1', 'p3'], [150, 'S2', 'p6']],\n    {'p0': 300, 'p1': 100, 'p2': 300, 'p3': 100, 'p4': 200, 'p5': 300, 'p6': 200},\n    {'p0': 9, 'p1': 13, 'p2': 26, 'p3': 23, 'p4': 19, 'p5': 21, 'p6': 26}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2, 3], 'total': 48}),\n  ('normal control 3',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[250, 'S3', 'p2']],\n    {'p0': 200, 'p1': 100, 'p2': 200, 'p3': 300, 'p4': 100, 'p5': 300, 'p6': 100},\n    {'p0': 4, 'p1': 7, 'p2': 11, 'p3': 30, 'p4': 28, 'p5': 7, 'p6': 15}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0], 'total': 22}),\n  ('normal control 4',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[300, 'S3', 'p4']],\n    {'p0': 300, 'p1': 200, 'p2': 100, 'p3': 100, 'p4': 300, 'p5': 300, 'p6': 300},\n    {'p0': 9, 'p1': 0, 'p2': 16, 'p3': 29, 'p4': 18, 'p5': 15, 'p6': 20}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0], 'total': 25})],\n [('regression: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[150, 'S3', 'p1'], [50, 'S2', 'p6']],\n    {'p0': 300, 'p1': 300, 'p2': 300, 'p3': 200, 'p4': 200, 'p5': 300, 'p6': 200},\n    {'p0': 17, 'p1': 20, 'p2': 19, 'p3': 15, 'p4': 18, 'p5': 17, 'p6': 17}],\n   {'final': {'S1': 'p0', 'S2': 'p6', 'S3': 'p1'}, 'rejected': [], 'total': 54}),\n  ('partial repair probe: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[150, 'S2', 'p6'], [50, 'S2', 'p0'], [100, 'S2', 'p0'], [50, 'S1', 'p3'], [200, 'S3', 'p5']],\n    {'p0': 100, 'p1': 100, 'p2': 100, 'p3': 100, 'p4': 300, 'p5': 100, 'p6': 300},\n    {'p0': 27, 'p1': 16, 'p2': 13, 'p3': 9, 'p4': 13, 'p5': 4, 'p6': 22}],\n   {'final': {'S1': 'p3', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2, 4], 'total': 38}),\n  ('second regression',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[200, 'S1', 'p4'], [150, 'S3', 'p0'], [100, 'S1', 'p4'], [150, 'S2', 'p2']],\n    {'p0': 300, 'p1': 100, 'p2': 200, 'p3': 200, 'p4': 300, 'p5': 300, 'p6': 100},\n    {'p0': 3, 'p1': 28, 'p2': 23, 'p3': 9, 'p4': 8, 'p5': 7, 'p6': 28}],\n   {'final': {'S1': 'p4', 'S2': 'p1', 'S3': 'p0'}, 'rejected': [0, 3], 'total': 39}),\n  ('normal control 1',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[200, 'S3', 'p4'], [250, 'S1', 'p2'], [150, 'S1', 'p4']],\n    {'p0': 200, 'p1': 300, 'p2': 200, 'p3': 100, 'p4': 100, 'p5': 300, 'p6': 300},\n    {'p0': 25, 'p1': 10, 'p2': 21, 'p3': 13, 'p4': 30, 'p5': 14, 'p6': 29}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2], 'total': 56}),\n  ('normal control 2',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[200, 'S1', 'p5']],\n    {'p0': 100, 'p1': 300, 'p2': 200, 'p3': 100, 'p4': 300, 'p5': 200, 'p6': 200},\n    {'p0': 10, 'p1': 3, 'p2': 12, 'p3': 12, 'p4': 15, 'p5': 17, 'p6': 15}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0], 'total': 25}),\n  ('normal control 3',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[250, 'S3', 'p3']],\n    {'p0': 200, 'p1': 100, 'p2': 300, 'p3': 200, 'p4': 300, 'p5': 100, 'p6': 100},\n    {'p0': 30, 'p1': 27, 'p2': 25, 'p3': 23, 'p4': 4, 'p5': 4, 'p6': 29}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0], 'total': 82}),\n  ('normal control 4',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[50, 'S3', 'p1'], [150, 'S1', 'p4'], [100, 'S1', 'p1']],\n    {'p0': 300, 'p1': 200, 'p2': 100, 'p3': 100, 'p4': 300, 'p5': 100, 'p6': 200},\n    {'p0': 22, 'p1': 28, 'p2': 16, 'p3': 9, 'p4': 14, 'p5': 11, 'p6': 20}],\n   {'final': {'S1': 'p4', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 2], 'total': 58})],\n [('regression: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[200, 'S3', 'p0'], [200, 'S3', 'p1'], [150, 'S1', 'p4'], [100, 'S1', 'p3'], [150, 'S3', 'p4']],\n    {'p0': 300, 'p1': 100, 'p2': 300, 'p3': 200, 'p4': 300, 'p5': 100, 'p6': 200},\n    {'p0': 18, 'p1': 5, 'p2': 6, 'p3': 26, 'p4': 17, 'p5': 1, 'p6': 26}],\n   {'final': {'S1': 'p4', 'S2': 'p1', 'S3': 'p0'}, 'rejected': [1, 4], 'total': 40}),\n  ('partial repair probe: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[200, 'S1', 'p3'], [50, 'S1', 'p0'], [50, 'S1', 'p6']],\n    {'p0': 300, 'p1': 300, 'p2': 200, 'p3': 200, 'p4': 200, 'p5': 300, 'p6': 100},\n    {'p0': 25, 'p1': 8, 'p2': 9, 'p3': 13, 'p4': 11, 'p5': 27, 'p6': 17}],\n   {'final': {'S1': 'p6', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1], 'total': 34}),\n  ('second regression',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[100, 'S3', 'p4'], [100, 'S2', 'p4'], [50, 'S1', 'p4'], [250, 'S1', 'p5']],\n    {'p0': 200, 'p1': 200, 'p2': 100, 'p3': 100, 'p4': 200, 'p5': 100, 'p6': 200},\n    {'p0': 24, 'p1': 13, 'p2': 13, 'p3': 10, 'p4': 13, 'p5': 14, 'p6': 7}],\n   {'final': {'S1': 'p4', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 3], 'total': 39}),\n  ('normal control 1',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[100, 'S2', 'p0']],\n    {'p0': 100, 'p1': 300, 'p2': 200, 'p3': 100, 'p4': 300, 'p5': 100, 'p6': 100},\n    {'p0': 13, 'p1': 13, 'p2': 28, 'p3': 30, 'p4': 1, 'p5': 29, 'p6': 21}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0], 'total': 54}),\n  ('normal control 2',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[150, 'S1', 'p3'], [250, 'S3', 'p0'], [150, 'S3', 'p4'], [200, 'S2', 'p2']],\n    {'p0': 300, 'p1': 100, 'p2': 200, 'p3': 100, 'p4': 100, 'p5': 300, 'p6': 300},\n    {'p0': 27, 'p1': 12, 'p2': 26, 'p3': 15, 'p4': 6, 'p5': 15, 'p6': 20}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2, 3], 'total': 65}),\n  ('normal control 3',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[100, 'S3', 'p3']],\n    {'p0': 300, 'p1': 200, 'p2': 100, 'p3': 200, 'p4': 300, 'p5': 100, 'p6': 200},\n    {'p0': 1, 'p1': 16, 'p2': 1, 'p3': 19, 'p4': 2, 'p5': 24, 'p6': 24}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0], 'total': 18}),\n  ('normal control 4',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[50, 'S2', 'p6'], [300, 'S3', 'p6'], [200, 'S2', 'p3'], [300, 'S2', 'p4']],\n    {'p0': 200, 'p1': 300, 'p2': 200, 'p3': 100, 'p4': 300, 'p5': 200, 'p6': 300},\n    {'p0': 6, 'p1': 16, 'p2': 26, 'p3': 13, 'p4': 5, 'p5': 3, 'p6': 17}],\n   {'final': {'S1': 'p0', 'S2': 'p6', 'S3': 'p2'}, 'rejected': [1, 2, 3], 'total': 49})],\n [('regression: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[250, 'S1', 'p3'], [250, 'S2', 'p1'], [150, 'S2', 'p3'], [50, 'S1', 'p3']],\n    {'p0': 300, 'p1': 300, 'p2': 300, 'p3': 200, 'p4': 100, 'p5': 300, 'p6': 200},\n    {'p0': 4, 'p1': 22, 'p2': 7, 'p3': 17, 'p4': 19, 'p5': 25, 'p6': 12}],\n   {'final': {'S1': 'p3', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2], 'total': 46}),\n  ('partial repair probe: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[150, 'S2', 'p0'], [150, 'S1', 'p3']],\n    {'p0': 200, 'p1': 200, 'p2': 100, 'p3': 300, 'p4': 300, 'p5': 100, 'p6': 100},\n    {'p0': 4, 'p1': 17, 'p2': 29, 'p3': 22, 'p4': 18, 'p5': 4, 'p6': 23}],\n   {'final': {'S1': 'p3', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0], 'total': 68}),\n  ('second regression',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[150, 'S3', 'p6'], [50, 'S1', 'p6'], [300, 'S1', 'p4'], [50, 'S2', 'p6']],\n    {'p0': 200, 'p1': 200, 'p2': 200, 'p3': 300, 'p4': 100, 'p5': 300, 'p6': 100},\n    {'p0': 13, 'p1': 27, 'p2': 14, 'p3': 2, 'p4': 28, 'p5': 12, 'p6': 2}],\n   {'final': {'S1': 'p6', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 2, 3], 'total': 43}),\n  ('normal control 1',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[250, 'S1', 'p5'], [50, 'S1', 'p3'], [300, 'S2', 'p4'], [200, 'S3', 'p3'], [100, 'S1', 'p2']],\n    {'p0': 200, 'p1': 200, 'p2': 300, 'p3': 100, 'p4': 200, 'p5': 100, 'p6': 200},\n    {'p0': 3, 'p1': 18, 'p2': 6, 'p3': 0, 'p4': 11, 'p5': 5, 'p6': 28}],\n   {'final': {'S1': 'p3', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 2, 3, 4], 'total': 24}),\n  ('normal control 2',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[100, 'S1', 'p0'], [250, 'S2', 'p1'], [300, 'S2', 'p6'], [100, 'S2', 'p0'], [50, 'S3', 'p0']],\n    {'p0': 200, 'p1': 300, 'p2': 300, 'p3': 200, 'p4': 200, 'p5': 200, 'p6': 100},\n    {'p0': 20, 'p1': 0, 'p2': 10, 'p3': 26, 'p4': 12, 'p5': 1, 'p6': 18}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2, 3, 4], 'total': 30}),\n  ('normal control 3',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[200, 'S2', 'p1'], [50, 'S2', 'p2'], [200, 'S2', 'p0']],\n    {'p0': 300, 'p1': 300, 'p2': 200, 'p3': 200, 'p4': 200, 'p5': 300, 'p6': 300},\n    {'p0': 15, 'p1': 26, 'p2': 20, 'p3': 3, 'p4': 26, 'p5': 11, 'p6': 8}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2], 'total': 61}),\n  ('normal control 4',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[100, 'S3', 'p4'], [150, 'S1', 'p5'], [150, 'S3', 'p1'], [300, 'S3', 'p1']],\n    {'p0': 200, 'p1': 300, 'p2': 300, 'p3': 100, 'p4': 300, 'p5': 300, 'p6': 300},\n    {'p0': 9, 'p1': 21, 'p2': 28, 'p3': 2, 'p4': 11, 'p5': 2, 'p6': 13}],\n   {'final': {'S1': 'p5', 'S2': 'p1', 'S3': 'p4'}, 'rejected': [2, 3], 'total': 34})],\n [('regression: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[200, 'S2', 'p0'], [150, 'S2', 'p4'], [100, 'S2', 'p4']],\n    {'p0': 300, 'p1': 300, 'p2': 100, 'p3': 200, 'p4': 300, 'p5': 100, 'p6': 200},\n    {'p0': 21, 'p1': 6, 'p2': 27, 'p3': 15, 'p4': 24, 'p5': 20, 'p6': 23}],\n   {'final': {'S1': 'p0', 'S2': 'p4', 'S3': 'p2'}, 'rejected': [0, 1], 'total': 72}),\n  ('partial repair probe: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[100, 'S2', 'p6'], [150, 'S3', 'p6'], [100, 'S3', 'p6']],\n    {'p0': 300, 'p1': 300, 'p2': 200, 'p3': 300, 'p4': 100, 'p5': 200, 'p6': 300},\n    {'p0': 14, 'p1': 23, 'p2': 7, 'p3': 20, 'p4': 17, 'p5': 20, 'p6': 24}],\n   {'final': {'S1': 'p0', 'S2': 'p6', 'S3': 'p2'}, 'rejected': [1, 2], 'total': 45}),\n  ('second regression',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[50, 'S2', 'p2'], [150, 'S3', 'p6'], [150, 'S3', 'p4']],\n    {'p0': 300, 'p1': 200, 'p2': 300, 'p3': 200, 'p4': 200, 'p5': 200, 'p6': 200},\n    {'p0': 12, 'p1': 30, 'p2': 21, 'p3': 21, 'p4': 25, 'p5': 1, 'p6': 20}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p4'}, 'rejected': [0], 'total': 67}),\n  ('normal control 1',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[250, 'S2', 'p3'], [200, 'S1', 'p2']],\n    {'p0': 100, 'p1': 100, 'p2': 100, 'p3': 300, 'p4': 200, 'p5': 300, 'p6': 100},\n    {'p0': 19, 'p1': 14, 'p2': 0, 'p3': 5, 'p4': 28, 'p5': 22, 'p6': 11}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1], 'total': 33}),\n  ('normal control 2',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[100, 'S3', 'p4'], [250, 'S3', 'p2'], [300, 'S1', 'p0'], [200, 'S2', 'p4']],\n    {'p0': 300, 'p1': 200, 'p2': 200, 'p3': 100, 'p4': 200, 'p5': 300, 'p6': 100},\n    {'p0': 27, 'p1': 4, 'p2': 19, 'p3': 10, 'p4': 13, 'p5': 16, 'p6': 23}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p4'}, 'rejected': [1, 2, 3], 'total': 44}),\n  ('normal control 3',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[200, 'S1', 'p5'], [300, 'S2', 'p2'], [250, 'S2', 'p2'], [250, 'S2', 'p6'], [100, 'S1', 'p5']],\n    {'p0': 200, 'p1': 200, 'p2': 200, 'p3': 300, 'p4': 200, 'p5': 200, 'p6': 100},\n    {'p0': 10, 'p1': 3, 'p2': 19, 'p3': 21, 'p4': 28, 'p5': 28, 'p6': 7}],\n   {'final': {'S1': 'p5', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2, 3], 'total': 50}),\n  ('normal control 4',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[150, 'S2', 'p2'], [200, 'S3', 'p1'], [300, 'S3', 'p5'], [300, 'S3', 'p4'], [300, 'S1', 'p2']],\n    {'p0': 300, 'p1': 300, 'p2': 300, 'p3': 200, 'p4': 300, 'p5': 300, 'p6': 300},\n    {'p0': 17, 'p1': 28, 'p2': 29, 'p3': 21, 'p4': 15, 'p5': 5, 'p6': 0}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2, 3, 4], 'total': 74})]]\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":"08042cda690a27cbffc73d95b24c1a6e596278cdbe1d82877f01d671bd81635f","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(lineup, swaps, kickoffs, points):\n    cur = dict(lineup)\n    rejected = []\n    order = range(len(swaps))\n    for i in order:\n        t, slot, new = swaps[i]\n        old = cur[slot]\n        if kickoffs[old] <= t or kickoffs[new] <= t:\n            rejected.append(i)\n            continue\n        if new in cur.values():\n            rejected.append(i)\n            continue\n        cur[slot] = new\n    total = sum(points[p] for p in cur.values())\n    return {'final': cur, 'rejected': sorted(rejected), 'total': total}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[150, 'S2', 'p4'], [100, 'S2', 'p6'], [50, 'S3', 'p5'], [100, 'S3', 'p6'], [250, 'S2', 'p5']],\n    {'p0': 100, 'p1': 200, 'p2': 300, 'p3': 200, 'p4': 200, 'p5': 300, 'p6': 200},\n    {'p0': 20, 'p1': 29, 'p2': 2, 'p3': 5, 'p4': 13, 'p5': 17, 'p6': 2}],\n   {'final': {'S1': 'p0', 'S2': 'p4', 'S3': 'p5'}, 'rejected': [3, 4], 'total': 50}),\n  ('partial repair probe: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[300, 'S3', 'p4'], [50, 'S3', 'p4'], [50, 'S1', 'p4'], [200, 'S2', 'p0'], [50, 'S2', 'p4']],\n    {'p0': 300, 'p1': 200, 'p2': 300, 'p3': 300, 'p4': 100, 'p5': 300, 'p6': 200},\n    {'p0': 2, 'p1': 20, 'p2': 15, 'p3': 5, 'p4': 17, 'p5': 4, 'p6': 10}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p4'}, 'rejected': [0, 2, 3, 4], 'total': 39}),\n  ('second regression',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[100, 'S1', 'p2'], [300, 'S3', 'p5'], [50, 'S3', 'p1'], [50, 'S2', 'p4'], [100, 'S2', 'p0']],\n    {'p0': 300, 'p1': 200, 'p2': 300, 'p3': 100, 'p4': 100, 'p5': 300, 'p6': 100},\n    {'p0': 1, 'p1': 27, 'p2': 23, 'p3': 28, 'p4': 22, 'p5': 14, 'p6': 1}],\n   {'final': {'S1': 'p0', 'S2': 'p4', 'S3': 'p2'}, 'rejected': [0, 1, 2, 4], 'total': 46}),\n  ('normal control 1',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[50, 'S1', 'p4']],\n    {'p0': 300, 'p1': 200, 'p2': 200, 'p3': 100, 'p4': 300, 'p5': 300, 'p6': 300},\n    {'p0': 16, 'p1': 6, 'p2': 29, 'p3': 5, 'p4': 4, 'p5': 28, 'p6': 30}],\n   {'final': {'S1': 'p4', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [], 'total': 39}),\n  ('normal control 2',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[250, 'S1', 'p4'], [300, 'S2', 'p6'], [150, 'S1', 'p3'], [150, 'S2', 'p6']],\n    {'p0': 300, 'p1': 100, 'p2': 300, 'p3': 100, 'p4': 200, 'p5': 300, 'p6': 200},\n    {'p0': 9, 'p1': 13, 'p2': 26, 'p3': 23, 'p4': 19, 'p5': 21, 'p6': 26}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2, 3], 'total': 48}),\n  ('normal control 3',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[250, 'S3', 'p2']],\n    {'p0': 200, 'p1': 100, 'p2': 200, 'p3': 300, 'p4': 100, 'p5': 300, 'p6': 100},\n    {'p0': 4, 'p1': 7, 'p2': 11, 'p3': 30, 'p4': 28, 'p5': 7, 'p6': 15}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0], 'total': 22}),\n  ('normal control 4',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[300, 'S3', 'p4']],\n    {'p0': 300, 'p1': 200, 'p2': 100, 'p3': 100, 'p4': 300, 'p5': 300, 'p6': 300},\n    {'p0': 9, 'p1': 0, 'p2': 16, 'p3': 29, 'p4': 18, 'p5': 15, 'p6': 20}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0], 'total': 25})],\n [('regression: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[150, 'S3', 'p1'], [50, 'S2', 'p6']],\n    {'p0': 300, 'p1': 300, 'p2': 300, 'p3': 200, 'p4': 200, 'p5': 300, 'p6': 200},\n    {'p0': 17, 'p1': 20, 'p2': 19, 'p3': 15, 'p4': 18, 'p5': 17, 'p6': 17}],\n   {'final': {'S1': 'p0', 'S2': 'p6', 'S3': 'p1'}, 'rejected': [], 'total': 54}),\n  ('partial repair probe: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[150, 'S2', 'p6'], [50, 'S2', 'p0'], [100, 'S2', 'p0'], [50, 'S1', 'p3'], [200, 'S3', 'p5']],\n    {'p0': 100, 'p1': 100, 'p2': 100, 'p3': 100, 'p4': 300, 'p5': 100, 'p6': 300},\n    {'p0': 27, 'p1': 16, 'p2': 13, 'p3': 9, 'p4': 13, 'p5': 4, 'p6': 22}],\n   {'final': {'S1': 'p3', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2, 4], 'total': 38}),\n  ('second regression',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[200, 'S1', 'p4'], [150, 'S3', 'p0'], [100, 'S1', 'p4'], [150, 'S2', 'p2']],\n    {'p0': 300, 'p1': 100, 'p2': 200, 'p3': 200, 'p4': 300, 'p5': 300, 'p6': 100},\n    {'p0': 3, 'p1': 28, 'p2': 23, 'p3': 9, 'p4': 8, 'p5': 7, 'p6': 28}],\n   {'final': {'S1': 'p4', 'S2': 'p1', 'S3': 'p0'}, 'rejected': [0, 3], 'total': 39}),\n  ('normal control 1',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[200, 'S3', 'p4'], [250, 'S1', 'p2'], [150, 'S1', 'p4']],\n    {'p0': 200, 'p1': 300, 'p2': 200, 'p3': 100, 'p4': 100, 'p5': 300, 'p6': 300},\n    {'p0': 25, 'p1': 10, 'p2': 21, 'p3': 13, 'p4': 30, 'p5': 14, 'p6': 29}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2], 'total': 56}),\n  ('normal control 2',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[200, 'S1', 'p5']],\n    {'p0': 100, 'p1': 300, 'p2': 200, 'p3': 100, 'p4': 300, 'p5': 200, 'p6': 200},\n    {'p0': 10, 'p1': 3, 'p2': 12, 'p3': 12, 'p4': 15, 'p5': 17, 'p6': 15}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0], 'total': 25}),\n  ('normal control 3',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[250, 'S3', 'p3']],\n    {'p0': 200, 'p1': 100, 'p2': 300, 'p3': 200, 'p4': 300, 'p5': 100, 'p6': 100},\n    {'p0': 30, 'p1': 27, 'p2': 25, 'p3': 23, 'p4': 4, 'p5': 4, 'p6': 29}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0], 'total': 82}),\n  ('normal control 4',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[50, 'S3', 'p1'], [150, 'S1', 'p4'], [100, 'S1', 'p1']],\n    {'p0': 300, 'p1': 200, 'p2': 100, 'p3': 100, 'p4': 300, 'p5': 100, 'p6': 200},\n    {'p0': 22, 'p1': 28, 'p2': 16, 'p3': 9, 'p4': 14, 'p5': 11, 'p6': 20}],\n   {'final': {'S1': 'p4', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 2], 'total': 58})],\n [('regression: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[200, 'S3', 'p0'], [200, 'S3', 'p1'], [150, 'S1', 'p4'], [100, 'S1', 'p3'], [150, 'S3', 'p4']],\n    {'p0': 300, 'p1': 100, 'p2': 300, 'p3': 200, 'p4': 300, 'p5': 100, 'p6': 200},\n    {'p0': 18, 'p1': 5, 'p2': 6, 'p3': 26, 'p4': 17, 'p5': 1, 'p6': 26}],\n   {'final': {'S1': 'p4', 'S2': 'p1', 'S3': 'p0'}, 'rejected': [1, 4], 'total': 40}),\n  ('partial repair probe: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[200, 'S1', 'p3'], [50, 'S1', 'p0'], [50, 'S1', 'p6']],\n    {'p0': 300, 'p1': 300, 'p2': 200, 'p3': 200, 'p4': 200, 'p5': 300, 'p6': 100},\n    {'p0': 25, 'p1': 8, 'p2': 9, 'p3': 13, 'p4': 11, 'p5': 27, 'p6': 17}],\n   {'final': {'S1': 'p6', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1], 'total': 34}),\n  ('second regression',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[100, 'S3', 'p4'], [100, 'S2', 'p4'], [50, 'S1', 'p4'], [250, 'S1', 'p5']],\n    {'p0': 200, 'p1': 200, 'p2': 100, 'p3': 100, 'p4': 200, 'p5': 100, 'p6': 200},\n    {'p0': 24, 'p1': 13, 'p2': 13, 'p3': 10, 'p4': 13, 'p5': 14, 'p6': 7}],\n   {'final': {'S1': 'p4', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 3], 'total': 39}),\n  ('normal control 1',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[100, 'S2', 'p0']],\n    {'p0': 100, 'p1': 300, 'p2': 200, 'p3': 100, 'p4': 300, 'p5': 100, 'p6': 100},\n    {'p0': 13, 'p1': 13, 'p2': 28, 'p3': 30, 'p4': 1, 'p5': 29, 'p6': 21}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0], 'total': 54}),\n  ('normal control 2',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[150, 'S1', 'p3'], [250, 'S3', 'p0'], [150, 'S3', 'p4'], [200, 'S2', 'p2']],\n    {'p0': 300, 'p1': 100, 'p2': 200, 'p3': 100, 'p4': 100, 'p5': 300, 'p6': 300},\n    {'p0': 27, 'p1': 12, 'p2': 26, 'p3': 15, 'p4': 6, 'p5': 15, 'p6': 20}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2, 3], 'total': 65}),\n  ('normal control 3',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[100, 'S3', 'p3']],\n    {'p0': 300, 'p1': 200, 'p2': 100, 'p3': 200, 'p4': 300, 'p5': 100, 'p6': 200},\n    {'p0': 1, 'p1': 16, 'p2': 1, 'p3': 19, 'p4': 2, 'p5': 24, 'p6': 24}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0], 'total': 18}),\n  ('normal control 4',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[50, 'S2', 'p6'], [300, 'S3', 'p6'], [200, 'S2', 'p3'], [300, 'S2', 'p4']],\n    {'p0': 200, 'p1': 300, 'p2': 200, 'p3': 100, 'p4': 300, 'p5': 200, 'p6': 300},\n    {'p0': 6, 'p1': 16, 'p2': 26, 'p3': 13, 'p4': 5, 'p5': 3, 'p6': 17}],\n   {'final': {'S1': 'p0', 'S2': 'p6', 'S3': 'p2'}, 'rejected': [1, 2, 3], 'total': 49})],\n [('regression: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[250, 'S1', 'p3'], [250, 'S2', 'p1'], [150, 'S2', 'p3'], [50, 'S1', 'p3']],\n    {'p0': 300, 'p1': 300, 'p2': 300, 'p3': 200, 'p4': 100, 'p5': 300, 'p6': 200},\n    {'p0': 4, 'p1': 22, 'p2': 7, 'p3': 17, 'p4': 19, 'p5': 25, 'p6': 12}],\n   {'final': {'S1': 'p3', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2], 'total': 46}),\n  ('partial repair probe: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[150, 'S2', 'p0'], [150, 'S1', 'p3']],\n    {'p0': 200, 'p1': 200, 'p2': 100, 'p3': 300, 'p4': 300, 'p5': 100, 'p6': 100},\n    {'p0': 4, 'p1': 17, 'p2': 29, 'p3': 22, 'p4': 18, 'p5': 4, 'p6': 23}],\n   {'final': {'S1': 'p3', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0], 'total': 68}),\n  ('second regression',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[150, 'S3', 'p6'], [50, 'S1', 'p6'], [300, 'S1', 'p4'], [50, 'S2', 'p6']],\n    {'p0': 200, 'p1': 200, 'p2': 200, 'p3': 300, 'p4': 100, 'p5': 300, 'p6': 100},\n    {'p0': 13, 'p1': 27, 'p2': 14, 'p3': 2, 'p4': 28, 'p5': 12, 'p6': 2}],\n   {'final': {'S1': 'p6', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 2, 3], 'total': 43}),\n  ('normal control 1',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[250, 'S1', 'p5'], [50, 'S1', 'p3'], [300, 'S2', 'p4'], [200, 'S3', 'p3'], [100, 'S1', 'p2']],\n    {'p0': 200, 'p1': 200, 'p2': 300, 'p3': 100, 'p4': 200, 'p5': 100, 'p6': 200},\n    {'p0': 3, 'p1': 18, 'p2': 6, 'p3': 0, 'p4': 11, 'p5': 5, 'p6': 28}],\n   {'final': {'S1': 'p3', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 2, 3, 4], 'total': 24}),\n  ('normal control 2',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[100, 'S1', 'p0'], [250, 'S2', 'p1'], [300, 'S2', 'p6'], [100, 'S2', 'p0'], [50, 'S3', 'p0']],\n    {'p0': 200, 'p1': 300, 'p2': 300, 'p3': 200, 'p4': 200, 'p5': 200, 'p6': 100},\n    {'p0': 20, 'p1': 0, 'p2': 10, 'p3': 26, 'p4': 12, 'p5': 1, 'p6': 18}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2, 3, 4], 'total': 30}),\n  ('normal control 3',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[200, 'S2', 'p1'], [50, 'S2', 'p2'], [200, 'S2', 'p0']],\n    {'p0': 300, 'p1': 300, 'p2': 200, 'p3': 200, 'p4': 200, 'p5': 300, 'p6': 300},\n    {'p0': 15, 'p1': 26, 'p2': 20, 'p3': 3, 'p4': 26, 'p5': 11, 'p6': 8}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2], 'total': 61}),\n  ('normal control 4',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[100, 'S3', 'p4'], [150, 'S1', 'p5'], [150, 'S3', 'p1'], [300, 'S3', 'p1']],\n    {'p0': 200, 'p1': 300, 'p2': 300, 'p3': 100, 'p4': 300, 'p5': 300, 'p6': 300},\n    {'p0': 9, 'p1': 21, 'p2': 28, 'p3': 2, 'p4': 11, 'p5': 2, 'p6': 13}],\n   {'final': {'S1': 'p5', 'S2': 'p1', 'S3': 'p4'}, 'rejected': [2, 3], 'total': 34})],\n [('regression: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[200, 'S2', 'p0'], [150, 'S2', 'p4'], [100, 'S2', 'p4']],\n    {'p0': 300, 'p1': 300, 'p2': 100, 'p3': 200, 'p4': 300, 'p5': 100, 'p6': 200},\n    {'p0': 21, 'p1': 6, 'p2': 27, 'p3': 15, 'p4': 24, 'p5': 20, 'p6': 23}],\n   {'final': {'S1': 'p0', 'S2': 'p4', 'S3': 'p2'}, 'rejected': [0, 1], 'total': 72}),\n  ('partial repair probe: same-time submission order',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[100, 'S2', 'p6'], [150, 'S3', 'p6'], [100, 'S3', 'p6']],\n    {'p0': 300, 'p1': 300, 'p2': 200, 'p3': 300, 'p4': 100, 'p5': 200, 'p6': 300},\n    {'p0': 14, 'p1': 23, 'p2': 7, 'p3': 20, 'p4': 17, 'p5': 20, 'p6': 24}],\n   {'final': {'S1': 'p0', 'S2': 'p6', 'S3': 'p2'}, 'rejected': [1, 2], 'total': 45}),\n  ('second regression',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[50, 'S2', 'p2'], [150, 'S3', 'p6'], [150, 'S3', 'p4']],\n    {'p0': 300, 'p1': 200, 'p2': 300, 'p3': 200, 'p4': 200, 'p5': 200, 'p6': 200},\n    {'p0': 12, 'p1': 30, 'p2': 21, 'p3': 21, 'p4': 25, 'p5': 1, 'p6': 20}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p4'}, 'rejected': [0], 'total': 67}),\n  ('normal control 1',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, [[250, 'S2', 'p3'], [200, 'S1', 'p2']],\n    {'p0': 100, 'p1': 100, 'p2': 100, 'p3': 300, 'p4': 200, 'p5': 300, 'p6': 100},\n    {'p0': 19, 'p1': 14, 'p2': 0, 'p3': 5, 'p4': 28, 'p5': 22, 'p6': 11}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1], 'total': 33}),\n  ('normal control 2',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[100, 'S3', 'p4'], [250, 'S3', 'p2'], [300, 'S1', 'p0'], [200, 'S2', 'p4']],\n    {'p0': 300, 'p1': 200, 'p2': 200, 'p3': 100, 'p4': 200, 'p5': 300, 'p6': 100},\n    {'p0': 27, 'p1': 4, 'p2': 19, 'p3': 10, 'p4': 13, 'p5': 16, 'p6': 23}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p4'}, 'rejected': [1, 2, 3], 'total': 44}),\n  ('normal control 3',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[200, 'S1', 'p5'], [300, 'S2', 'p2'], [250, 'S2', 'p2'], [250, 'S2', 'p6'], [100, 'S1', 'p5']],\n    {'p0': 200, 'p1': 200, 'p2': 200, 'p3': 300, 'p4': 200, 'p5': 200, 'p6': 100},\n    {'p0': 10, 'p1': 3, 'p2': 19, 'p3': 21, 'p4': 28, 'p5': 28, 'p6': 7}],\n   {'final': {'S1': 'p5', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2, 3], 'total': 50}),\n  ('normal control 4',\n   [{'S1': 'p0', 'S2': 'p1', 'S3': 'p2'},\n    [[150, 'S2', 'p2'], [200, 'S3', 'p1'], [300, 'S3', 'p5'], [300, 'S3', 'p4'], [300, 'S1', 'p2']],\n    {'p0': 300, 'p1': 300, 'p2': 300, 'p3': 200, 'p4': 300, 'p5': 300, 'p6': 300},\n    {'p0': 17, 'p1': 28, 'p2': 29, 'p3': 21, 'p4': 15, 'p5': 5, 'p6': 0}],\n   {'final': {'S1': 'p0', 'S2': 'p1', 'S3': 'p2'}, 'rejected': [0, 1, 2, 3, 4], 'total': 74})]]\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 toy scoring contract stipulated for this example; it is not the rulebook of any real fantasy platform. 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-fantasy-sports-scoring-kickoff-lineup-lock-same-time-submission-order","generated_at":"2026-09-29T14:50:35.994794+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Game-time lineup locks decide whether late swaps count; wrong lock semantics let users bench players after they score.","root_cause":"Swaps are applied in list order rather than sorted by swap time.","sha256":"6d29cffaebbf3f3a9b293ac453539e97659dfad4409dd766b704275b5427bf0d","title":"Swaps applied in arrival order instead of time order · 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":40.706,"exit_code":1,"observations":[{"actual":{"final":{"S1":"p0","S2":"p4","S3":"p6"},"rejected":[1,4],"total":35},"check":"regression: same-time submission order","expected":{"final":{"S1":"p0","S2":"p4","S3":"p5"},"rejected":[3,4],"total":50},"passed":false},{"actual":{"final":{"S1":"p0","S2":"p4","S3":"p2"},"rejected":[0,1,2,3],"total":34},"check":"partial repair probe: same-time submission order","expected":{"final":{"S1":"p0","S2":"p1","S3":"p4"},"rejected":[0,2,3,4],"total":39},"passed":false},{"actual":{"final":{"S1":"p2","S2":"p4","S3":"p1"},"rejected":[1,4],"total":72},"check":"second regression","expected":{"final":{"S1":"p0","S2":"p4","S3":"p2"},"rejected":[0,1,2,4],"total":46},"passed":false},{"actual":{"final":{"S1":"p4","S2":"p1","S3":"p2"},"rejected":[],"total":39},"check":"normal control 1","expected":{"final":{"S1":"p4","S2":"p1","S3":"p2"},"rejected":[],"total":39},"passed":true},{"actual":{"final":{"S1":"p0","S2":"p1","S3":"p2"},"rejected":[0,1,2,3],"total":48},"check":"normal control 2","expected":{"final":{"S1":"p0","S2":"p1","S3":"p2"},"rejected":[0,1,2,3],"total":48},"passed":true},{"actual":{"final":{"S1":"p0","S2":"p1","S3":"p2"},"rejected":[0],"total":22},"check":"normal control 3","expected":{"final":{"S1":"p0","S2":"p1","S3":"p2"},"rejected":[0],"total":22},"passed":true},{"actual":{"final":{"S1":"p0","S2":"p1","S3":"p2"},"rejected":[0],"total":25},"check":"normal control 4","expected":{"final":{"S1":"p0","S2":"p1","S3":"p2"},"rejected":[0],"total":25},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: same-time submission order\", \"actual\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p4\", \"S3\": \"p6\"}, \"rejected\": [1, 4], \"total\": 35}, \"expected\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p4\", \"S3\": \"p5\"}, \"rejected\": [3, 4], \"total\": 50}, \"passed\": false}, {\"check\": \"partial repair probe: same-time submission order\", \"actual\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p4\", \"S3\": \"p2\"}, \"rejected\": [0, 1, 2, 3], \"total\": 34}, \"expected\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p1\", \"S3\": \"p4\"}, \"rejected\": [0, 2, 3, 4], \"total\": 39}, \"passed\": false}, {\"check\": \"second regression\", \"actual\": {\"final\": {\"S1\": \"p2\", \"S2\": \"p4\", \"S3\": \"p1\"}, \"rejected\": [1, 4], \"total\": 72}, \"expected\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p4\", \"S3\": \"p2\"}, \"rejected\": [0, 1, 2, 4], \"total\": 46}, \"passed\": false}, {\"check\": \"normal control 1\", \"actual\": {\"final\": {\"S1\": \"p4\", \"S2\": \"p1\", \"S3\": \"p2\"}, \"rejected\": [], \"total\": 39}, \"expected\": {\"final\": {\"S1\": \"p4\", \"S2\": \"p1\", \"S3\": \"p2\"}, \"rejected\": [], \"total\": 39}, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p1\", \"S3\": \"p2\"}, \"rejected\": [0, 1, 2, 3], \"total\": 48}, \"expected\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p1\", \"S3\": \"p2\"}, \"rejected\": [0, 1, 2, 3], \"total\": 48}, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p1\", \"S3\": \"p2\"}, \"rejected\": [0], \"total\": 22}, \"expected\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p1\", \"S3\": \"p2\"}, \"rejected\": [0], \"total\": 22}, \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p1\", \"S3\": \"p2\"}, \"rejected\": [0], \"total\": 25}, \"expected\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p1\", \"S3\": \"p2\"}, \"rejected\": [0], \"total\": 25}, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.715,"exit_code":1,"observations":[{"actual":{"final":{"S1":"p0","S2":"p6","S3":"p5"},"rejected":[3,4],"total":39},"check":"regression: same-time submission order","expected":{"final":{"S1":"p0","S2":"p4","S3":"p5"},"rejected":[3,4],"total":50},"passed":false},{"actual":{"final":{"S1":"p0","S2":"p1","S3":"p4"},"rejected":[0,2,3,4],"total":39},"check":"partial repair probe: same-time submission order","expected":{"final":{"S1":"p0","S2":"p1","S3":"p4"},"rejected":[0,2,3,4],"total":39},"passed":true},{"actual":{"final":{"S1":"p0","S2":"p4","S3":"p2"},"rejected":[0,1,2,4],"total":46},"check":"second regression","expected":{"final":{"S1":"p0","S2":"p4","S3":"p2"},"rejected":[0,1,2,4],"total":46},"passed":true},{"actual":{"final":{"S1":"p4","S2":"p1","S3":"p2"},"rejected":[],"total":39},"check":"normal control 1","expected":{"final":{"S1":"p4","S2":"p1","S3":"p2"},"rejected":[],"total":39},"passed":true},{"actual":{"final":{"S1":"p0","S2":"p1","S3":"p2"},"rejected":[0,1,2,3],"total":48},"check":"normal control 2","expected":{"final":{"S1":"p0","S2":"p1","S3":"p2"},"rejected":[0,1,2,3],"total":48},"passed":true},{"actual":{"final":{"S1":"p0","S2":"p1","S3":"p2"},"rejected":[0],"total":22},"check":"normal control 3","expected":{"final":{"S1":"p0","S2":"p1","S3":"p2"},"rejected":[0],"total":22},"passed":true},{"actual":{"final":{"S1":"p0","S2":"p1","S3":"p2"},"rejected":[0],"total":25},"check":"normal control 4","expected":{"final":{"S1":"p0","S2":"p1","S3":"p2"},"rejected":[0],"total":25},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: same-time submission order\", \"actual\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p6\", \"S3\": \"p5\"}, \"rejected\": [3, 4], \"total\": 39}, \"expected\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p4\", \"S3\": \"p5\"}, \"rejected\": [3, 4], \"total\": 50}, \"passed\": false}, {\"check\": \"partial repair probe: same-time submission order\", \"actual\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p1\", \"S3\": \"p4\"}, \"rejected\": [0, 2, 3, 4], \"total\": 39}, \"expected\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p1\", \"S3\": \"p4\"}, \"rejected\": [0, 2, 3, 4], \"total\": 39}, \"passed\": true}, {\"check\": \"second regression\", \"actual\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p4\", \"S3\": \"p2\"}, \"rejected\": [0, 1, 2, 4], \"total\": 46}, \"expected\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p4\", \"S3\": \"p2\"}, \"rejected\": [0, 1, 2, 4], \"total\": 46}, \"passed\": true}, {\"check\": \"normal control 1\", \"actual\": {\"final\": {\"S1\": \"p4\", \"S2\": \"p1\", \"S3\": \"p2\"}, \"rejected\": [], \"total\": 39}, \"expected\": {\"final\": {\"S1\": \"p4\", \"S2\": \"p1\", \"S3\": \"p2\"}, \"rejected\": [], \"total\": 39}, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p1\", \"S3\": \"p2\"}, \"rejected\": [0, 1, 2, 3], \"total\": 48}, \"expected\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p1\", \"S3\": \"p2\"}, \"rejected\": [0, 1, 2, 3], \"total\": 48}, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p1\", \"S3\": \"p2\"}, \"rejected\": [0], \"total\": 22}, \"expected\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p1\", \"S3\": \"p2\"}, \"rejected\": [0], \"total\": 22}, \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p1\", \"S3\": \"p2\"}, \"rejected\": [0], \"total\": 25}, \"expected\": {\"final\": {\"S1\": \"p0\", \"S2\": \"p1\", \"S3\": \"p2\"}, \"rejected\": [0], \"total\": 25}, \"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."}}