{"abstract":"Three running backs are placed in the two RB slots.","category":"Fantasy sports scoring","checks":7,"contract":"Players are [name, position, projection tenths, status]. OUT and BYE players are ineligible; Q (questionable) players are eligible. Rank by projection descending, name ascending on ties. Fill QB x1, RB x2, WR x2, TE x1, then one FLEX from the best remaining RB/WR/TE (kickers and QBs never flex). Return the slot lists and the total projection.","evaluation_group":"w2-fantasy-sports-scoring-optimal-flex-lineup","failed_approach":"Special-casing the QB slot leaves RB, WR and TE overfilled.","family":"w2-fantasy-sports-scoring-optimal-flex-lineup-positional-capacity","id":"FA-84951","implementations":{"attempt":{"sha256":"a58723cdec0f81bfe0b390f0c9cb394aafc04aa7d2d15f5d90ccb72df5f689ce","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(players):\n    eligible = [p for p in players if p[3] not in ('OUT', 'BYE')]\n    eligible.sort(key=lambda p: (-p[2], p[0]))\n    need = {'QB': 1, 'RB': 2, 'WR': 2, 'TE': 1}\n    lineup = {'QB': [], 'RB': [], 'WR': [], 'TE': [], 'FLEX': []}\n    bench = []\n    for p in eligible:\n        if p[1] in need and len(lineup[p[1]]) <= need[p[1]] - (p[1] == 'QB'):\n            lineup[p[1]].append(p[0])\n        else:\n            bench.append(p)\n    for p in bench:\n        if p[1] in ('RB', 'WR', 'TE'):\n            lineup['FLEX'].append(p[0])\n            break\n    proj = {p[0]: p[2] for p in players}\n    total = sum(proj[n] for names in lineup.values() for n in names)\n    return {'lineup': lineup, 'total': total}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: positional capacity',\n   [[['eli', 'QB', 120, 'Q'], ['oz', 'RB', 40, 'OUT'], ['ivy', 'RB', 55, 'Q'], ['lu', 'K', 70, 'ACTIVE'],\n     ['hal', 'QB', 55, 'ACTIVE'], ['cy', 'RB', 70, 'Q'], ['kai', 'RB', 150, 'BYE'], ['bo', 'WR', 70, 'Q'],\n     ['max', 'K', 120, 'Q'], ['dee', 'RB', 40, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['dee'], 'QB': ['eli'], 'RB': ['cy', 'ivy'], 'TE': [], 'WR': ['bo']}, 'total': 355}),\n  ('partial repair probe: positional capacity',\n   [[['jo', 'RB', 100, 'ACTIVE'], ['eli', 'QB', 70, 'BYE'], ['bo', 'RB', 85, 'ACTIVE'],\n     ['hal', 'WR', 120, 'ACTIVE'], ['pia', 'WR', 70, 'ACTIVE'], ['ada', 'K', 85, 'ACTIVE'],\n     ['kai', 'WR', 55, 'ACTIVE'], ['fay', 'K', 100, 'BYE'], ['oz', 'WR', 120, 'ACTIVE'],\n     ['dee', 'WR', 120, 'Q'], ['gus', 'TE', 150, 'ACTIVE'], ['max', 'WR', 40, 'OUT']]],\n   {'lineup': {'FLEX': ['oz'], 'QB': [], 'RB': ['jo', 'bo'], 'TE': ['gus'], 'WR': ['dee', 'hal']},\n    'total': 695}),\n  ('second regression',\n   [[['eli', 'RB', 70, 'Q'], ['dee', 'K', 150, 'ACTIVE'], ['bo', 'K', 70, 'ACTIVE'],\n     ['oz', 'QB', 100, 'ACTIVE'], ['max', 'QB', 55, 'ACTIVE'], ['gus', 'RB', 70, 'Q'],\n     ['lu', 'RB', 55, 'ACTIVE'], ['ned', 'RB', 70, 'Q'], ['jo', 'QB', 70, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['ned'], 'QB': ['oz'], 'RB': ['eli', 'gus'], 'TE': [], 'WR': []}, 'total': 310}),\n  ('normal control 1',\n   [[['ivy', 'QB', 85, 'Q'], ['lu', 'RB', 100, 'ACTIVE'], ['fay', 'K', 150, 'ACTIVE'],\n     ['max', 'WR', 100, 'OUT'], ['bo', 'WR', 85, 'ACTIVE'], ['hal', 'WR', 120, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': ['ivy'], 'RB': ['lu'], 'TE': [], 'WR': ['hal', 'bo']}, 'total': 390}),\n  ('normal control 2',\n   [[['fay', 'WR', 70, 'Q'], ['ada', 'WR', 150, 'BYE'], ['eli', 'WR', 120, 'OUT'],\n     ['jo', 'RB', 100, 'ACTIVE'], ['ned', 'K', 70, 'OUT'], ['kai', 'QB', 120, 'BYE'],\n     ['dee', 'WR', 70, 'OUT']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['jo'], 'TE': [], 'WR': ['fay']}, 'total': 170}),\n  ('normal control 3',\n   [[['hal', 'WR', 85, 'ACTIVE'], ['pia', 'RB', 70, 'ACTIVE'], ['gus', 'K', 70, 'Q'], ['dee', 'TE', 40, 'Q'],\n     ['max', 'K', 120, 'ACTIVE'], ['ned', 'K', 150, 'BYE'], ['kai', 'WR', 100, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['pia'], 'TE': ['dee'], 'WR': ['hal']}, 'total': 195}),\n  ('normal control 4',\n   [[['hal', 'RB', 70, 'ACTIVE'], ['bo', 'WR', 70, 'BYE'], ['gus', 'WR', 150, 'ACTIVE'],\n     ['max', 'TE', 55, 'ACTIVE'], ['oz', 'RB', 40, 'ACTIVE'], ['dee', 'QB', 150, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': ['dee'], 'RB': ['hal', 'oz'], 'TE': ['max'], 'WR': ['gus']}, 'total': 465})],\n [('regression: positional capacity',\n   [[['cy', 'TE', 150, 'OUT'], ['fay', 'QB', 70, 'ACTIVE'], ['pia', 'RB', 120, 'Q'],\n     ['gus', 'WR', 70, 'ACTIVE'], ['lu', 'RB', 120, 'Q'], ['jo', 'RB', 40, 'ACTIVE'],\n     ['ivy', 'RB', 55, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['ivy'], 'QB': ['fay'], 'RB': ['lu', 'pia'], 'TE': [], 'WR': ['gus']}, 'total': 435}),\n  ('partial repair probe: positional capacity',\n   [[['eli', 'TE', 85, 'Q'], ['dee', 'WR', 150, 'ACTIVE'], ['kai', 'RB', 85, 'ACTIVE'],\n     ['oz', 'WR', 100, 'ACTIVE'], ['pia', 'K', 55, 'ACTIVE'], ['fay', 'K', 70, 'BYE'],\n     ['gus', 'K', 85, 'ACTIVE'], ['hal', 'K', 100, 'ACTIVE'], ['jo', 'QB', 150, 'ACTIVE'],\n     ['ada', 'WR', 120, 'Q'], ['bo', 'QB', 150, 'OUT'], ['ivy', 'WR', 85, 'OUT']]],\n   {'lineup': {'FLEX': ['oz'], 'QB': ['jo'], 'RB': ['kai'], 'TE': ['eli'], 'WR': ['dee', 'ada']},\n    'total': 690}),\n  ('second regression',\n   [[['ada', 'K', 100, 'ACTIVE'], ['pia', 'TE', 150, 'ACTIVE'], ['bo', 'RB', 120, 'ACTIVE'],\n     ['kai', 'QB', 70, 'ACTIVE'], ['max', 'TE', 150, 'ACTIVE'], ['dee', 'TE', 120, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['pia'], 'QB': ['kai'], 'RB': ['bo'], 'TE': ['max'], 'WR': []}, 'total': 490}),\n  ('normal control 1',\n   [[['max', 'QB', 120, 'ACTIVE'], ['ada', 'WR', 85, 'ACTIVE'], ['jo', 'TE', 120, 'BYE'],\n     ['fay', 'WR', 70, 'ACTIVE'], ['bo', 'RB', 70, 'Q'], ['kai', 'RB', 85, 'OUT'],\n     ['dee', 'TE', 150, 'ACTIVE'], ['hal', 'RB', 120, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': ['max'], 'RB': ['bo'], 'TE': ['dee'], 'WR': ['ada', 'fay']}, 'total': 495}),\n  ('normal control 2',\n   [[['gus', 'WR', 100, 'ACTIVE'], ['fay', 'WR', 70, 'Q'], ['hal', 'K', 40, 'ACTIVE'],\n     ['ada', 'TE', 100, 'ACTIVE'], ['kai', 'RB', 150, 'BYE'], ['dee', 'RB', 55, 'BYE'],\n     ['bo', 'RB', 70, 'ACTIVE'], ['pia', 'RB', 120, 'ACTIVE'], ['eli', 'TE', 70, 'BYE'],\n     ['lu', 'K', 120, 'ACTIVE'], ['max', 'QB', 70, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['pia', 'bo'], 'TE': ['ada'], 'WR': ['gus', 'fay']},\n    'total': 460}),\n  ('normal control 3',\n   [[['bo', 'K', 120, 'Q'], ['jo', 'K', 100, 'ACTIVE'], ['fay', 'RB', 70, 'BYE'], ['lu', 'RB', 100, 'ACTIVE'],\n     ['ivy', 'WR', 120, 'ACTIVE'], ['eli', 'WR', 70, 'ACTIVE'], ['gus', 'RB', 150, 'ACTIVE'],\n     ['oz', 'WR', 55, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['gus', 'lu'], 'TE': [], 'WR': ['ivy', 'eli']}, 'total': 440}),\n  ('normal control 4',\n   [[['jo', 'WR', 40, 'ACTIVE'], ['ivy', 'QB', 100, 'OUT'], ['bo', 'RB', 120, 'BYE'],\n     ['eli', 'QB', 85, 'OUT'], ['kai', 'TE', 85, 'BYE'], ['max', 'RB', 120, 'OUT'],\n     ['ned', 'QB', 40, 'ACTIVE'], ['gus', 'K', 85, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': ['ned'], 'RB': [], 'TE': [], 'WR': ['jo']}, 'total': 80})],\n [('regression: positional capacity',\n   [[['ada', 'RB', 70, 'Q'], ['dee', 'RB', 85, 'Q'], ['ned', 'TE', 120, 'Q'], ['bo', 'WR', 85, 'Q'],\n     ['ivy', 'QB', 70, 'BYE'], ['kai', 'WR', 40, 'ACTIVE'], ['max', 'RB', 70, 'BYE'],\n     ['hal', 'K', 55, 'ACTIVE'], ['fay', 'WR', 70, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['kai'], 'QB': [], 'RB': ['dee', 'ada'], 'TE': ['ned'], 'WR': ['bo', 'fay']},\n    'total': 470}),\n  ('partial repair probe: positional capacity',\n   [[['dee', 'RB', 85, 'ACTIVE'], ['jo', 'WR', 150, 'BYE'], ['kai', 'TE', 55, 'ACTIVE'],\n     ['hal', 'RB', 150, 'BYE'], ['ned', 'WR', 70, 'Q'], ['fay', 'TE', 70, 'Q'], ['max', 'RB', 100, 'BYE'],\n     ['pia', 'K', 70, 'Q']]],\n   {'lineup': {'FLEX': ['kai'], 'QB': [], 'RB': ['dee'], 'TE': ['fay'], 'WR': ['ned']}, 'total': 280}),\n  ('second regression',\n   [[['hal', 'RB', 85, 'ACTIVE'], ['max', 'WR', 120, 'OUT'], ['cy', 'RB', 70, 'ACTIVE'],\n     ['ada', 'RB', 70, 'ACTIVE'], ['gus', 'WR', 120, 'ACTIVE'], ['ned', 'QB', 150, 'ACTIVE'],\n     ['bo', 'RB', 150, 'Q']]],\n   {'lineup': {'FLEX': ['ada'], 'QB': ['ned'], 'RB': ['bo', 'hal'], 'TE': [], 'WR': ['gus']}, 'total': 575}),\n  ('normal control 1',\n   [[['lu', 'K', 150, 'ACTIVE'], ['dee', 'K', 100, 'BYE'], ['ivy', 'WR', 70, 'ACTIVE'],\n     ['max', 'RB', 85, 'ACTIVE'], ['eli', 'QB', 100, 'ACTIVE'], ['pia', 'WR', 120, 'Q'],\n     ['cy', 'QB', 40, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': ['eli'], 'RB': ['max'], 'TE': [], 'WR': ['pia', 'ivy']}, 'total': 375}),\n  ('normal control 2',\n   [[['oz', 'K', 70, 'OUT'], ['eli', 'WR', 120, 'BYE'], ['kai', 'QB', 85, 'ACTIVE'],\n     ['max', 'K', 100, 'ACTIVE'], ['dee', 'WR', 85, 'ACTIVE'], ['fay', 'QB', 70, 'BYE'],\n     ['cy', 'K', 150, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': ['kai'], 'RB': [], 'TE': [], 'WR': ['dee']}, 'total': 170}),\n  ('normal control 3',\n   [[['cy', 'QB', 70, 'BYE'], ['pia', 'K', 85, 'BYE'], ['hal', 'K', 85, 'Q'], ['ada', 'TE', 85, 'ACTIVE'],\n     ['kai', 'WR', 70, 'BYE'], ['bo', 'RB', 40, 'OUT'], ['dee', 'QB', 40, 'ACTIVE'], ['max', 'QB', 85, 'OUT'],\n     ['gus', 'K', 40, 'ACTIVE'], ['lu', 'RB', 40, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': ['dee'], 'RB': [], 'TE': ['ada'], 'WR': []}, 'total': 125}),\n  ('normal control 4',\n   [[['eli', 'RB', 85, 'OUT'], ['pia', 'K', 120, 'BYE'], ['gus', 'TE', 150, 'BYE'],\n     ['bo', 'RB', 150, 'ACTIVE'], ['ivy', 'QB', 85, 'OUT'], ['dee', 'TE', 100, 'BYE'],\n     ['kai', 'WR', 70, 'ACTIVE'], ['hal', 'TE', 100, 'ACTIVE'], ['oz', 'TE', 55, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['bo'], 'TE': ['hal'], 'WR': ['kai']}, 'total': 320})],\n [('regression: positional capacity',\n   [[['oz', 'WR', 120, 'Q'], ['pia', 'WR', 70, 'ACTIVE'], ['max', 'QB', 55, 'ACTIVE'],\n     ['gus', 'RB', 55, 'ACTIVE'], ['ivy', 'WR', 150, 'BYE'], ['jo', 'TE', 120, 'ACTIVE'],\n     ['cy', 'WR', 85, 'BYE'], ['ned', 'WR', 150, 'Q']]],\n   {'lineup': {'FLEX': ['pia'], 'QB': ['max'], 'RB': ['gus'], 'TE': ['jo'], 'WR': ['ned', 'oz']},\n    'total': 570}),\n  ('partial repair probe: positional capacity',\n   [[['ivy', 'WR', 85, 'ACTIVE'], ['lu', 'QB', 55, 'BYE'], ['kai', 'TE', 100, 'ACTIVE'],\n     ['ada', 'WR', 100, 'OUT'], ['pia', 'TE', 150, 'ACTIVE'], ['eli', 'WR', 100, 'Q'],\n     ['bo', 'RB', 150, 'ACTIVE'], ['oz', 'WR', 100, 'ACTIVE'], ['dee', 'QB', 40, 'ACTIVE'],\n     ['fay', 'K', 120, 'OUT'], ['max', 'QB', 70, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['kai'], 'QB': ['max'], 'RB': ['bo'], 'TE': ['pia'], 'WR': ['eli', 'oz']},\n    'total': 670}),\n  ('second regression',\n   [[['ada', 'RB', 40, 'OUT'], ['pia', 'TE', 150, 'ACTIVE'], ['eli', 'WR', 40, 'BYE'],\n     ['ivy', 'RB', 70, 'ACTIVE'], ['bo', 'WR', 70, 'OUT'], ['lu', 'TE', 55, 'Q']]],\n   {'lineup': {'FLEX': ['lu'], 'QB': [], 'RB': ['ivy'], 'TE': ['pia'], 'WR': []}, 'total': 275}),\n  ('normal control 1',\n   [[['ivy', 'WR', 55, 'ACTIVE'], ['gus', 'K', 70, 'ACTIVE'], ['oz', 'K', 70, 'OUT'],\n     ['ned', 'TE', 55, 'ACTIVE'], ['hal', 'K', 70, 'Q'], ['fay', 'K', 100, 'ACTIVE'],\n     ['dee', 'WR', 40, 'ACTIVE'], ['pia', 'RB', 40, 'BYE'], ['eli', 'RB', 85, 'ACTIVE'],\n     ['lu', 'TE', 100, 'OUT']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['eli'], 'TE': ['ned'], 'WR': ['ivy', 'dee']}, 'total': 235}),\n  ('normal control 2',\n   [[['pia', 'K', 150, 'ACTIVE'], ['hal', 'WR', 85, 'BYE'], ['bo', 'RB', 40, 'OUT'],\n     ['jo', 'QB', 55, 'ACTIVE'], ['dee', 'QB', 85, 'BYE'], ['lu', 'WR', 55, 'ACTIVE'],\n     ['kai', 'RB', 120, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': ['jo'], 'RB': ['kai'], 'TE': [], 'WR': ['lu']}, 'total': 230}),\n  ('normal control 3',\n   [[['ivy', 'WR', 100, 'OUT'], ['gus', 'QB', 70, 'BYE'], ['fay', 'WR', 70, 'ACTIVE'],\n     ['kai', 'K', 70, 'ACTIVE'], ['ned', 'K', 70, 'BYE'], ['bo', 'RB', 55, 'ACTIVE'],\n     ['cy', 'TE', 85, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['bo'], 'TE': [], 'WR': ['fay']}, 'total': 125}),\n  ('normal control 4',\n   [[['oz', 'RB', 70, 'OUT'], ['cy', 'QB', 120, 'BYE'], ['pia', 'QB', 85, 'BYE'],\n     ['dee', 'WR', 150, 'ACTIVE'], ['lu', 'TE', 70, 'OUT'], ['gus', 'K', 150, 'ACTIVE'],\n     ['bo', 'RB', 40, 'Q'], ['ivy', 'RB', 85, 'ACTIVE'], ['eli', 'RB', 40, 'OUT'], ['ned', 'RB', 40, 'BYE'],\n     ['max', 'WR', 70, 'ACTIVE'], ['hal', 'TE', 100, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['ivy', 'bo'], 'TE': ['hal'], 'WR': ['dee', 'max']},\n    'total': 445})],\n [('regression: positional capacity',\n   [[['kai', 'WR', 150, 'BYE'], ['pia', 'K', 150, 'BYE'], ['dee', 'QB', 85, 'BYE'],\n     ['ada', 'TE', 70, 'ACTIVE'], ['ivy', 'WR', 40, 'ACTIVE'], ['eli', 'TE', 70, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['eli'], 'QB': [], 'RB': [], 'TE': ['ada'], 'WR': ['ivy']}, 'total': 180}),\n  ('partial repair probe: positional capacity',\n   [[['ada', 'K', 150, 'ACTIVE'], ['max', 'RB', 100, 'BYE'], ['pia', 'RB', 55, 'ACTIVE'],\n     ['hal', 'K', 150, 'ACTIVE'], ['jo', 'TE', 55, 'BYE'], ['eli', 'RB', 150, 'Q'],\n     ['ned', 'RB', 70, 'ACTIVE'], ['gus', 'RB', 100, 'ACTIVE'], ['fay', 'QB', 85, 'ACTIVE'],\n     ['dee', 'WR', 120, 'ACTIVE'], ['lu', 'QB', 40, 'Q']]],\n   {'lineup': {'FLEX': ['ned'], 'QB': ['fay'], 'RB': ['eli', 'gus'], 'TE': [], 'WR': ['dee']}, 'total': 525}),\n  ('second regression',\n   [[['ada', 'WR', 70, 'OUT'], ['gus', 'RB', 100, 'Q'], ['fay', 'RB', 70, 'OUT'],\n     ['max', 'RB', 150, 'ACTIVE'], ['ivy', 'WR', 85, 'BYE'], ['ned', 'RB', 85, 'ACTIVE'],\n     ['dee', 'RB', 70, 'Q'], ['bo', 'RB', 100, 'ACTIVE'], ['cy', 'RB', 120, 'BYE'],\n     ['jo', 'WR', 150, 'BYE']]],\n   {'lineup': {'FLEX': ['gus'], 'QB': [], 'RB': ['max', 'bo'], 'TE': [], 'WR': []}, 'total': 350}),\n  ('normal control 1',\n   [[['dee', 'QB', 70, 'BYE'], ['gus', 'TE', 120, 'OUT'], ['kai', 'TE', 40, 'ACTIVE'], ['hal', 'WR', 85, 'Q'],\n     ['ned', 'RB', 70, 'ACTIVE'], ['ada', 'RB', 120, 'Q']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['ada', 'ned'], 'TE': ['kai'], 'WR': ['hal']}, 'total': 315}),\n  ('normal control 2',\n   [[['bo', 'WR', 150, 'OUT'], ['dee', 'K', 70, 'ACTIVE'], ['fay', 'WR', 70, 'ACTIVE'],\n     ['ned', 'QB', 70, 'ACTIVE'], ['hal', 'WR', 150, 'ACTIVE'], ['kai', 'RB', 120, 'ACTIVE'],\n     ['oz', 'TE', 150, 'BYE'], ['eli', 'WR', 120, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': ['ned'], 'RB': ['kai'], 'TE': [], 'WR': ['hal', 'fay']}, 'total': 410}),\n  ('normal control 3',\n   [[['ada', 'RB', 150, 'ACTIVE'], ['pia', 'WR', 55, 'ACTIVE'], ['jo', 'TE', 85, 'ACTIVE'],\n     ['oz', 'RB', 55, 'BYE'], ['hal', 'RB', 85, 'BYE'], ['ned', 'WR', 70, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['ada'], 'TE': ['jo'], 'WR': ['pia']}, 'total': 290}),\n  ('normal control 4',\n   [[['dee', 'TE', 55, 'Q'], ['eli', 'WR', 150, 'ACTIVE'], ['ned', 'RB', 55, 'OUT'], ['ivy', 'WR', 70, 'BYE'],\n     ['jo', 'RB', 150, 'OUT'], ['ada', 'K', 55, 'OUT'], ['kai', 'RB', 120, 'ACTIVE'],\n     ['cy', 'K', 120, 'ACTIVE'], ['gus', 'WR', 70, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['kai'], 'TE': ['dee'], 'WR': ['eli', 'gus']}, 'total': 395})]]\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":"bb07d6398ec620d1994cf4bb242ef785d1bb20ed4d14e5909b043476778c68a4","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(players):\n    eligible = [p for p in players if p[3] not in ('OUT', 'BYE')]\n    eligible.sort(key=lambda p: (-p[2], p[0]))\n    need = {'QB': 1, 'RB': 2, 'WR': 2, 'TE': 1}\n    lineup = {'QB': [], 'RB': [], 'WR': [], 'TE': [], 'FLEX': []}\n    bench = []\n    for p in eligible:\n        if p[1] in need and len(lineup[p[1]]) <= need[p[1]]:\n            lineup[p[1]].append(p[0])\n        else:\n            bench.append(p)\n    for p in bench:\n        if p[1] in ('RB', 'WR', 'TE'):\n            lineup['FLEX'].append(p[0])\n            break\n    proj = {p[0]: p[2] for p in players}\n    total = sum(proj[n] for names in lineup.values() for n in names)\n    return {'lineup': lineup, 'total': total}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: positional capacity',\n   [[['eli', 'QB', 120, 'Q'], ['oz', 'RB', 40, 'OUT'], ['ivy', 'RB', 55, 'Q'], ['lu', 'K', 70, 'ACTIVE'],\n     ['hal', 'QB', 55, 'ACTIVE'], ['cy', 'RB', 70, 'Q'], ['kai', 'RB', 150, 'BYE'], ['bo', 'WR', 70, 'Q'],\n     ['max', 'K', 120, 'Q'], ['dee', 'RB', 40, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['dee'], 'QB': ['eli'], 'RB': ['cy', 'ivy'], 'TE': [], 'WR': ['bo']}, 'total': 355}),\n  ('partial repair probe: positional capacity',\n   [[['jo', 'RB', 100, 'ACTIVE'], ['eli', 'QB', 70, 'BYE'], ['bo', 'RB', 85, 'ACTIVE'],\n     ['hal', 'WR', 120, 'ACTIVE'], ['pia', 'WR', 70, 'ACTIVE'], ['ada', 'K', 85, 'ACTIVE'],\n     ['kai', 'WR', 55, 'ACTIVE'], ['fay', 'K', 100, 'BYE'], ['oz', 'WR', 120, 'ACTIVE'],\n     ['dee', 'WR', 120, 'Q'], ['gus', 'TE', 150, 'ACTIVE'], ['max', 'WR', 40, 'OUT']]],\n   {'lineup': {'FLEX': ['oz'], 'QB': [], 'RB': ['jo', 'bo'], 'TE': ['gus'], 'WR': ['dee', 'hal']},\n    'total': 695}),\n  ('second regression',\n   [[['eli', 'RB', 70, 'Q'], ['dee', 'K', 150, 'ACTIVE'], ['bo', 'K', 70, 'ACTIVE'],\n     ['oz', 'QB', 100, 'ACTIVE'], ['max', 'QB', 55, 'ACTIVE'], ['gus', 'RB', 70, 'Q'],\n     ['lu', 'RB', 55, 'ACTIVE'], ['ned', 'RB', 70, 'Q'], ['jo', 'QB', 70, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['ned'], 'QB': ['oz'], 'RB': ['eli', 'gus'], 'TE': [], 'WR': []}, 'total': 310}),\n  ('normal control 1',\n   [[['ivy', 'QB', 85, 'Q'], ['lu', 'RB', 100, 'ACTIVE'], ['fay', 'K', 150, 'ACTIVE'],\n     ['max', 'WR', 100, 'OUT'], ['bo', 'WR', 85, 'ACTIVE'], ['hal', 'WR', 120, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': ['ivy'], 'RB': ['lu'], 'TE': [], 'WR': ['hal', 'bo']}, 'total': 390}),\n  ('normal control 2',\n   [[['fay', 'WR', 70, 'Q'], ['ada', 'WR', 150, 'BYE'], ['eli', 'WR', 120, 'OUT'],\n     ['jo', 'RB', 100, 'ACTIVE'], ['ned', 'K', 70, 'OUT'], ['kai', 'QB', 120, 'BYE'],\n     ['dee', 'WR', 70, 'OUT']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['jo'], 'TE': [], 'WR': ['fay']}, 'total': 170}),\n  ('normal control 3',\n   [[['hal', 'WR', 85, 'ACTIVE'], ['pia', 'RB', 70, 'ACTIVE'], ['gus', 'K', 70, 'Q'], ['dee', 'TE', 40, 'Q'],\n     ['max', 'K', 120, 'ACTIVE'], ['ned', 'K', 150, 'BYE'], ['kai', 'WR', 100, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['pia'], 'TE': ['dee'], 'WR': ['hal']}, 'total': 195}),\n  ('normal control 4',\n   [[['hal', 'RB', 70, 'ACTIVE'], ['bo', 'WR', 70, 'BYE'], ['gus', 'WR', 150, 'ACTIVE'],\n     ['max', 'TE', 55, 'ACTIVE'], ['oz', 'RB', 40, 'ACTIVE'], ['dee', 'QB', 150, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': ['dee'], 'RB': ['hal', 'oz'], 'TE': ['max'], 'WR': ['gus']}, 'total': 465})],\n [('regression: positional capacity',\n   [[['cy', 'TE', 150, 'OUT'], ['fay', 'QB', 70, 'ACTIVE'], ['pia', 'RB', 120, 'Q'],\n     ['gus', 'WR', 70, 'ACTIVE'], ['lu', 'RB', 120, 'Q'], ['jo', 'RB', 40, 'ACTIVE'],\n     ['ivy', 'RB', 55, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['ivy'], 'QB': ['fay'], 'RB': ['lu', 'pia'], 'TE': [], 'WR': ['gus']}, 'total': 435}),\n  ('partial repair probe: positional capacity',\n   [[['eli', 'TE', 85, 'Q'], ['dee', 'WR', 150, 'ACTIVE'], ['kai', 'RB', 85, 'ACTIVE'],\n     ['oz', 'WR', 100, 'ACTIVE'], ['pia', 'K', 55, 'ACTIVE'], ['fay', 'K', 70, 'BYE'],\n     ['gus', 'K', 85, 'ACTIVE'], ['hal', 'K', 100, 'ACTIVE'], ['jo', 'QB', 150, 'ACTIVE'],\n     ['ada', 'WR', 120, 'Q'], ['bo', 'QB', 150, 'OUT'], ['ivy', 'WR', 85, 'OUT']]],\n   {'lineup': {'FLEX': ['oz'], 'QB': ['jo'], 'RB': ['kai'], 'TE': ['eli'], 'WR': ['dee', 'ada']},\n    'total': 690}),\n  ('second regression',\n   [[['ada', 'K', 100, 'ACTIVE'], ['pia', 'TE', 150, 'ACTIVE'], ['bo', 'RB', 120, 'ACTIVE'],\n     ['kai', 'QB', 70, 'ACTIVE'], ['max', 'TE', 150, 'ACTIVE'], ['dee', 'TE', 120, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['pia'], 'QB': ['kai'], 'RB': ['bo'], 'TE': ['max'], 'WR': []}, 'total': 490}),\n  ('normal control 1',\n   [[['max', 'QB', 120, 'ACTIVE'], ['ada', 'WR', 85, 'ACTIVE'], ['jo', 'TE', 120, 'BYE'],\n     ['fay', 'WR', 70, 'ACTIVE'], ['bo', 'RB', 70, 'Q'], ['kai', 'RB', 85, 'OUT'],\n     ['dee', 'TE', 150, 'ACTIVE'], ['hal', 'RB', 120, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': ['max'], 'RB': ['bo'], 'TE': ['dee'], 'WR': ['ada', 'fay']}, 'total': 495}),\n  ('normal control 2',\n   [[['gus', 'WR', 100, 'ACTIVE'], ['fay', 'WR', 70, 'Q'], ['hal', 'K', 40, 'ACTIVE'],\n     ['ada', 'TE', 100, 'ACTIVE'], ['kai', 'RB', 150, 'BYE'], ['dee', 'RB', 55, 'BYE'],\n     ['bo', 'RB', 70, 'ACTIVE'], ['pia', 'RB', 120, 'ACTIVE'], ['eli', 'TE', 70, 'BYE'],\n     ['lu', 'K', 120, 'ACTIVE'], ['max', 'QB', 70, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['pia', 'bo'], 'TE': ['ada'], 'WR': ['gus', 'fay']},\n    'total': 460}),\n  ('normal control 3',\n   [[['bo', 'K', 120, 'Q'], ['jo', 'K', 100, 'ACTIVE'], ['fay', 'RB', 70, 'BYE'], ['lu', 'RB', 100, 'ACTIVE'],\n     ['ivy', 'WR', 120, 'ACTIVE'], ['eli', 'WR', 70, 'ACTIVE'], ['gus', 'RB', 150, 'ACTIVE'],\n     ['oz', 'WR', 55, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['gus', 'lu'], 'TE': [], 'WR': ['ivy', 'eli']}, 'total': 440}),\n  ('normal control 4',\n   [[['jo', 'WR', 40, 'ACTIVE'], ['ivy', 'QB', 100, 'OUT'], ['bo', 'RB', 120, 'BYE'],\n     ['eli', 'QB', 85, 'OUT'], ['kai', 'TE', 85, 'BYE'], ['max', 'RB', 120, 'OUT'],\n     ['ned', 'QB', 40, 'ACTIVE'], ['gus', 'K', 85, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': ['ned'], 'RB': [], 'TE': [], 'WR': ['jo']}, 'total': 80})],\n [('regression: positional capacity',\n   [[['ada', 'RB', 70, 'Q'], ['dee', 'RB', 85, 'Q'], ['ned', 'TE', 120, 'Q'], ['bo', 'WR', 85, 'Q'],\n     ['ivy', 'QB', 70, 'BYE'], ['kai', 'WR', 40, 'ACTIVE'], ['max', 'RB', 70, 'BYE'],\n     ['hal', 'K', 55, 'ACTIVE'], ['fay', 'WR', 70, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['kai'], 'QB': [], 'RB': ['dee', 'ada'], 'TE': ['ned'], 'WR': ['bo', 'fay']},\n    'total': 470}),\n  ('partial repair probe: positional capacity',\n   [[['dee', 'RB', 85, 'ACTIVE'], ['jo', 'WR', 150, 'BYE'], ['kai', 'TE', 55, 'ACTIVE'],\n     ['hal', 'RB', 150, 'BYE'], ['ned', 'WR', 70, 'Q'], ['fay', 'TE', 70, 'Q'], ['max', 'RB', 100, 'BYE'],\n     ['pia', 'K', 70, 'Q']]],\n   {'lineup': {'FLEX': ['kai'], 'QB': [], 'RB': ['dee'], 'TE': ['fay'], 'WR': ['ned']}, 'total': 280}),\n  ('second regression',\n   [[['hal', 'RB', 85, 'ACTIVE'], ['max', 'WR', 120, 'OUT'], ['cy', 'RB', 70, 'ACTIVE'],\n     ['ada', 'RB', 70, 'ACTIVE'], ['gus', 'WR', 120, 'ACTIVE'], ['ned', 'QB', 150, 'ACTIVE'],\n     ['bo', 'RB', 150, 'Q']]],\n   {'lineup': {'FLEX': ['ada'], 'QB': ['ned'], 'RB': ['bo', 'hal'], 'TE': [], 'WR': ['gus']}, 'total': 575}),\n  ('normal control 1',\n   [[['lu', 'K', 150, 'ACTIVE'], ['dee', 'K', 100, 'BYE'], ['ivy', 'WR', 70, 'ACTIVE'],\n     ['max', 'RB', 85, 'ACTIVE'], ['eli', 'QB', 100, 'ACTIVE'], ['pia', 'WR', 120, 'Q'],\n     ['cy', 'QB', 40, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': ['eli'], 'RB': ['max'], 'TE': [], 'WR': ['pia', 'ivy']}, 'total': 375}),\n  ('normal control 2',\n   [[['oz', 'K', 70, 'OUT'], ['eli', 'WR', 120, 'BYE'], ['kai', 'QB', 85, 'ACTIVE'],\n     ['max', 'K', 100, 'ACTIVE'], ['dee', 'WR', 85, 'ACTIVE'], ['fay', 'QB', 70, 'BYE'],\n     ['cy', 'K', 150, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': ['kai'], 'RB': [], 'TE': [], 'WR': ['dee']}, 'total': 170}),\n  ('normal control 3',\n   [[['cy', 'QB', 70, 'BYE'], ['pia', 'K', 85, 'BYE'], ['hal', 'K', 85, 'Q'], ['ada', 'TE', 85, 'ACTIVE'],\n     ['kai', 'WR', 70, 'BYE'], ['bo', 'RB', 40, 'OUT'], ['dee', 'QB', 40, 'ACTIVE'], ['max', 'QB', 85, 'OUT'],\n     ['gus', 'K', 40, 'ACTIVE'], ['lu', 'RB', 40, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': ['dee'], 'RB': [], 'TE': ['ada'], 'WR': []}, 'total': 125}),\n  ('normal control 4',\n   [[['eli', 'RB', 85, 'OUT'], ['pia', 'K', 120, 'BYE'], ['gus', 'TE', 150, 'BYE'],\n     ['bo', 'RB', 150, 'ACTIVE'], ['ivy', 'QB', 85, 'OUT'], ['dee', 'TE', 100, 'BYE'],\n     ['kai', 'WR', 70, 'ACTIVE'], ['hal', 'TE', 100, 'ACTIVE'], ['oz', 'TE', 55, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['bo'], 'TE': ['hal'], 'WR': ['kai']}, 'total': 320})],\n [('regression: positional capacity',\n   [[['oz', 'WR', 120, 'Q'], ['pia', 'WR', 70, 'ACTIVE'], ['max', 'QB', 55, 'ACTIVE'],\n     ['gus', 'RB', 55, 'ACTIVE'], ['ivy', 'WR', 150, 'BYE'], ['jo', 'TE', 120, 'ACTIVE'],\n     ['cy', 'WR', 85, 'BYE'], ['ned', 'WR', 150, 'Q']]],\n   {'lineup': {'FLEX': ['pia'], 'QB': ['max'], 'RB': ['gus'], 'TE': ['jo'], 'WR': ['ned', 'oz']},\n    'total': 570}),\n  ('partial repair probe: positional capacity',\n   [[['ivy', 'WR', 85, 'ACTIVE'], ['lu', 'QB', 55, 'BYE'], ['kai', 'TE', 100, 'ACTIVE'],\n     ['ada', 'WR', 100, 'OUT'], ['pia', 'TE', 150, 'ACTIVE'], ['eli', 'WR', 100, 'Q'],\n     ['bo', 'RB', 150, 'ACTIVE'], ['oz', 'WR', 100, 'ACTIVE'], ['dee', 'QB', 40, 'ACTIVE'],\n     ['fay', 'K', 120, 'OUT'], ['max', 'QB', 70, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['kai'], 'QB': ['max'], 'RB': ['bo'], 'TE': ['pia'], 'WR': ['eli', 'oz']},\n    'total': 670}),\n  ('second regression',\n   [[['ada', 'RB', 40, 'OUT'], ['pia', 'TE', 150, 'ACTIVE'], ['eli', 'WR', 40, 'BYE'],\n     ['ivy', 'RB', 70, 'ACTIVE'], ['bo', 'WR', 70, 'OUT'], ['lu', 'TE', 55, 'Q']]],\n   {'lineup': {'FLEX': ['lu'], 'QB': [], 'RB': ['ivy'], 'TE': ['pia'], 'WR': []}, 'total': 275}),\n  ('normal control 1',\n   [[['ivy', 'WR', 55, 'ACTIVE'], ['gus', 'K', 70, 'ACTIVE'], ['oz', 'K', 70, 'OUT'],\n     ['ned', 'TE', 55, 'ACTIVE'], ['hal', 'K', 70, 'Q'], ['fay', 'K', 100, 'ACTIVE'],\n     ['dee', 'WR', 40, 'ACTIVE'], ['pia', 'RB', 40, 'BYE'], ['eli', 'RB', 85, 'ACTIVE'],\n     ['lu', 'TE', 100, 'OUT']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['eli'], 'TE': ['ned'], 'WR': ['ivy', 'dee']}, 'total': 235}),\n  ('normal control 2',\n   [[['pia', 'K', 150, 'ACTIVE'], ['hal', 'WR', 85, 'BYE'], ['bo', 'RB', 40, 'OUT'],\n     ['jo', 'QB', 55, 'ACTIVE'], ['dee', 'QB', 85, 'BYE'], ['lu', 'WR', 55, 'ACTIVE'],\n     ['kai', 'RB', 120, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': ['jo'], 'RB': ['kai'], 'TE': [], 'WR': ['lu']}, 'total': 230}),\n  ('normal control 3',\n   [[['ivy', 'WR', 100, 'OUT'], ['gus', 'QB', 70, 'BYE'], ['fay', 'WR', 70, 'ACTIVE'],\n     ['kai', 'K', 70, 'ACTIVE'], ['ned', 'K', 70, 'BYE'], ['bo', 'RB', 55, 'ACTIVE'],\n     ['cy', 'TE', 85, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['bo'], 'TE': [], 'WR': ['fay']}, 'total': 125}),\n  ('normal control 4',\n   [[['oz', 'RB', 70, 'OUT'], ['cy', 'QB', 120, 'BYE'], ['pia', 'QB', 85, 'BYE'],\n     ['dee', 'WR', 150, 'ACTIVE'], ['lu', 'TE', 70, 'OUT'], ['gus', 'K', 150, 'ACTIVE'],\n     ['bo', 'RB', 40, 'Q'], ['ivy', 'RB', 85, 'ACTIVE'], ['eli', 'RB', 40, 'OUT'], ['ned', 'RB', 40, 'BYE'],\n     ['max', 'WR', 70, 'ACTIVE'], ['hal', 'TE', 100, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['ivy', 'bo'], 'TE': ['hal'], 'WR': ['dee', 'max']},\n    'total': 445})],\n [('regression: positional capacity',\n   [[['kai', 'WR', 150, 'BYE'], ['pia', 'K', 150, 'BYE'], ['dee', 'QB', 85, 'BYE'],\n     ['ada', 'TE', 70, 'ACTIVE'], ['ivy', 'WR', 40, 'ACTIVE'], ['eli', 'TE', 70, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['eli'], 'QB': [], 'RB': [], 'TE': ['ada'], 'WR': ['ivy']}, 'total': 180}),\n  ('partial repair probe: positional capacity',\n   [[['ada', 'K', 150, 'ACTIVE'], ['max', 'RB', 100, 'BYE'], ['pia', 'RB', 55, 'ACTIVE'],\n     ['hal', 'K', 150, 'ACTIVE'], ['jo', 'TE', 55, 'BYE'], ['eli', 'RB', 150, 'Q'],\n     ['ned', 'RB', 70, 'ACTIVE'], ['gus', 'RB', 100, 'ACTIVE'], ['fay', 'QB', 85, 'ACTIVE'],\n     ['dee', 'WR', 120, 'ACTIVE'], ['lu', 'QB', 40, 'Q']]],\n   {'lineup': {'FLEX': ['ned'], 'QB': ['fay'], 'RB': ['eli', 'gus'], 'TE': [], 'WR': ['dee']}, 'total': 525}),\n  ('second regression',\n   [[['ada', 'WR', 70, 'OUT'], ['gus', 'RB', 100, 'Q'], ['fay', 'RB', 70, 'OUT'],\n     ['max', 'RB', 150, 'ACTIVE'], ['ivy', 'WR', 85, 'BYE'], ['ned', 'RB', 85, 'ACTIVE'],\n     ['dee', 'RB', 70, 'Q'], ['bo', 'RB', 100, 'ACTIVE'], ['cy', 'RB', 120, 'BYE'],\n     ['jo', 'WR', 150, 'BYE']]],\n   {'lineup': {'FLEX': ['gus'], 'QB': [], 'RB': ['max', 'bo'], 'TE': [], 'WR': []}, 'total': 350}),\n  ('normal control 1',\n   [[['dee', 'QB', 70, 'BYE'], ['gus', 'TE', 120, 'OUT'], ['kai', 'TE', 40, 'ACTIVE'], ['hal', 'WR', 85, 'Q'],\n     ['ned', 'RB', 70, 'ACTIVE'], ['ada', 'RB', 120, 'Q']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['ada', 'ned'], 'TE': ['kai'], 'WR': ['hal']}, 'total': 315}),\n  ('normal control 2',\n   [[['bo', 'WR', 150, 'OUT'], ['dee', 'K', 70, 'ACTIVE'], ['fay', 'WR', 70, 'ACTIVE'],\n     ['ned', 'QB', 70, 'ACTIVE'], ['hal', 'WR', 150, 'ACTIVE'], ['kai', 'RB', 120, 'ACTIVE'],\n     ['oz', 'TE', 150, 'BYE'], ['eli', 'WR', 120, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': ['ned'], 'RB': ['kai'], 'TE': [], 'WR': ['hal', 'fay']}, 'total': 410}),\n  ('normal control 3',\n   [[['ada', 'RB', 150, 'ACTIVE'], ['pia', 'WR', 55, 'ACTIVE'], ['jo', 'TE', 85, 'ACTIVE'],\n     ['oz', 'RB', 55, 'BYE'], ['hal', 'RB', 85, 'BYE'], ['ned', 'WR', 70, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['ada'], 'TE': ['jo'], 'WR': ['pia']}, 'total': 290}),\n  ('normal control 4',\n   [[['dee', 'TE', 55, 'Q'], ['eli', 'WR', 150, 'ACTIVE'], ['ned', 'RB', 55, 'OUT'], ['ivy', 'WR', 70, 'BYE'],\n     ['jo', 'RB', 150, 'OUT'], ['ada', 'K', 55, 'OUT'], ['kai', 'RB', 120, 'ACTIVE'],\n     ['cy', 'K', 120, 'ACTIVE'], ['gus', 'WR', 70, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['kai'], 'TE': ['dee'], 'WR': ['eli', 'gus']}, 'total': 395})]]\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":"6a25f2413726cf31b8132d75232f02cf35df47998c7cee917a237fb676a411df","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(players):\n    eligible = [p for p in players if p[3] not in ('OUT', 'BYE')]\n    eligible.sort(key=lambda p: (-p[2], p[0]))\n    need = {'QB': 1, 'RB': 2, 'WR': 2, 'TE': 1}\n    lineup = {'QB': [], 'RB': [], 'WR': [], 'TE': [], 'FLEX': []}\n    bench = []\n    for p in eligible:\n        if p[1] in need and len(lineup[p[1]]) < need[p[1]]:\n            lineup[p[1]].append(p[0])\n        else:\n            bench.append(p)\n    for p in bench:\n        if p[1] in ('RB', 'WR', 'TE'):\n            lineup['FLEX'].append(p[0])\n            break\n    proj = {p[0]: p[2] for p in players}\n    total = sum(proj[n] for names in lineup.values() for n in names)\n    return {'lineup': lineup, 'total': total}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: positional capacity',\n   [[['eli', 'QB', 120, 'Q'], ['oz', 'RB', 40, 'OUT'], ['ivy', 'RB', 55, 'Q'], ['lu', 'K', 70, 'ACTIVE'],\n     ['hal', 'QB', 55, 'ACTIVE'], ['cy', 'RB', 70, 'Q'], ['kai', 'RB', 150, 'BYE'], ['bo', 'WR', 70, 'Q'],\n     ['max', 'K', 120, 'Q'], ['dee', 'RB', 40, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['dee'], 'QB': ['eli'], 'RB': ['cy', 'ivy'], 'TE': [], 'WR': ['bo']}, 'total': 355}),\n  ('partial repair probe: positional capacity',\n   [[['jo', 'RB', 100, 'ACTIVE'], ['eli', 'QB', 70, 'BYE'], ['bo', 'RB', 85, 'ACTIVE'],\n     ['hal', 'WR', 120, 'ACTIVE'], ['pia', 'WR', 70, 'ACTIVE'], ['ada', 'K', 85, 'ACTIVE'],\n     ['kai', 'WR', 55, 'ACTIVE'], ['fay', 'K', 100, 'BYE'], ['oz', 'WR', 120, 'ACTIVE'],\n     ['dee', 'WR', 120, 'Q'], ['gus', 'TE', 150, 'ACTIVE'], ['max', 'WR', 40, 'OUT']]],\n   {'lineup': {'FLEX': ['oz'], 'QB': [], 'RB': ['jo', 'bo'], 'TE': ['gus'], 'WR': ['dee', 'hal']},\n    'total': 695}),\n  ('second regression',\n   [[['eli', 'RB', 70, 'Q'], ['dee', 'K', 150, 'ACTIVE'], ['bo', 'K', 70, 'ACTIVE'],\n     ['oz', 'QB', 100, 'ACTIVE'], ['max', 'QB', 55, 'ACTIVE'], ['gus', 'RB', 70, 'Q'],\n     ['lu', 'RB', 55, 'ACTIVE'], ['ned', 'RB', 70, 'Q'], ['jo', 'QB', 70, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['ned'], 'QB': ['oz'], 'RB': ['eli', 'gus'], 'TE': [], 'WR': []}, 'total': 310}),\n  ('normal control 1',\n   [[['ivy', 'QB', 85, 'Q'], ['lu', 'RB', 100, 'ACTIVE'], ['fay', 'K', 150, 'ACTIVE'],\n     ['max', 'WR', 100, 'OUT'], ['bo', 'WR', 85, 'ACTIVE'], ['hal', 'WR', 120, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': ['ivy'], 'RB': ['lu'], 'TE': [], 'WR': ['hal', 'bo']}, 'total': 390}),\n  ('normal control 2',\n   [[['fay', 'WR', 70, 'Q'], ['ada', 'WR', 150, 'BYE'], ['eli', 'WR', 120, 'OUT'],\n     ['jo', 'RB', 100, 'ACTIVE'], ['ned', 'K', 70, 'OUT'], ['kai', 'QB', 120, 'BYE'],\n     ['dee', 'WR', 70, 'OUT']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['jo'], 'TE': [], 'WR': ['fay']}, 'total': 170}),\n  ('normal control 3',\n   [[['hal', 'WR', 85, 'ACTIVE'], ['pia', 'RB', 70, 'ACTIVE'], ['gus', 'K', 70, 'Q'], ['dee', 'TE', 40, 'Q'],\n     ['max', 'K', 120, 'ACTIVE'], ['ned', 'K', 150, 'BYE'], ['kai', 'WR', 100, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['pia'], 'TE': ['dee'], 'WR': ['hal']}, 'total': 195}),\n  ('normal control 4',\n   [[['hal', 'RB', 70, 'ACTIVE'], ['bo', 'WR', 70, 'BYE'], ['gus', 'WR', 150, 'ACTIVE'],\n     ['max', 'TE', 55, 'ACTIVE'], ['oz', 'RB', 40, 'ACTIVE'], ['dee', 'QB', 150, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': ['dee'], 'RB': ['hal', 'oz'], 'TE': ['max'], 'WR': ['gus']}, 'total': 465})],\n [('regression: positional capacity',\n   [[['cy', 'TE', 150, 'OUT'], ['fay', 'QB', 70, 'ACTIVE'], ['pia', 'RB', 120, 'Q'],\n     ['gus', 'WR', 70, 'ACTIVE'], ['lu', 'RB', 120, 'Q'], ['jo', 'RB', 40, 'ACTIVE'],\n     ['ivy', 'RB', 55, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['ivy'], 'QB': ['fay'], 'RB': ['lu', 'pia'], 'TE': [], 'WR': ['gus']}, 'total': 435}),\n  ('partial repair probe: positional capacity',\n   [[['eli', 'TE', 85, 'Q'], ['dee', 'WR', 150, 'ACTIVE'], ['kai', 'RB', 85, 'ACTIVE'],\n     ['oz', 'WR', 100, 'ACTIVE'], ['pia', 'K', 55, 'ACTIVE'], ['fay', 'K', 70, 'BYE'],\n     ['gus', 'K', 85, 'ACTIVE'], ['hal', 'K', 100, 'ACTIVE'], ['jo', 'QB', 150, 'ACTIVE'],\n     ['ada', 'WR', 120, 'Q'], ['bo', 'QB', 150, 'OUT'], ['ivy', 'WR', 85, 'OUT']]],\n   {'lineup': {'FLEX': ['oz'], 'QB': ['jo'], 'RB': ['kai'], 'TE': ['eli'], 'WR': ['dee', 'ada']},\n    'total': 690}),\n  ('second regression',\n   [[['ada', 'K', 100, 'ACTIVE'], ['pia', 'TE', 150, 'ACTIVE'], ['bo', 'RB', 120, 'ACTIVE'],\n     ['kai', 'QB', 70, 'ACTIVE'], ['max', 'TE', 150, 'ACTIVE'], ['dee', 'TE', 120, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['pia'], 'QB': ['kai'], 'RB': ['bo'], 'TE': ['max'], 'WR': []}, 'total': 490}),\n  ('normal control 1',\n   [[['max', 'QB', 120, 'ACTIVE'], ['ada', 'WR', 85, 'ACTIVE'], ['jo', 'TE', 120, 'BYE'],\n     ['fay', 'WR', 70, 'ACTIVE'], ['bo', 'RB', 70, 'Q'], ['kai', 'RB', 85, 'OUT'],\n     ['dee', 'TE', 150, 'ACTIVE'], ['hal', 'RB', 120, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': ['max'], 'RB': ['bo'], 'TE': ['dee'], 'WR': ['ada', 'fay']}, 'total': 495}),\n  ('normal control 2',\n   [[['gus', 'WR', 100, 'ACTIVE'], ['fay', 'WR', 70, 'Q'], ['hal', 'K', 40, 'ACTIVE'],\n     ['ada', 'TE', 100, 'ACTIVE'], ['kai', 'RB', 150, 'BYE'], ['dee', 'RB', 55, 'BYE'],\n     ['bo', 'RB', 70, 'ACTIVE'], ['pia', 'RB', 120, 'ACTIVE'], ['eli', 'TE', 70, 'BYE'],\n     ['lu', 'K', 120, 'ACTIVE'], ['max', 'QB', 70, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['pia', 'bo'], 'TE': ['ada'], 'WR': ['gus', 'fay']},\n    'total': 460}),\n  ('normal control 3',\n   [[['bo', 'K', 120, 'Q'], ['jo', 'K', 100, 'ACTIVE'], ['fay', 'RB', 70, 'BYE'], ['lu', 'RB', 100, 'ACTIVE'],\n     ['ivy', 'WR', 120, 'ACTIVE'], ['eli', 'WR', 70, 'ACTIVE'], ['gus', 'RB', 150, 'ACTIVE'],\n     ['oz', 'WR', 55, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['gus', 'lu'], 'TE': [], 'WR': ['ivy', 'eli']}, 'total': 440}),\n  ('normal control 4',\n   [[['jo', 'WR', 40, 'ACTIVE'], ['ivy', 'QB', 100, 'OUT'], ['bo', 'RB', 120, 'BYE'],\n     ['eli', 'QB', 85, 'OUT'], ['kai', 'TE', 85, 'BYE'], ['max', 'RB', 120, 'OUT'],\n     ['ned', 'QB', 40, 'ACTIVE'], ['gus', 'K', 85, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': ['ned'], 'RB': [], 'TE': [], 'WR': ['jo']}, 'total': 80})],\n [('regression: positional capacity',\n   [[['ada', 'RB', 70, 'Q'], ['dee', 'RB', 85, 'Q'], ['ned', 'TE', 120, 'Q'], ['bo', 'WR', 85, 'Q'],\n     ['ivy', 'QB', 70, 'BYE'], ['kai', 'WR', 40, 'ACTIVE'], ['max', 'RB', 70, 'BYE'],\n     ['hal', 'K', 55, 'ACTIVE'], ['fay', 'WR', 70, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['kai'], 'QB': [], 'RB': ['dee', 'ada'], 'TE': ['ned'], 'WR': ['bo', 'fay']},\n    'total': 470}),\n  ('partial repair probe: positional capacity',\n   [[['dee', 'RB', 85, 'ACTIVE'], ['jo', 'WR', 150, 'BYE'], ['kai', 'TE', 55, 'ACTIVE'],\n     ['hal', 'RB', 150, 'BYE'], ['ned', 'WR', 70, 'Q'], ['fay', 'TE', 70, 'Q'], ['max', 'RB', 100, 'BYE'],\n     ['pia', 'K', 70, 'Q']]],\n   {'lineup': {'FLEX': ['kai'], 'QB': [], 'RB': ['dee'], 'TE': ['fay'], 'WR': ['ned']}, 'total': 280}),\n  ('second regression',\n   [[['hal', 'RB', 85, 'ACTIVE'], ['max', 'WR', 120, 'OUT'], ['cy', 'RB', 70, 'ACTIVE'],\n     ['ada', 'RB', 70, 'ACTIVE'], ['gus', 'WR', 120, 'ACTIVE'], ['ned', 'QB', 150, 'ACTIVE'],\n     ['bo', 'RB', 150, 'Q']]],\n   {'lineup': {'FLEX': ['ada'], 'QB': ['ned'], 'RB': ['bo', 'hal'], 'TE': [], 'WR': ['gus']}, 'total': 575}),\n  ('normal control 1',\n   [[['lu', 'K', 150, 'ACTIVE'], ['dee', 'K', 100, 'BYE'], ['ivy', 'WR', 70, 'ACTIVE'],\n     ['max', 'RB', 85, 'ACTIVE'], ['eli', 'QB', 100, 'ACTIVE'], ['pia', 'WR', 120, 'Q'],\n     ['cy', 'QB', 40, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': ['eli'], 'RB': ['max'], 'TE': [], 'WR': ['pia', 'ivy']}, 'total': 375}),\n  ('normal control 2',\n   [[['oz', 'K', 70, 'OUT'], ['eli', 'WR', 120, 'BYE'], ['kai', 'QB', 85, 'ACTIVE'],\n     ['max', 'K', 100, 'ACTIVE'], ['dee', 'WR', 85, 'ACTIVE'], ['fay', 'QB', 70, 'BYE'],\n     ['cy', 'K', 150, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': ['kai'], 'RB': [], 'TE': [], 'WR': ['dee']}, 'total': 170}),\n  ('normal control 3',\n   [[['cy', 'QB', 70, 'BYE'], ['pia', 'K', 85, 'BYE'], ['hal', 'K', 85, 'Q'], ['ada', 'TE', 85, 'ACTIVE'],\n     ['kai', 'WR', 70, 'BYE'], ['bo', 'RB', 40, 'OUT'], ['dee', 'QB', 40, 'ACTIVE'], ['max', 'QB', 85, 'OUT'],\n     ['gus', 'K', 40, 'ACTIVE'], ['lu', 'RB', 40, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': ['dee'], 'RB': [], 'TE': ['ada'], 'WR': []}, 'total': 125}),\n  ('normal control 4',\n   [[['eli', 'RB', 85, 'OUT'], ['pia', 'K', 120, 'BYE'], ['gus', 'TE', 150, 'BYE'],\n     ['bo', 'RB', 150, 'ACTIVE'], ['ivy', 'QB', 85, 'OUT'], ['dee', 'TE', 100, 'BYE'],\n     ['kai', 'WR', 70, 'ACTIVE'], ['hal', 'TE', 100, 'ACTIVE'], ['oz', 'TE', 55, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['bo'], 'TE': ['hal'], 'WR': ['kai']}, 'total': 320})],\n [('regression: positional capacity',\n   [[['oz', 'WR', 120, 'Q'], ['pia', 'WR', 70, 'ACTIVE'], ['max', 'QB', 55, 'ACTIVE'],\n     ['gus', 'RB', 55, 'ACTIVE'], ['ivy', 'WR', 150, 'BYE'], ['jo', 'TE', 120, 'ACTIVE'],\n     ['cy', 'WR', 85, 'BYE'], ['ned', 'WR', 150, 'Q']]],\n   {'lineup': {'FLEX': ['pia'], 'QB': ['max'], 'RB': ['gus'], 'TE': ['jo'], 'WR': ['ned', 'oz']},\n    'total': 570}),\n  ('partial repair probe: positional capacity',\n   [[['ivy', 'WR', 85, 'ACTIVE'], ['lu', 'QB', 55, 'BYE'], ['kai', 'TE', 100, 'ACTIVE'],\n     ['ada', 'WR', 100, 'OUT'], ['pia', 'TE', 150, 'ACTIVE'], ['eli', 'WR', 100, 'Q'],\n     ['bo', 'RB', 150, 'ACTIVE'], ['oz', 'WR', 100, 'ACTIVE'], ['dee', 'QB', 40, 'ACTIVE'],\n     ['fay', 'K', 120, 'OUT'], ['max', 'QB', 70, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['kai'], 'QB': ['max'], 'RB': ['bo'], 'TE': ['pia'], 'WR': ['eli', 'oz']},\n    'total': 670}),\n  ('second regression',\n   [[['ada', 'RB', 40, 'OUT'], ['pia', 'TE', 150, 'ACTIVE'], ['eli', 'WR', 40, 'BYE'],\n     ['ivy', 'RB', 70, 'ACTIVE'], ['bo', 'WR', 70, 'OUT'], ['lu', 'TE', 55, 'Q']]],\n   {'lineup': {'FLEX': ['lu'], 'QB': [], 'RB': ['ivy'], 'TE': ['pia'], 'WR': []}, 'total': 275}),\n  ('normal control 1',\n   [[['ivy', 'WR', 55, 'ACTIVE'], ['gus', 'K', 70, 'ACTIVE'], ['oz', 'K', 70, 'OUT'],\n     ['ned', 'TE', 55, 'ACTIVE'], ['hal', 'K', 70, 'Q'], ['fay', 'K', 100, 'ACTIVE'],\n     ['dee', 'WR', 40, 'ACTIVE'], ['pia', 'RB', 40, 'BYE'], ['eli', 'RB', 85, 'ACTIVE'],\n     ['lu', 'TE', 100, 'OUT']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['eli'], 'TE': ['ned'], 'WR': ['ivy', 'dee']}, 'total': 235}),\n  ('normal control 2',\n   [[['pia', 'K', 150, 'ACTIVE'], ['hal', 'WR', 85, 'BYE'], ['bo', 'RB', 40, 'OUT'],\n     ['jo', 'QB', 55, 'ACTIVE'], ['dee', 'QB', 85, 'BYE'], ['lu', 'WR', 55, 'ACTIVE'],\n     ['kai', 'RB', 120, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': ['jo'], 'RB': ['kai'], 'TE': [], 'WR': ['lu']}, 'total': 230}),\n  ('normal control 3',\n   [[['ivy', 'WR', 100, 'OUT'], ['gus', 'QB', 70, 'BYE'], ['fay', 'WR', 70, 'ACTIVE'],\n     ['kai', 'K', 70, 'ACTIVE'], ['ned', 'K', 70, 'BYE'], ['bo', 'RB', 55, 'ACTIVE'],\n     ['cy', 'TE', 85, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['bo'], 'TE': [], 'WR': ['fay']}, 'total': 125}),\n  ('normal control 4',\n   [[['oz', 'RB', 70, 'OUT'], ['cy', 'QB', 120, 'BYE'], ['pia', 'QB', 85, 'BYE'],\n     ['dee', 'WR', 150, 'ACTIVE'], ['lu', 'TE', 70, 'OUT'], ['gus', 'K', 150, 'ACTIVE'],\n     ['bo', 'RB', 40, 'Q'], ['ivy', 'RB', 85, 'ACTIVE'], ['eli', 'RB', 40, 'OUT'], ['ned', 'RB', 40, 'BYE'],\n     ['max', 'WR', 70, 'ACTIVE'], ['hal', 'TE', 100, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['ivy', 'bo'], 'TE': ['hal'], 'WR': ['dee', 'max']},\n    'total': 445})],\n [('regression: positional capacity',\n   [[['kai', 'WR', 150, 'BYE'], ['pia', 'K', 150, 'BYE'], ['dee', 'QB', 85, 'BYE'],\n     ['ada', 'TE', 70, 'ACTIVE'], ['ivy', 'WR', 40, 'ACTIVE'], ['eli', 'TE', 70, 'ACTIVE']]],\n   {'lineup': {'FLEX': ['eli'], 'QB': [], 'RB': [], 'TE': ['ada'], 'WR': ['ivy']}, 'total': 180}),\n  ('partial repair probe: positional capacity',\n   [[['ada', 'K', 150, 'ACTIVE'], ['max', 'RB', 100, 'BYE'], ['pia', 'RB', 55, 'ACTIVE'],\n     ['hal', 'K', 150, 'ACTIVE'], ['jo', 'TE', 55, 'BYE'], ['eli', 'RB', 150, 'Q'],\n     ['ned', 'RB', 70, 'ACTIVE'], ['gus', 'RB', 100, 'ACTIVE'], ['fay', 'QB', 85, 'ACTIVE'],\n     ['dee', 'WR', 120, 'ACTIVE'], ['lu', 'QB', 40, 'Q']]],\n   {'lineup': {'FLEX': ['ned'], 'QB': ['fay'], 'RB': ['eli', 'gus'], 'TE': [], 'WR': ['dee']}, 'total': 525}),\n  ('second regression',\n   [[['ada', 'WR', 70, 'OUT'], ['gus', 'RB', 100, 'Q'], ['fay', 'RB', 70, 'OUT'],\n     ['max', 'RB', 150, 'ACTIVE'], ['ivy', 'WR', 85, 'BYE'], ['ned', 'RB', 85, 'ACTIVE'],\n     ['dee', 'RB', 70, 'Q'], ['bo', 'RB', 100, 'ACTIVE'], ['cy', 'RB', 120, 'BYE'],\n     ['jo', 'WR', 150, 'BYE']]],\n   {'lineup': {'FLEX': ['gus'], 'QB': [], 'RB': ['max', 'bo'], 'TE': [], 'WR': []}, 'total': 350}),\n  ('normal control 1',\n   [[['dee', 'QB', 70, 'BYE'], ['gus', 'TE', 120, 'OUT'], ['kai', 'TE', 40, 'ACTIVE'], ['hal', 'WR', 85, 'Q'],\n     ['ned', 'RB', 70, 'ACTIVE'], ['ada', 'RB', 120, 'Q']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['ada', 'ned'], 'TE': ['kai'], 'WR': ['hal']}, 'total': 315}),\n  ('normal control 2',\n   [[['bo', 'WR', 150, 'OUT'], ['dee', 'K', 70, 'ACTIVE'], ['fay', 'WR', 70, 'ACTIVE'],\n     ['ned', 'QB', 70, 'ACTIVE'], ['hal', 'WR', 150, 'ACTIVE'], ['kai', 'RB', 120, 'ACTIVE'],\n     ['oz', 'TE', 150, 'BYE'], ['eli', 'WR', 120, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': ['ned'], 'RB': ['kai'], 'TE': [], 'WR': ['hal', 'fay']}, 'total': 410}),\n  ('normal control 3',\n   [[['ada', 'RB', 150, 'ACTIVE'], ['pia', 'WR', 55, 'ACTIVE'], ['jo', 'TE', 85, 'ACTIVE'],\n     ['oz', 'RB', 55, 'BYE'], ['hal', 'RB', 85, 'BYE'], ['ned', 'WR', 70, 'BYE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['ada'], 'TE': ['jo'], 'WR': ['pia']}, 'total': 290}),\n  ('normal control 4',\n   [[['dee', 'TE', 55, 'Q'], ['eli', 'WR', 150, 'ACTIVE'], ['ned', 'RB', 55, 'OUT'], ['ivy', 'WR', 70, 'BYE'],\n     ['jo', 'RB', 150, 'OUT'], ['ada', 'K', 55, 'OUT'], ['kai', 'RB', 120, 'ACTIVE'],\n     ['cy', 'K', 120, 'ACTIVE'], ['gus', 'WR', 70, 'ACTIVE']]],\n   {'lineup': {'FLEX': [], 'QB': [], 'RB': ['kai'], 'TE': ['dee'], 'WR': ['eli', 'gus']}, 'total': 395})]]\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-optimal-flex-lineup-positional-capacity","generated_at":"2026-09-29T14:50:35.868214+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Start/sit optimizers must respect slot eligibility and deterministic tie-breaks or users see lineups flip between refreshes.","repair":"Place a player only while the slot list is shorter than its capacity.","root_cause":"The capacity check uses <= so each position takes need+1 players.","sha256":"87d8c31a0ef3685294d5111da7bd76174308f9105c911891822e10de81e97f9a","title":"Positional slots accept one player too many · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":41.323,"exit_code":1,"observations":[{"actual":{"lineup":{"FLEX":[],"QB":["eli"],"RB":["cy","ivy","dee"],"TE":[],"WR":["bo"]},"total":355},"check":"regression: positional capacity","expected":{"lineup":{"FLEX":["dee"],"QB":["eli"],"RB":["cy","ivy"],"TE":[],"WR":["bo"]},"total":355},"passed":false},{"actual":{"lineup":{"FLEX":["pia"],"QB":[],"RB":["jo","bo"],"TE":["gus"],"WR":["dee","hal","oz"]},"total":765},"check":"partial repair probe: positional capacity","expected":{"lineup":{"FLEX":["oz"],"QB":[],"RB":["jo","bo"],"TE":["gus"],"WR":["dee","hal"]},"total":695},"passed":false},{"actual":{"lineup":{"FLEX":["lu"],"QB":["oz"],"RB":["eli","gus","ned"],"TE":[],"WR":[]},"total":365},"check":"second regression","expected":{"lineup":{"FLEX":["ned"],"QB":["oz"],"RB":["eli","gus"],"TE":[],"WR":[]},"total":310},"passed":false},{"actual":{"lineup":{"FLEX":[],"QB":["ivy"],"RB":["lu"],"TE":[],"WR":["hal","bo"]},"total":390},"check":"normal control 1","expected":{"lineup":{"FLEX":[],"QB":["ivy"],"RB":["lu"],"TE":[],"WR":["hal","bo"]},"total":390},"passed":true},{"actual":{"lineup":{"FLEX":[],"QB":[],"RB":["jo"],"TE":[],"WR":["fay"]},"total":170},"check":"normal control 2","expected":{"lineup":{"FLEX":[],"QB":[],"RB":["jo"],"TE":[],"WR":["fay"]},"total":170},"passed":true},{"actual":{"lineup":{"FLEX":[],"QB":[],"RB":["pia"],"TE":["dee"],"WR":["hal"]},"total":195},"check":"normal control 3","expected":{"lineup":{"FLEX":[],"QB":[],"RB":["pia"],"TE":["dee"],"WR":["hal"]},"total":195},"passed":true},{"actual":{"lineup":{"FLEX":[],"QB":["dee"],"RB":["hal","oz"],"TE":["max"],"WR":["gus"]},"total":465},"check":"normal control 4","expected":{"lineup":{"FLEX":[],"QB":["dee"],"RB":["hal","oz"],"TE":["max"],"WR":["gus"]},"total":465},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: positional capacity\", \"actual\": {\"lineup\": {\"QB\": [\"eli\"], \"RB\": [\"cy\", \"ivy\", \"dee\"], \"WR\": [\"bo\"], \"TE\": [], \"FLEX\": []}, \"total\": 355}, \"expected\": {\"lineup\": {\"FLEX\": [\"dee\"], \"QB\": [\"eli\"], \"RB\": [\"cy\", \"ivy\"], \"TE\": [], \"WR\": [\"bo\"]}, \"total\": 355}, \"passed\": false}, {\"check\": \"partial repair probe: positional capacity\", \"actual\": {\"lineup\": {\"QB\": [], \"RB\": [\"jo\", \"bo\"], \"WR\": [\"dee\", \"hal\", \"oz\"], \"TE\": [\"gus\"], \"FLEX\": [\"pia\"]}, \"total\": 765}, \"expected\": {\"lineup\": {\"FLEX\": [\"oz\"], \"QB\": [], \"RB\": [\"jo\", \"bo\"], \"TE\": [\"gus\"], \"WR\": [\"dee\", \"hal\"]}, \"total\": 695}, \"passed\": false}, {\"check\": \"second regression\", \"actual\": {\"lineup\": {\"QB\": [\"oz\"], \"RB\": [\"eli\", \"gus\", \"ned\"], \"WR\": [], \"TE\": [], \"FLEX\": [\"lu\"]}, \"total\": 365}, \"expected\": {\"lineup\": {\"FLEX\": [\"ned\"], \"QB\": [\"oz\"], \"RB\": [\"eli\", \"gus\"], \"TE\": [], \"WR\": []}, \"total\": 310}, \"passed\": false}, {\"check\": \"normal control 1\", \"actual\": {\"lineup\": {\"QB\": [\"ivy\"], \"RB\": [\"lu\"], \"WR\": [\"hal\", \"bo\"], \"TE\": [], \"FLEX\": []}, \"total\": 390}, \"expected\": {\"lineup\": {\"FLEX\": [], \"QB\": [\"ivy\"], \"RB\": [\"lu\"], \"TE\": [], \"WR\": [\"hal\", \"bo\"]}, \"total\": 390}, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": {\"lineup\": {\"QB\": [], \"RB\": [\"jo\"], \"WR\": [\"fay\"], \"TE\": [], \"FLEX\": []}, \"total\": 170}, \"expected\": {\"lineup\": {\"FLEX\": [], \"QB\": [], \"RB\": [\"jo\"], \"TE\": [], \"WR\": [\"fay\"]}, \"total\": 170}, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": {\"lineup\": {\"QB\": [], \"RB\": [\"pia\"], \"WR\": [\"hal\"], \"TE\": [\"dee\"], \"FLEX\": []}, \"total\": 195}, \"expected\": {\"lineup\": {\"FLEX\": [], \"QB\": [], \"RB\": [\"pia\"], \"TE\": [\"dee\"], \"WR\": [\"hal\"]}, \"total\": 195}, \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": {\"lineup\": {\"QB\": [\"dee\"], \"RB\": [\"hal\", \"oz\"], \"WR\": [\"gus\"], \"TE\": [\"max\"], \"FLEX\": []}, \"total\": 465}, \"expected\": {\"lineup\": {\"FLEX\": [], \"QB\": [\"dee\"], \"RB\": [\"hal\", \"oz\"], \"TE\": [\"max\"], \"WR\": [\"gus\"]}, \"total\": 465}, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":42.227,"exit_code":1,"observations":[{"actual":{"lineup":{"FLEX":[],"QB":["eli","hal"],"RB":["cy","ivy","dee"],"TE":[],"WR":["bo"]},"total":410},"check":"regression: positional capacity","expected":{"lineup":{"FLEX":["dee"],"QB":["eli"],"RB":["cy","ivy"],"TE":[],"WR":["bo"]},"total":355},"passed":false},{"actual":{"lineup":{"FLEX":["pia"],"QB":[],"RB":["jo","bo"],"TE":["gus"],"WR":["dee","hal","oz"]},"total":765},"check":"partial repair probe: positional capacity","expected":{"lineup":{"FLEX":["oz"],"QB":[],"RB":["jo","bo"],"TE":["gus"],"WR":["dee","hal"]},"total":695},"passed":false},{"actual":{"lineup":{"FLEX":["lu"],"QB":["oz","jo"],"RB":["eli","gus","ned"],"TE":[],"WR":[]},"total":435},"check":"second regression","expected":{"lineup":{"FLEX":["ned"],"QB":["oz"],"RB":["eli","gus"],"TE":[],"WR":[]},"total":310},"passed":false},{"actual":{"lineup":{"FLEX":[],"QB":["ivy"],"RB":["lu"],"TE":[],"WR":["hal","bo"]},"total":390},"check":"normal control 1","expected":{"lineup":{"FLEX":[],"QB":["ivy"],"RB":["lu"],"TE":[],"WR":["hal","bo"]},"total":390},"passed":true},{"actual":{"lineup":{"FLEX":[],"QB":[],"RB":["jo"],"TE":[],"WR":["fay"]},"total":170},"check":"normal control 2","expected":{"lineup":{"FLEX":[],"QB":[],"RB":["jo"],"TE":[],"WR":["fay"]},"total":170},"passed":true},{"actual":{"lineup":{"FLEX":[],"QB":[],"RB":["pia"],"TE":["dee"],"WR":["hal"]},"total":195},"check":"normal control 3","expected":{"lineup":{"FLEX":[],"QB":[],"RB":["pia"],"TE":["dee"],"WR":["hal"]},"total":195},"passed":true},{"actual":{"lineup":{"FLEX":[],"QB":["dee"],"RB":["hal","oz"],"TE":["max"],"WR":["gus"]},"total":465},"check":"normal control 4","expected":{"lineup":{"FLEX":[],"QB":["dee"],"RB":["hal","oz"],"TE":["max"],"WR":["gus"]},"total":465},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: positional capacity\", \"actual\": {\"lineup\": {\"QB\": [\"eli\", \"hal\"], \"RB\": [\"cy\", \"ivy\", \"dee\"], \"WR\": [\"bo\"], \"TE\": [], \"FLEX\": []}, \"total\": 410}, \"expected\": {\"lineup\": {\"FLEX\": [\"dee\"], \"QB\": [\"eli\"], \"RB\": [\"cy\", \"ivy\"], \"TE\": [], \"WR\": [\"bo\"]}, \"total\": 355}, \"passed\": false}, {\"check\": \"partial repair probe: positional capacity\", \"actual\": {\"lineup\": {\"QB\": [], \"RB\": [\"jo\", \"bo\"], \"WR\": [\"dee\", \"hal\", \"oz\"], \"TE\": [\"gus\"], \"FLEX\": [\"pia\"]}, \"total\": 765}, \"expected\": {\"lineup\": {\"FLEX\": [\"oz\"], \"QB\": [], \"RB\": [\"jo\", \"bo\"], \"TE\": [\"gus\"], \"WR\": [\"dee\", \"hal\"]}, \"total\": 695}, \"passed\": false}, {\"check\": \"second regression\", \"actual\": {\"lineup\": {\"QB\": [\"oz\", \"jo\"], \"RB\": [\"eli\", \"gus\", \"ned\"], \"WR\": [], \"TE\": [], \"FLEX\": [\"lu\"]}, \"total\": 435}, \"expected\": {\"lineup\": {\"FLEX\": [\"ned\"], \"QB\": [\"oz\"], \"RB\": [\"eli\", \"gus\"], \"TE\": [], \"WR\": []}, \"total\": 310}, \"passed\": false}, {\"check\": \"normal control 1\", \"actual\": {\"lineup\": {\"QB\": [\"ivy\"], \"RB\": [\"lu\"], \"WR\": [\"hal\", \"bo\"], \"TE\": [], \"FLEX\": []}, \"total\": 390}, \"expected\": {\"lineup\": {\"FLEX\": [], \"QB\": [\"ivy\"], \"RB\": [\"lu\"], \"TE\": [], \"WR\": [\"hal\", \"bo\"]}, \"total\": 390}, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": {\"lineup\": {\"QB\": [], \"RB\": [\"jo\"], \"WR\": [\"fay\"], \"TE\": [], \"FLEX\": []}, \"total\": 170}, \"expected\": {\"lineup\": {\"FLEX\": [], \"QB\": [], \"RB\": [\"jo\"], \"TE\": [], \"WR\": [\"fay\"]}, \"total\": 170}, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": {\"lineup\": {\"QB\": [], \"RB\": [\"pia\"], \"WR\": [\"hal\"], \"TE\": [\"dee\"], \"FLEX\": []}, \"total\": 195}, \"expected\": {\"lineup\": {\"FLEX\": [], \"QB\": [], \"RB\": [\"pia\"], \"TE\": [\"dee\"], \"WR\": [\"hal\"]}, \"total\": 195}, \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": {\"lineup\": {\"QB\": [\"dee\"], \"RB\": [\"hal\", \"oz\"], \"WR\": [\"gus\"], \"TE\": [\"max\"], \"FLEX\": []}, \"total\": 465}, \"expected\": {\"lineup\": {\"FLEX\": [], \"QB\": [\"dee\"], \"RB\": [\"hal\", \"oz\"], \"TE\": [\"max\"], \"WR\": [\"gus\"]}, \"total\": 465}, \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":40.845,"exit_code":0,"observations":[{"actual":{"lineup":{"FLEX":["dee"],"QB":["eli"],"RB":["cy","ivy"],"TE":[],"WR":["bo"]},"total":355},"check":"regression: positional capacity","expected":{"lineup":{"FLEX":["dee"],"QB":["eli"],"RB":["cy","ivy"],"TE":[],"WR":["bo"]},"total":355},"passed":true},{"actual":{"lineup":{"FLEX":["oz"],"QB":[],"RB":["jo","bo"],"TE":["gus"],"WR":["dee","hal"]},"total":695},"check":"partial repair probe: positional capacity","expected":{"lineup":{"FLEX":["oz"],"QB":[],"RB":["jo","bo"],"TE":["gus"],"WR":["dee","hal"]},"total":695},"passed":true},{"actual":{"lineup":{"FLEX":["ned"],"QB":["oz"],"RB":["eli","gus"],"TE":[],"WR":[]},"total":310},"check":"second regression","expected":{"lineup":{"FLEX":["ned"],"QB":["oz"],"RB":["eli","gus"],"TE":[],"WR":[]},"total":310},"passed":true},{"actual":{"lineup":{"FLEX":[],"QB":["ivy"],"RB":["lu"],"TE":[],"WR":["hal","bo"]},"total":390},"check":"normal control 1","expected":{"lineup":{"FLEX":[],"QB":["ivy"],"RB":["lu"],"TE":[],"WR":["hal","bo"]},"total":390},"passed":true},{"actual":{"lineup":{"FLEX":[],"QB":[],"RB":["jo"],"TE":[],"WR":["fay"]},"total":170},"check":"normal control 2","expected":{"lineup":{"FLEX":[],"QB":[],"RB":["jo"],"TE":[],"WR":["fay"]},"total":170},"passed":true},{"actual":{"lineup":{"FLEX":[],"QB":[],"RB":["pia"],"TE":["dee"],"WR":["hal"]},"total":195},"check":"normal control 3","expected":{"lineup":{"FLEX":[],"QB":[],"RB":["pia"],"TE":["dee"],"WR":["hal"]},"total":195},"passed":true},{"actual":{"lineup":{"FLEX":[],"QB":["dee"],"RB":["hal","oz"],"TE":["max"],"WR":["gus"]},"total":465},"check":"normal control 4","expected":{"lineup":{"FLEX":[],"QB":["dee"],"RB":["hal","oz"],"TE":["max"],"WR":["gus"]},"total":465},"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: positional capacity\", \"actual\": {\"lineup\": {\"QB\": [\"eli\"], \"RB\": [\"cy\", \"ivy\"], \"WR\": [\"bo\"], \"TE\": [], \"FLEX\": [\"dee\"]}, \"total\": 355}, \"expected\": {\"lineup\": {\"FLEX\": [\"dee\"], \"QB\": [\"eli\"], \"RB\": [\"cy\", \"ivy\"], \"TE\": [], \"WR\": [\"bo\"]}, \"total\": 355}, \"passed\": true}, {\"check\": \"partial repair probe: positional capacity\", \"actual\": {\"lineup\": {\"QB\": [], \"RB\": [\"jo\", \"bo\"], \"WR\": [\"dee\", \"hal\"], \"TE\": [\"gus\"], \"FLEX\": [\"oz\"]}, \"total\": 695}, \"expected\": {\"lineup\": {\"FLEX\": [\"oz\"], \"QB\": [], \"RB\": [\"jo\", \"bo\"], \"TE\": [\"gus\"], \"WR\": [\"dee\", \"hal\"]}, \"total\": 695}, \"passed\": true}, {\"check\": \"second regression\", \"actual\": {\"lineup\": {\"QB\": [\"oz\"], \"RB\": [\"eli\", \"gus\"], \"WR\": [], \"TE\": [], \"FLEX\": [\"ned\"]}, \"total\": 310}, \"expected\": {\"lineup\": {\"FLEX\": [\"ned\"], \"QB\": [\"oz\"], \"RB\": [\"eli\", \"gus\"], \"TE\": [], \"WR\": []}, \"total\": 310}, \"passed\": true}, {\"check\": \"normal control 1\", \"actual\": {\"lineup\": {\"QB\": [\"ivy\"], \"RB\": [\"lu\"], \"WR\": [\"hal\", \"bo\"], \"TE\": [], \"FLEX\": []}, \"total\": 390}, \"expected\": {\"lineup\": {\"FLEX\": [], \"QB\": [\"ivy\"], \"RB\": [\"lu\"], \"TE\": [], \"WR\": [\"hal\", \"bo\"]}, \"total\": 390}, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": {\"lineup\": {\"QB\": [], \"RB\": [\"jo\"], \"WR\": [\"fay\"], \"TE\": [], \"FLEX\": []}, \"total\": 170}, \"expected\": {\"lineup\": {\"FLEX\": [], \"QB\": [], \"RB\": [\"jo\"], \"TE\": [], \"WR\": [\"fay\"]}, \"total\": 170}, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": {\"lineup\": {\"QB\": [], \"RB\": [\"pia\"], \"WR\": [\"hal\"], \"TE\": [\"dee\"], \"FLEX\": []}, \"total\": 195}, \"expected\": {\"lineup\": {\"FLEX\": [], \"QB\": [], \"RB\": [\"pia\"], \"TE\": [\"dee\"], \"WR\": [\"hal\"]}, \"total\": 195}, \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": {\"lineup\": {\"QB\": [\"dee\"], \"RB\": [\"hal\", \"oz\"], \"WR\": [\"gus\"], \"TE\": [\"max\"], \"FLEX\": []}, \"total\": 465}, \"expected\": {\"lineup\": {\"FLEX\": [], \"QB\": [\"dee\"], \"RB\": [\"hal\", \"oz\"], \"TE\": [\"max\"], \"WR\": [\"gus\"]}, \"total\": 465}, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}