{"abstract":"A lineup lists the same quarterback as captain and flex and earns 2.5x his points.","category":"Fantasy sports scoring","checks":7,"contract":"A single-game lineup has one captain and five flex players. The captain costs 1.5x salary rounded up to the next 100 and scores 1.5x points (hundredths, rounded half away from zero). Validation order: exactly five flex players and six distinct names (roster), salary total at most the cap (cap), players from at least two teams (teams). Return validity, first failing reason, salary and points.","contract_signature":"lineup, points, salaries, teams, cap","evaluation_group":"w2-fantasy-sports-scoring-captain-showdown","failed_approach":"Checking only the first flex slot misses the captain repeated in later slots.","family":"w2-fantasy-sports-scoring-captain-showdown-captain-duplicated-in-flex","id":"FA-85066","implementations":{"attempt":{"sha256":"10d14f744d7250f98cbc4d6856ffbbd543b77208d0196b296cc8656faaa260c4","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(lineup, points, salaries, teams, cap):\n    cpt, flex = lineup['CPT'], lineup['FLEX']\n    names = [cpt] + flex\n    cpt_salary = -(-salaries[cpt] * 3 // 200) * 100\n    salary = cpt_salary + sum(salaries[p] for p in flex)\n    c = points[cpt] * 3\n    cpt_pts = (abs(c) + 1) // 2 * (1 if c >= 0 else -1)\n    total = cpt_pts + sum(points[p] for p in flex)\n    if len(flex) != 5 or len(set(flex)) != 5 or cpt == flex[0]:\n        return {'valid': False, 'reason': 'roster', 'salary': salary, 'points': total}\n    if salary > cap:\n        return {'valid': False, 'reason': 'cap', 'salary': salary, 'points': total}\n    if len({teams[p] for p in names}) < 2:\n        return {'valid': False, 'reason': 'teams', 'salary': salary, 'points': total}\n    return {'valid': True, 'reason': None, 'salary': salary, 'points': total}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: captain duplicated in flex',\n   [{'CPT': 'b', 'FLEX': ['h', 'f', 'a', 'b', 'e']},\n    {'a': 666, 'b': 0, 'c': 1333, 'd': 2001, 'e': 225, 'f': 1333, 'g': 0, 'h': -45},\n    {'a': 3300, 'b': 3300, 'c': 8700, 'd': 5300, 'e': 5500, 'f': 7100, 'g': 5500, 'h': 5300},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 50000],\n   {'points': 2179, 'reason': 'roster', 'salary': 29500, 'valid': False}),\n  ('partial repair probe: captain duplicated in flex',\n   [{'CPT': 'g', 'FLEX': ['b', 'a', 'f', 'g', 'c']},\n    {'a': 2001, 'b': 1333, 'c': 225, 'd': 2001, 'e': 2001, 'f': 1795, 'g': -45, 'h': 2001},\n    {'a': 5500, 'b': 10500, 'c': 8700, 'd': 9900, 'e': 3300, 'f': 3300, 'g': 8700, 'h': 5300},\n    {'a': 'H', 'b': 'H', 'c': 'A', 'd': 'H', 'e': 'A', 'f': 'H', 'g': 'A', 'h': 'H'}, 49700],\n   {'points': 5241, 'reason': 'roster', 'salary': 49800, 'valid': False}),\n  ('second regression',\n   [{'CPT': 'e', 'FLEX': ['d', 'h', 'a', 'c', 'e']},\n    {'a': 2001, 'b': 1795, 'c': -50, 'd': -50, 'e': 1795, 'f': -45, 'g': -45, 'h': -45},\n    {'a': 10500, 'b': 10500, 'c': 5500, 'd': 3300, 'e': 9900, 'f': 5300, 'g': 9900, 'h': 8700},\n    {'a': 'A', 'b': 'H', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 52800],\n   {'points': 6344, 'reason': 'roster', 'salary': 52800, 'valid': False}),\n  ('normal control 1',\n   [{'CPT': 'g', 'FLEX': ['d', 'h', 'b', 'a', 'f']},\n    {'a': 2869, 'b': 2001, 'c': 1795, 'd': 2001, 'e': 0, 'f': 225, 'g': -45, 'h': -50},\n    {'a': 5300, 'b': 7100, 'c': 5500, 'd': 10500, 'e': 10500, 'f': 8700, 'g': 3300, 'h': 5500},\n    {'a': 'A', 'b': 'H', 'c': 'A', 'd': 'A', 'e': 'H', 'f': 'A', 'g': 'A', 'h': 'A'}, 50000],\n   {'points': 6978, 'reason': None, 'salary': 42100, 'valid': True}),\n  ('normal control 2',\n   [{'CPT': 'c', 'FLEX': ['a', 'f', 'e', 'b', 'g']},\n    {'a': -50, 'b': 225, 'c': 2001, 'd': 1333, 'e': 0, 'f': 2001, 'g': 1333, 'h': 225},\n    {'a': 5500, 'b': 3300, 'c': 3300, 'd': 5500, 'e': 8700, 'f': 3300, 'g': 9900, 'h': 5300},\n    {'a': 'A', 'b': 'H', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 50000],\n   {'points': 6511, 'reason': None, 'salary': 35700, 'valid': True}),\n  ('normal control 3',\n   [{'CPT': 'e', 'FLEX': ['h', 'e', 'b', 'a', 'e']},\n    {'a': 225, 'b': 225, 'c': 2001, 'd': 1795, 'e': 225, 'f': -50, 'g': -50, 'h': 225},\n    {'a': 7100, 'b': 3300, 'c': 3300, 'd': 7100, 'e': 3300, 'f': 5300, 'g': 9900, 'h': 10500},\n    {'a': 'H', 'b': 'H', 'c': 'A', 'd': 'H', 'e': 'A', 'f': 'A', 'g': 'H', 'h': 'A'}, 32600],\n   {'points': 1463, 'reason': 'roster', 'salary': 32500, 'valid': False}),\n  ('normal control 4',\n   [{'CPT': 'h', 'FLEX': ['a', 'd', 'f', 'b', 'c']},\n    {'a': 1333, 'b': 2746, 'c': 1795, 'd': 225, 'e': 0, 'f': 2571, 'g': 0, 'h': 0},\n    {'a': 5500, 'b': 10500, 'c': 5500, 'd': 5500, 'e': 5500, 'f': 5500, 'g': 8700, 'h': 5300},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'A', 'h': 'H'}, 40600],\n   {'points': 8670, 'reason': None, 'salary': 40500, 'valid': True})],\n [('regression: captain duplicated in flex',\n   [{'CPT': 'a', 'FLEX': ['g', 'e', 'c', 'd', 'a']},\n    {'a': 225, 'b': -50, 'c': 0, 'd': 1681, 'e': -45, 'f': -50, 'g': 0, 'h': -45},\n    {'a': 3300, 'b': 9900, 'c': 7100, 'd': 9900, 'e': 5300, 'f': 3300, 'g': 5300, 'h': 3300},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'A', 'g': 'H', 'h': 'H'}, 36000],\n   {'points': 2199, 'reason': 'roster', 'salary': 35900, 'valid': False}),\n  ('partial repair probe: captain duplicated in flex',\n   [{'CPT': 'f', 'FLEX': ['d', 'e', 'b', 'g', 'f']},\n    {'a': 1795, 'b': 0, 'c': -45, 'd': 1333, 'e': 865, 'f': -50, 'g': 225, 'h': 2001},\n    {'a': 5300, 'b': 10500, 'c': 8700, 'd': 9900, 'e': 7100, 'f': 5500, 'g': 9900, 'h': 9900},\n    {'a': 'A', 'b': 'H', 'c': 'H', 'd': 'A', 'e': 'A', 'f': 'H', 'g': 'H', 'h': 'H'}, 50000],\n   {'points': 2298, 'reason': 'roster', 'salary': 51200, 'valid': False}),\n  ('second regression',\n   [{'CPT': 'h', 'FLEX': ['e', 'c', 'b', 'h', 'a']},\n    {'a': 2714, 'b': 2001, 'c': -45, 'd': 2001, 'e': 2001, 'f': -50, 'g': 2001, 'h': 1333},\n    {'a': 9900, 'b': 5500, 'c': 5500, 'd': 10500, 'e': 5300, 'f': 5300, 'g': 3300, 'h': 9900},\n    {'a': 'H', 'b': 'H', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'A', 'h': 'H'}, 51000],\n   {'points': 10004, 'reason': 'roster', 'salary': 51000, 'valid': False}),\n  ('normal control 1',\n   [{'CPT': 'd', 'FLEX': ['a', 'e', 'h', 'c', 'g']},\n    {'a': 225, 'b': 225, 'c': 225, 'd': 218, 'e': -50, 'f': 1795, 'g': 1795, 'h': 1740},\n    {'a': 5300, 'b': 5300, 'c': 5500, 'd': 7100, 'e': 9900, 'f': 8700, 'g': 5500, 'h': 5300},\n    {'a': 'H', 'b': 'A', 'c': 'A', 'd': 'H', 'e': 'A', 'f': 'H', 'g': 'A', 'h': 'H'}, 42300],\n   {'points': 4262, 'reason': None, 'salary': 42200, 'valid': True}),\n  ('normal control 2',\n   [{'CPT': 'h', 'FLEX': ['f', 'g', 'c', 'b']},\n    {'a': 1795, 'b': 225, 'c': 2001, 'd': -45, 'e': 180, 'f': -45, 'g': 0, 'h': 0},\n    {'a': 7100, 'b': 5500, 'c': 5500, 'd': 9900, 'e': 7100, 'f': 10500, 'g': 8700, 'h': 3300},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'A', 'g': 'A', 'h': 'H'}, 35300],\n   {'points': 2181, 'reason': 'roster', 'salary': 35200, 'valid': False}),\n  ('normal control 3',\n   [{'CPT': 'a', 'FLEX': ['h', 'c', 'e', 'g', 'd']},\n    {'a': -45, 'b': 2001, 'c': 0, 'd': 16, 'e': 225, 'f': 2001, 'g': 0, 'h': -45},\n    {'a': 7100, 'b': 7100, 'c': 5500, 'd': 8700, 'e': 3300, 'f': 5500, 'g': 10500, 'h': 10500},\n    {'a': 'H', 'b': 'H', 'c': 'H', 'd': 'H', 'e': 'A', 'f': 'H', 'g': 'H', 'h': 'H'}, 49100],\n   {'points': 128, 'reason': 'cap', 'salary': 49200, 'valid': False}),\n  ('normal control 4',\n   [{'CPT': 'g', 'FLEX': ['h', 'c', 'd', 'a', 'e']},\n    {'a': 0, 'b': -50, 'c': 225, 'd': 2001, 'e': -50, 'f': 1795, 'g': 1795, 'h': -50},\n    {'a': 5500, 'b': 7100, 'c': 5500, 'd': 8700, 'e': 5500, 'f': 10500, 'g': 8700, 'h': 5300},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 43500],\n   {'points': 4819, 'reason': 'cap', 'salary': 43600, 'valid': False})],\n [('regression: captain duplicated in flex',\n   [{'CPT': 'f', 'FLEX': ['h', 'f', 'b', 'c', 'a']},\n    {'a': 1333, 'b': -50, 'c': 0, 'd': -50, 'e': 225, 'f': 915, 'g': 2001, 'h': -50},\n    {'a': 9900, 'b': 9900, 'c': 3300, 'd': 8700, 'e': 8700, 'f': 8700, 'g': 8700, 'h': 7100},\n    {'a': 'A', 'b': 'A', 'c': 'A', 'd': 'H', 'e': 'H', 'f': 'A', 'g': 'A', 'h': 'A'}, 51900],\n   {'points': 3521, 'reason': 'roster', 'salary': 52000, 'valid': False}),\n  ('partial repair probe: captain duplicated in flex',\n   [{'CPT': 'c', 'FLEX': ['h', 'g', 'f', 'c', 'd']},\n    {'a': 2001, 'b': 2001, 'c': 225, 'd': 225, 'e': -45, 'f': 225, 'g': 1795, 'h': -45},\n    {'a': 5500, 'b': 10500, 'c': 5500, 'd': 8700, 'e': 5500, 'f': 9900, 'g': 5500, 'h': 9900},\n    {'a': 'H', 'b': 'H', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'A'}, 47800],\n   {'points': 2763, 'reason': 'roster', 'salary': 47800, 'valid': False}),\n  ('second regression',\n   [{'CPT': 'c', 'FLEX': ['c', 'a', 'g', 'b', 'e']},\n    {'a': -50, 'b': 1795, 'c': 0, 'd': 225, 'e': -50, 'f': 1795, 'g': -50, 'h': 1795},\n    {'a': 7100, 'b': 3300, 'c': 10500, 'd': 10500, 'e': 7100, 'f': 5500, 'g': 9900, 'h': 7100},\n    {'a': 'H', 'b': 'H', 'c': 'A', 'd': 'A', 'e': 'A', 'f': 'H', 'g': 'H', 'h': 'A'}, 53800],\n   {'points': 1645, 'reason': 'roster', 'salary': 53700, 'valid': False}),\n  ('normal control 1',\n   [{'CPT': 'd', 'FLEX': ['c', 'e', 'f', 'a', 'h']},\n    {'a': 2001, 'b': 1524, 'c': -60, 'd': -50, 'e': -50, 'f': 2001, 'g': 1795, 'h': -50},\n    {'a': 7100, 'b': 9900, 'c': 5500, 'd': 7100, 'e': 5300, 'f': 5300, 'g': 3300, 'h': 9900},\n    {'a': 'H', 'b': 'A', 'c': 'A', 'd': 'H', 'e': 'A', 'f': 'A', 'g': 'H', 'h': 'H'}, 43800],\n   {'points': 3767, 'reason': None, 'salary': 43800, 'valid': True}),\n  ('normal control 2',\n   [{'CPT': 'b', 'FLEX': ['h', 'c', 'e', 'd', 'a']},\n    {'a': 2001, 'b': -45, 'c': 1333, 'd': -54, 'e': 1264, 'f': 225, 'g': 1333, 'h': 1795},\n    {'a': 7100, 'b': 3300, 'c': 9900, 'd': 7100, 'e': 8700, 'f': 5500, 'g': 9900, 'h': 9900},\n    {'a': 'H', 'b': 'H', 'c': 'H', 'd': 'A', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 47600],\n   {'points': 6271, 'reason': 'cap', 'salary': 47700, 'valid': False}),\n  ('normal control 3',\n   [{'CPT': 'b', 'FLEX': ['c', 'a', 'e', 'h', 'f']},\n    {'a': 2001, 'b': -45, 'c': 1795, 'd': 652, 'e': 225, 'f': -50, 'g': 843, 'h': 1795},\n    {'a': 9900, 'b': 9900, 'c': 10500, 'd': 10500, 'e': 10500, 'f': 9900, 'g': 5300, 'h': 9900},\n    {'a': 'H', 'b': 'H', 'c': 'A', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 50000],\n   {'points': 5698, 'reason': 'cap', 'salary': 65600, 'valid': False}),\n  ('normal control 4',\n   [{'CPT': 'a', 'FLEX': ['f', 'd', 'g', 'h', 'e']},\n    {'a': -50, 'b': -50, 'c': 225, 'd': 1333, 'e': 2448, 'f': 0, 'g': 1795, 'h': 1769},\n    {'a': 5300, 'b': 5300, 'c': 5500, 'd': 5300, 'e': 8700, 'f': 5300, 'g': 3300, 'h': 10500},\n    {'a': 'H', 'b': 'H', 'c': 'A', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 41000],\n   {'points': 7270, 'reason': 'cap', 'salary': 41100, 'valid': False})],\n [('regression: captain duplicated in flex',\n   [{'CPT': 'c', 'FLEX': ['e', 'c', 'a', 'd', 'g']},\n    {'a': 2001, 'b': -45, 'c': -86, 'd': 0, 'e': 1837, 'f': 1795, 'g': -45, 'h': 1795},\n    {'a': 8700, 'b': 9900, 'c': 8700, 'd': 10500, 'e': 10500, 'f': 5300, 'g': 7100, 'h': 5500},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 58700],\n   {'points': 3578, 'reason': 'roster', 'salary': 58600, 'valid': False}),\n  ('partial repair probe: captain duplicated in flex',\n   [{'CPT': 'b', 'FLEX': ['e', 'b', 'h', 'g', 'c']},\n    {'a': 1333, 'b': 2001, 'c': 2001, 'd': 1795, 'e': 2001, 'f': 1795, 'g': 225, 'h': 2001},\n    {'a': 10500, 'b': 9900, 'c': 3300, 'd': 8700, 'e': 7100, 'f': 3300, 'g': 7100, 'h': 5300},\n    {'a': 'A', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'A', 'g': 'H', 'h': 'H'}, 47600],\n   {'points': 11231, 'reason': 'roster', 'salary': 47600, 'valid': False}),\n  ('second regression',\n   [{'CPT': 'g', 'FLEX': ['f', 'd', 'g', 'e', 'c']},\n    {'a': 1795, 'b': -50, 'c': 1795, 'd': 1795, 'e': -45, 'f': -45, 'g': 1795, 'h': 1333},\n    {'a': 9900, 'b': 7100, 'c': 5500, 'd': 5500, 'e': 7100, 'f': 5300, 'g': 9900, 'h': 8700},\n    {'a': 'H', 'b': 'H', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'A'}, 50000],\n   {'points': 7988, 'reason': 'roster', 'salary': 48200, 'valid': False}),\n  ('normal control 1',\n   [{'CPT': 'e', 'FLEX': ['b', 'd', 'h', 'a', 'g']},\n    {'a': 0, 'b': 1333, 'c': -50, 'd': 1795, 'e': -50, 'f': 0, 'g': -50, 'h': 0},\n    {'a': 7100, 'b': 8700, 'c': 9900, 'd': 7100, 'e': 5300, 'f': 8700, 'g': 5300, 'h': 3300},\n    {'a': 'A', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'A', 'f': 'A', 'g': 'A', 'h': 'H'}, 39400],\n   {'points': 3003, 'reason': 'cap', 'salary': 39500, 'valid': False}),\n  ('normal control 2',\n   [{'CPT': 'g', 'FLEX': ['c', 'a', 'd', 'h']},\n    {'a': 1795, 'b': 1795, 'c': 1333, 'd': 1333, 'e': -50, 'f': -45, 'g': 1333, 'h': 2001},\n    {'a': 3300, 'b': 7100, 'c': 9900, 'd': 10500, 'e': 9900, 'f': 5300, 'g': 7100, 'h': 9900},\n    {'a': 'A', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'A', 'f': 'A', 'g': 'A', 'h': 'H'}, 50000],\n   {'points': 8462, 'reason': 'roster', 'salary': 44300, 'valid': False}),\n  ('normal control 3',\n   [{'CPT': 'h', 'FLEX': ['f', 'd', 'e', 'b', 'g']},\n    {'a': -45, 'b': 225, 'c': 1795, 'd': 1333, 'e': -50, 'f': -45, 'g': 0, 'h': 0},\n    {'a': 8700, 'b': 8700, 'c': 5500, 'd': 5300, 'e': 5300, 'f': 5500, 'g': 7100, 'h': 5500},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'A', 'e': 'H', 'f': 'H', 'g': 'A', 'h': 'A'}, 40200],\n   {'points': 1463, 'reason': None, 'salary': 40200, 'valid': True}),\n  ('normal control 4',\n   [{'CPT': 'd', 'FLEX': ['c', 'a', 'h', 'b', 'e']},\n    {'a': -50, 'b': 2001, 'c': 1333, 'd': 1333, 'e': 1333, 'f': 0, 'g': 1333, 'h': 2001},\n    {'a': 5500, 'b': 5300, 'c': 8700, 'd': 10500, 'e': 3300, 'f': 10500, 'g': 8700, 'h': 3300},\n    {'a': 'H', 'b': 'H', 'c': 'A', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 42000],\n   {'points': 8618, 'reason': None, 'salary': 41900, 'valid': True})],\n [('regression: captain duplicated in flex',\n   [{'CPT': 'c', 'FLEX': ['a', 'h', 'b', 'f', 'c']},\n    {'a': 1333, 'b': -50, 'c': 0, 'd': 225, 'e': -50, 'f': 2001, 'g': 2001, 'h': 1333},\n    {'a': 3300, 'b': 3300, 'c': 9900, 'd': 8700, 'e': 5300, 'f': 7100, 'g': 9900, 'h': 3300},\n    {'a': 'A', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'A', 'f': 'H', 'g': 'H', 'h': 'A'}, 41900],\n   {'points': 4617, 'reason': 'roster', 'salary': 41800, 'valid': False}),\n  ('partial repair probe: captain duplicated in flex',\n   [{'CPT': 'g', 'FLEX': ['c', 'e', 'b', 'g', 'a']},\n    {'a': 1795, 'b': 1795, 'c': -45, 'd': 2001, 'e': -45, 'f': 2001, 'g': 225, 'h': 225},\n    {'a': 7100, 'b': 9900, 'c': 3300, 'd': 3300, 'e': 9900, 'f': 5500, 'g': 5500, 'h': 10500},\n    {'a': 'A', 'b': 'A', 'c': 'A', 'd': 'A', 'e': 'A', 'f': 'H', 'g': 'A', 'h': 'H'}, 44000],\n   {'points': 4063, 'reason': 'roster', 'salary': 44000, 'valid': False}),\n  ('second regression',\n   [{'CPT': 'd', 'FLEX': ['d', 'h', 'e', 'b', 'a']},\n    {'a': 225, 'b': 2001, 'c': 1921, 'd': 1795, 'e': 225, 'f': -50, 'g': 1795, 'h': 1795},\n    {'a': 3300, 'b': 5500, 'c': 5300, 'd': 10500, 'e': 9900, 'f': 5300, 'g': 10500, 'h': 5300},\n    {'a': 'A', 'b': 'A', 'c': 'A', 'd': 'H', 'e': 'H', 'f': 'A', 'g': 'A', 'h': 'H'}, 50300],\n   {'points': 8734, 'reason': 'roster', 'salary': 50300, 'valid': False}),\n  ('normal control 1',\n   [{'CPT': 'g', 'FLEX': ['g', 'e', 'd', 'b']},\n    {'a': 2861, 'b': -45, 'c': 0, 'd': 2001, 'e': 0, 'f': -50, 'g': 1333, 'h': 1156},\n    {'a': 3300, 'b': 3300, 'c': 9900, 'd': 8700, 'e': 9900, 'f': 7100, 'g': 7100, 'h': 9900},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 39700],\n   {'points': 5289, 'reason': 'roster', 'salary': 39700, 'valid': False}),\n  ('normal control 2',\n   [{'CPT': 'd', 'FLEX': ['b', 'c', 'a', 'f', 'g']},\n    {'a': 0, 'b': -45, 'c': 1333, 'd': 1333, 'e': -50, 'f': -45, 'g': -50, 'h': 1795},\n    {'a': 7100, 'b': 7100, 'c': 5500, 'd': 5300, 'e': 5500, 'f': 9900, 'g': 5300, 'h': 5500},\n    {'a': 'H', 'b': 'H', 'c': 'H', 'd': 'A', 'e': 'A', 'f': 'H', 'g': 'H', 'h': 'H'}, 50000],\n   {'points': 3193, 'reason': None, 'salary': 42900, 'valid': True}),\n  ('normal control 3',\n   [{'CPT': 'g', 'FLEX': ['c', 'h', 'b', 'e', 'a']},\n    {'a': 1795, 'b': 0, 'c': 1333, 'd': 225, 'e': 2001, 'f': 1333, 'g': 1795, 'h': 1333},\n    {'a': 8700, 'b': 5500, 'c': 3300, 'd': 5500, 'e': 10500, 'f': 5300, 'g': 9900, 'h': 9900},\n    {'a': 'A', 'b': 'A', 'c': 'A', 'd': 'H', 'e': 'A', 'f': 'H', 'g': 'A', 'h': 'H'}, 52900],\n   {'points': 9155, 'reason': None, 'salary': 52800, 'valid': True}),\n  ('normal control 4',\n   [{'CPT': 'a', 'FLEX': ['c', 'd', 'b', 'e', 'h']},\n    {'a': 1333, 'b': -50, 'c': 1333, 'd': 2001, 'e': 1795, 'f': 2001, 'g': 2001, 'h': 225},\n    {'a': 5500, 'b': 8700, 'c': 3300, 'd': 5500, 'e': 10500, 'f': 5500, 'g': 8700, 'h': 8700},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'A', 'e': 'A', 'f': 'H', 'g': 'H', 'h': 'H'}, 44900],\n   {'points': 7304, 'reason': 'cap', 'salary': 45000, 'valid': False})]]\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":"e288c8f8289fef00d117f5a14dfa35fdf32bd2fe43cf3ba3a6f5238b5dd22984","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(lineup, points, salaries, teams, cap):\n    cpt, flex = lineup['CPT'], lineup['FLEX']\n    names = [cpt] + flex\n    cpt_salary = -(-salaries[cpt] * 3 // 200) * 100\n    salary = cpt_salary + sum(salaries[p] for p in flex)\n    c = points[cpt] * 3\n    cpt_pts = (abs(c) + 1) // 2 * (1 if c >= 0 else -1)\n    total = cpt_pts + sum(points[p] for p in flex)\n    if len(flex) != 5 or len(set(flex)) != 5:\n        return {'valid': False, 'reason': 'roster', 'salary': salary, 'points': total}\n    if salary > cap:\n        return {'valid': False, 'reason': 'cap', 'salary': salary, 'points': total}\n    if len({teams[p] for p in names}) < 2:\n        return {'valid': False, 'reason': 'teams', 'salary': salary, 'points': total}\n    return {'valid': True, 'reason': None, 'salary': salary, 'points': total}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: captain duplicated in flex',\n   [{'CPT': 'b', 'FLEX': ['h', 'f', 'a', 'b', 'e']},\n    {'a': 666, 'b': 0, 'c': 1333, 'd': 2001, 'e': 225, 'f': 1333, 'g': 0, 'h': -45},\n    {'a': 3300, 'b': 3300, 'c': 8700, 'd': 5300, 'e': 5500, 'f': 7100, 'g': 5500, 'h': 5300},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 50000],\n   {'points': 2179, 'reason': 'roster', 'salary': 29500, 'valid': False}),\n  ('partial repair probe: captain duplicated in flex',\n   [{'CPT': 'g', 'FLEX': ['b', 'a', 'f', 'g', 'c']},\n    {'a': 2001, 'b': 1333, 'c': 225, 'd': 2001, 'e': 2001, 'f': 1795, 'g': -45, 'h': 2001},\n    {'a': 5500, 'b': 10500, 'c': 8700, 'd': 9900, 'e': 3300, 'f': 3300, 'g': 8700, 'h': 5300},\n    {'a': 'H', 'b': 'H', 'c': 'A', 'd': 'H', 'e': 'A', 'f': 'H', 'g': 'A', 'h': 'H'}, 49700],\n   {'points': 5241, 'reason': 'roster', 'salary': 49800, 'valid': False}),\n  ('second regression',\n   [{'CPT': 'e', 'FLEX': ['d', 'h', 'a', 'c', 'e']},\n    {'a': 2001, 'b': 1795, 'c': -50, 'd': -50, 'e': 1795, 'f': -45, 'g': -45, 'h': -45},\n    {'a': 10500, 'b': 10500, 'c': 5500, 'd': 3300, 'e': 9900, 'f': 5300, 'g': 9900, 'h': 8700},\n    {'a': 'A', 'b': 'H', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 52800],\n   {'points': 6344, 'reason': 'roster', 'salary': 52800, 'valid': False}),\n  ('normal control 1',\n   [{'CPT': 'g', 'FLEX': ['d', 'h', 'b', 'a', 'f']},\n    {'a': 2869, 'b': 2001, 'c': 1795, 'd': 2001, 'e': 0, 'f': 225, 'g': -45, 'h': -50},\n    {'a': 5300, 'b': 7100, 'c': 5500, 'd': 10500, 'e': 10500, 'f': 8700, 'g': 3300, 'h': 5500},\n    {'a': 'A', 'b': 'H', 'c': 'A', 'd': 'A', 'e': 'H', 'f': 'A', 'g': 'A', 'h': 'A'}, 50000],\n   {'points': 6978, 'reason': None, 'salary': 42100, 'valid': True}),\n  ('normal control 2',\n   [{'CPT': 'c', 'FLEX': ['a', 'f', 'e', 'b', 'g']},\n    {'a': -50, 'b': 225, 'c': 2001, 'd': 1333, 'e': 0, 'f': 2001, 'g': 1333, 'h': 225},\n    {'a': 5500, 'b': 3300, 'c': 3300, 'd': 5500, 'e': 8700, 'f': 3300, 'g': 9900, 'h': 5300},\n    {'a': 'A', 'b': 'H', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 50000],\n   {'points': 6511, 'reason': None, 'salary': 35700, 'valid': True}),\n  ('normal control 3',\n   [{'CPT': 'e', 'FLEX': ['h', 'e', 'b', 'a', 'e']},\n    {'a': 225, 'b': 225, 'c': 2001, 'd': 1795, 'e': 225, 'f': -50, 'g': -50, 'h': 225},\n    {'a': 7100, 'b': 3300, 'c': 3300, 'd': 7100, 'e': 3300, 'f': 5300, 'g': 9900, 'h': 10500},\n    {'a': 'H', 'b': 'H', 'c': 'A', 'd': 'H', 'e': 'A', 'f': 'A', 'g': 'H', 'h': 'A'}, 32600],\n   {'points': 1463, 'reason': 'roster', 'salary': 32500, 'valid': False}),\n  ('normal control 4',\n   [{'CPT': 'h', 'FLEX': ['a', 'd', 'f', 'b', 'c']},\n    {'a': 1333, 'b': 2746, 'c': 1795, 'd': 225, 'e': 0, 'f': 2571, 'g': 0, 'h': 0},\n    {'a': 5500, 'b': 10500, 'c': 5500, 'd': 5500, 'e': 5500, 'f': 5500, 'g': 8700, 'h': 5300},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'A', 'h': 'H'}, 40600],\n   {'points': 8670, 'reason': None, 'salary': 40500, 'valid': True})],\n [('regression: captain duplicated in flex',\n   [{'CPT': 'a', 'FLEX': ['g', 'e', 'c', 'd', 'a']},\n    {'a': 225, 'b': -50, 'c': 0, 'd': 1681, 'e': -45, 'f': -50, 'g': 0, 'h': -45},\n    {'a': 3300, 'b': 9900, 'c': 7100, 'd': 9900, 'e': 5300, 'f': 3300, 'g': 5300, 'h': 3300},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'A', 'g': 'H', 'h': 'H'}, 36000],\n   {'points': 2199, 'reason': 'roster', 'salary': 35900, 'valid': False}),\n  ('partial repair probe: captain duplicated in flex',\n   [{'CPT': 'f', 'FLEX': ['d', 'e', 'b', 'g', 'f']},\n    {'a': 1795, 'b': 0, 'c': -45, 'd': 1333, 'e': 865, 'f': -50, 'g': 225, 'h': 2001},\n    {'a': 5300, 'b': 10500, 'c': 8700, 'd': 9900, 'e': 7100, 'f': 5500, 'g': 9900, 'h': 9900},\n    {'a': 'A', 'b': 'H', 'c': 'H', 'd': 'A', 'e': 'A', 'f': 'H', 'g': 'H', 'h': 'H'}, 50000],\n   {'points': 2298, 'reason': 'roster', 'salary': 51200, 'valid': False}),\n  ('second regression',\n   [{'CPT': 'h', 'FLEX': ['e', 'c', 'b', 'h', 'a']},\n    {'a': 2714, 'b': 2001, 'c': -45, 'd': 2001, 'e': 2001, 'f': -50, 'g': 2001, 'h': 1333},\n    {'a': 9900, 'b': 5500, 'c': 5500, 'd': 10500, 'e': 5300, 'f': 5300, 'g': 3300, 'h': 9900},\n    {'a': 'H', 'b': 'H', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'A', 'h': 'H'}, 51000],\n   {'points': 10004, 'reason': 'roster', 'salary': 51000, 'valid': False}),\n  ('normal control 1',\n   [{'CPT': 'd', 'FLEX': ['a', 'e', 'h', 'c', 'g']},\n    {'a': 225, 'b': 225, 'c': 225, 'd': 218, 'e': -50, 'f': 1795, 'g': 1795, 'h': 1740},\n    {'a': 5300, 'b': 5300, 'c': 5500, 'd': 7100, 'e': 9900, 'f': 8700, 'g': 5500, 'h': 5300},\n    {'a': 'H', 'b': 'A', 'c': 'A', 'd': 'H', 'e': 'A', 'f': 'H', 'g': 'A', 'h': 'H'}, 42300],\n   {'points': 4262, 'reason': None, 'salary': 42200, 'valid': True}),\n  ('normal control 2',\n   [{'CPT': 'h', 'FLEX': ['f', 'g', 'c', 'b']},\n    {'a': 1795, 'b': 225, 'c': 2001, 'd': -45, 'e': 180, 'f': -45, 'g': 0, 'h': 0},\n    {'a': 7100, 'b': 5500, 'c': 5500, 'd': 9900, 'e': 7100, 'f': 10500, 'g': 8700, 'h': 3300},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'A', 'g': 'A', 'h': 'H'}, 35300],\n   {'points': 2181, 'reason': 'roster', 'salary': 35200, 'valid': False}),\n  ('normal control 3',\n   [{'CPT': 'a', 'FLEX': ['h', 'c', 'e', 'g', 'd']},\n    {'a': -45, 'b': 2001, 'c': 0, 'd': 16, 'e': 225, 'f': 2001, 'g': 0, 'h': -45},\n    {'a': 7100, 'b': 7100, 'c': 5500, 'd': 8700, 'e': 3300, 'f': 5500, 'g': 10500, 'h': 10500},\n    {'a': 'H', 'b': 'H', 'c': 'H', 'd': 'H', 'e': 'A', 'f': 'H', 'g': 'H', 'h': 'H'}, 49100],\n   {'points': 128, 'reason': 'cap', 'salary': 49200, 'valid': False}),\n  ('normal control 4',\n   [{'CPT': 'g', 'FLEX': ['h', 'c', 'd', 'a', 'e']},\n    {'a': 0, 'b': -50, 'c': 225, 'd': 2001, 'e': -50, 'f': 1795, 'g': 1795, 'h': -50},\n    {'a': 5500, 'b': 7100, 'c': 5500, 'd': 8700, 'e': 5500, 'f': 10500, 'g': 8700, 'h': 5300},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 43500],\n   {'points': 4819, 'reason': 'cap', 'salary': 43600, 'valid': False})],\n [('regression: captain duplicated in flex',\n   [{'CPT': 'f', 'FLEX': ['h', 'f', 'b', 'c', 'a']},\n    {'a': 1333, 'b': -50, 'c': 0, 'd': -50, 'e': 225, 'f': 915, 'g': 2001, 'h': -50},\n    {'a': 9900, 'b': 9900, 'c': 3300, 'd': 8700, 'e': 8700, 'f': 8700, 'g': 8700, 'h': 7100},\n    {'a': 'A', 'b': 'A', 'c': 'A', 'd': 'H', 'e': 'H', 'f': 'A', 'g': 'A', 'h': 'A'}, 51900],\n   {'points': 3521, 'reason': 'roster', 'salary': 52000, 'valid': False}),\n  ('partial repair probe: captain duplicated in flex',\n   [{'CPT': 'c', 'FLEX': ['h', 'g', 'f', 'c', 'd']},\n    {'a': 2001, 'b': 2001, 'c': 225, 'd': 225, 'e': -45, 'f': 225, 'g': 1795, 'h': -45},\n    {'a': 5500, 'b': 10500, 'c': 5500, 'd': 8700, 'e': 5500, 'f': 9900, 'g': 5500, 'h': 9900},\n    {'a': 'H', 'b': 'H', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'A'}, 47800],\n   {'points': 2763, 'reason': 'roster', 'salary': 47800, 'valid': False}),\n  ('second regression',\n   [{'CPT': 'c', 'FLEX': ['c', 'a', 'g', 'b', 'e']},\n    {'a': -50, 'b': 1795, 'c': 0, 'd': 225, 'e': -50, 'f': 1795, 'g': -50, 'h': 1795},\n    {'a': 7100, 'b': 3300, 'c': 10500, 'd': 10500, 'e': 7100, 'f': 5500, 'g': 9900, 'h': 7100},\n    {'a': 'H', 'b': 'H', 'c': 'A', 'd': 'A', 'e': 'A', 'f': 'H', 'g': 'H', 'h': 'A'}, 53800],\n   {'points': 1645, 'reason': 'roster', 'salary': 53700, 'valid': False}),\n  ('normal control 1',\n   [{'CPT': 'd', 'FLEX': ['c', 'e', 'f', 'a', 'h']},\n    {'a': 2001, 'b': 1524, 'c': -60, 'd': -50, 'e': -50, 'f': 2001, 'g': 1795, 'h': -50},\n    {'a': 7100, 'b': 9900, 'c': 5500, 'd': 7100, 'e': 5300, 'f': 5300, 'g': 3300, 'h': 9900},\n    {'a': 'H', 'b': 'A', 'c': 'A', 'd': 'H', 'e': 'A', 'f': 'A', 'g': 'H', 'h': 'H'}, 43800],\n   {'points': 3767, 'reason': None, 'salary': 43800, 'valid': True}),\n  ('normal control 2',\n   [{'CPT': 'b', 'FLEX': ['h', 'c', 'e', 'd', 'a']},\n    {'a': 2001, 'b': -45, 'c': 1333, 'd': -54, 'e': 1264, 'f': 225, 'g': 1333, 'h': 1795},\n    {'a': 7100, 'b': 3300, 'c': 9900, 'd': 7100, 'e': 8700, 'f': 5500, 'g': 9900, 'h': 9900},\n    {'a': 'H', 'b': 'H', 'c': 'H', 'd': 'A', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 47600],\n   {'points': 6271, 'reason': 'cap', 'salary': 47700, 'valid': False}),\n  ('normal control 3',\n   [{'CPT': 'b', 'FLEX': ['c', 'a', 'e', 'h', 'f']},\n    {'a': 2001, 'b': -45, 'c': 1795, 'd': 652, 'e': 225, 'f': -50, 'g': 843, 'h': 1795},\n    {'a': 9900, 'b': 9900, 'c': 10500, 'd': 10500, 'e': 10500, 'f': 9900, 'g': 5300, 'h': 9900},\n    {'a': 'H', 'b': 'H', 'c': 'A', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 50000],\n   {'points': 5698, 'reason': 'cap', 'salary': 65600, 'valid': False}),\n  ('normal control 4',\n   [{'CPT': 'a', 'FLEX': ['f', 'd', 'g', 'h', 'e']},\n    {'a': -50, 'b': -50, 'c': 225, 'd': 1333, 'e': 2448, 'f': 0, 'g': 1795, 'h': 1769},\n    {'a': 5300, 'b': 5300, 'c': 5500, 'd': 5300, 'e': 8700, 'f': 5300, 'g': 3300, 'h': 10500},\n    {'a': 'H', 'b': 'H', 'c': 'A', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 41000],\n   {'points': 7270, 'reason': 'cap', 'salary': 41100, 'valid': False})],\n [('regression: captain duplicated in flex',\n   [{'CPT': 'c', 'FLEX': ['e', 'c', 'a', 'd', 'g']},\n    {'a': 2001, 'b': -45, 'c': -86, 'd': 0, 'e': 1837, 'f': 1795, 'g': -45, 'h': 1795},\n    {'a': 8700, 'b': 9900, 'c': 8700, 'd': 10500, 'e': 10500, 'f': 5300, 'g': 7100, 'h': 5500},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 58700],\n   {'points': 3578, 'reason': 'roster', 'salary': 58600, 'valid': False}),\n  ('partial repair probe: captain duplicated in flex',\n   [{'CPT': 'b', 'FLEX': ['e', 'b', 'h', 'g', 'c']},\n    {'a': 1333, 'b': 2001, 'c': 2001, 'd': 1795, 'e': 2001, 'f': 1795, 'g': 225, 'h': 2001},\n    {'a': 10500, 'b': 9900, 'c': 3300, 'd': 8700, 'e': 7100, 'f': 3300, 'g': 7100, 'h': 5300},\n    {'a': 'A', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'A', 'g': 'H', 'h': 'H'}, 47600],\n   {'points': 11231, 'reason': 'roster', 'salary': 47600, 'valid': False}),\n  ('second regression',\n   [{'CPT': 'g', 'FLEX': ['f', 'd', 'g', 'e', 'c']},\n    {'a': 1795, 'b': -50, 'c': 1795, 'd': 1795, 'e': -45, 'f': -45, 'g': 1795, 'h': 1333},\n    {'a': 9900, 'b': 7100, 'c': 5500, 'd': 5500, 'e': 7100, 'f': 5300, 'g': 9900, 'h': 8700},\n    {'a': 'H', 'b': 'H', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'A'}, 50000],\n   {'points': 7988, 'reason': 'roster', 'salary': 48200, 'valid': False}),\n  ('normal control 1',\n   [{'CPT': 'e', 'FLEX': ['b', 'd', 'h', 'a', 'g']},\n    {'a': 0, 'b': 1333, 'c': -50, 'd': 1795, 'e': -50, 'f': 0, 'g': -50, 'h': 0},\n    {'a': 7100, 'b': 8700, 'c': 9900, 'd': 7100, 'e': 5300, 'f': 8700, 'g': 5300, 'h': 3300},\n    {'a': 'A', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'A', 'f': 'A', 'g': 'A', 'h': 'H'}, 39400],\n   {'points': 3003, 'reason': 'cap', 'salary': 39500, 'valid': False}),\n  ('normal control 2',\n   [{'CPT': 'g', 'FLEX': ['c', 'a', 'd', 'h']},\n    {'a': 1795, 'b': 1795, 'c': 1333, 'd': 1333, 'e': -50, 'f': -45, 'g': 1333, 'h': 2001},\n    {'a': 3300, 'b': 7100, 'c': 9900, 'd': 10500, 'e': 9900, 'f': 5300, 'g': 7100, 'h': 9900},\n    {'a': 'A', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'A', 'f': 'A', 'g': 'A', 'h': 'H'}, 50000],\n   {'points': 8462, 'reason': 'roster', 'salary': 44300, 'valid': False}),\n  ('normal control 3',\n   [{'CPT': 'h', 'FLEX': ['f', 'd', 'e', 'b', 'g']},\n    {'a': -45, 'b': 225, 'c': 1795, 'd': 1333, 'e': -50, 'f': -45, 'g': 0, 'h': 0},\n    {'a': 8700, 'b': 8700, 'c': 5500, 'd': 5300, 'e': 5300, 'f': 5500, 'g': 7100, 'h': 5500},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'A', 'e': 'H', 'f': 'H', 'g': 'A', 'h': 'A'}, 40200],\n   {'points': 1463, 'reason': None, 'salary': 40200, 'valid': True}),\n  ('normal control 4',\n   [{'CPT': 'd', 'FLEX': ['c', 'a', 'h', 'b', 'e']},\n    {'a': -50, 'b': 2001, 'c': 1333, 'd': 1333, 'e': 1333, 'f': 0, 'g': 1333, 'h': 2001},\n    {'a': 5500, 'b': 5300, 'c': 8700, 'd': 10500, 'e': 3300, 'f': 10500, 'g': 8700, 'h': 3300},\n    {'a': 'H', 'b': 'H', 'c': 'A', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 42000],\n   {'points': 8618, 'reason': None, 'salary': 41900, 'valid': True})],\n [('regression: captain duplicated in flex',\n   [{'CPT': 'c', 'FLEX': ['a', 'h', 'b', 'f', 'c']},\n    {'a': 1333, 'b': -50, 'c': 0, 'd': 225, 'e': -50, 'f': 2001, 'g': 2001, 'h': 1333},\n    {'a': 3300, 'b': 3300, 'c': 9900, 'd': 8700, 'e': 5300, 'f': 7100, 'g': 9900, 'h': 3300},\n    {'a': 'A', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'A', 'f': 'H', 'g': 'H', 'h': 'A'}, 41900],\n   {'points': 4617, 'reason': 'roster', 'salary': 41800, 'valid': False}),\n  ('partial repair probe: captain duplicated in flex',\n   [{'CPT': 'g', 'FLEX': ['c', 'e', 'b', 'g', 'a']},\n    {'a': 1795, 'b': 1795, 'c': -45, 'd': 2001, 'e': -45, 'f': 2001, 'g': 225, 'h': 225},\n    {'a': 7100, 'b': 9900, 'c': 3300, 'd': 3300, 'e': 9900, 'f': 5500, 'g': 5500, 'h': 10500},\n    {'a': 'A', 'b': 'A', 'c': 'A', 'd': 'A', 'e': 'A', 'f': 'H', 'g': 'A', 'h': 'H'}, 44000],\n   {'points': 4063, 'reason': 'roster', 'salary': 44000, 'valid': False}),\n  ('second regression',\n   [{'CPT': 'd', 'FLEX': ['d', 'h', 'e', 'b', 'a']},\n    {'a': 225, 'b': 2001, 'c': 1921, 'd': 1795, 'e': 225, 'f': -50, 'g': 1795, 'h': 1795},\n    {'a': 3300, 'b': 5500, 'c': 5300, 'd': 10500, 'e': 9900, 'f': 5300, 'g': 10500, 'h': 5300},\n    {'a': 'A', 'b': 'A', 'c': 'A', 'd': 'H', 'e': 'H', 'f': 'A', 'g': 'A', 'h': 'H'}, 50300],\n   {'points': 8734, 'reason': 'roster', 'salary': 50300, 'valid': False}),\n  ('normal control 1',\n   [{'CPT': 'g', 'FLEX': ['g', 'e', 'd', 'b']},\n    {'a': 2861, 'b': -45, 'c': 0, 'd': 2001, 'e': 0, 'f': -50, 'g': 1333, 'h': 1156},\n    {'a': 3300, 'b': 3300, 'c': 9900, 'd': 8700, 'e': 9900, 'f': 7100, 'g': 7100, 'h': 9900},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'H', 'e': 'H', 'f': 'H', 'g': 'H', 'h': 'H'}, 39700],\n   {'points': 5289, 'reason': 'roster', 'salary': 39700, 'valid': False}),\n  ('normal control 2',\n   [{'CPT': 'd', 'FLEX': ['b', 'c', 'a', 'f', 'g']},\n    {'a': 0, 'b': -45, 'c': 1333, 'd': 1333, 'e': -50, 'f': -45, 'g': -50, 'h': 1795},\n    {'a': 7100, 'b': 7100, 'c': 5500, 'd': 5300, 'e': 5500, 'f': 9900, 'g': 5300, 'h': 5500},\n    {'a': 'H', 'b': 'H', 'c': 'H', 'd': 'A', 'e': 'A', 'f': 'H', 'g': 'H', 'h': 'H'}, 50000],\n   {'points': 3193, 'reason': None, 'salary': 42900, 'valid': True}),\n  ('normal control 3',\n   [{'CPT': 'g', 'FLEX': ['c', 'h', 'b', 'e', 'a']},\n    {'a': 1795, 'b': 0, 'c': 1333, 'd': 225, 'e': 2001, 'f': 1333, 'g': 1795, 'h': 1333},\n    {'a': 8700, 'b': 5500, 'c': 3300, 'd': 5500, 'e': 10500, 'f': 5300, 'g': 9900, 'h': 9900},\n    {'a': 'A', 'b': 'A', 'c': 'A', 'd': 'H', 'e': 'A', 'f': 'H', 'g': 'A', 'h': 'H'}, 52900],\n   {'points': 9155, 'reason': None, 'salary': 52800, 'valid': True}),\n  ('normal control 4',\n   [{'CPT': 'a', 'FLEX': ['c', 'd', 'b', 'e', 'h']},\n    {'a': 1333, 'b': -50, 'c': 1333, 'd': 2001, 'e': 1795, 'f': 2001, 'g': 2001, 'h': 225},\n    {'a': 5500, 'b': 8700, 'c': 3300, 'd': 5500, 'e': 10500, 'f': 5500, 'g': 8700, 'h': 8700},\n    {'a': 'H', 'b': 'A', 'c': 'H', 'd': 'A', 'e': 'A', 'f': 'H', 'g': 'H', 'h': 'H'}, 44900],\n   {'points': 7304, 'reason': 'cap', 'salary': 45000, 'valid': False})]]\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-captain-showdown-captain-duplicated-in-flex","generated_at":"2026-09-29T14:50:37.017397+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Captain multipliers on both salary and points are where showdown contest lineups are mispriced or wrongly rejected.","root_cause":"Uniqueness is checked only within the flex list.","sha256":"beeb35167e562c2795cd9134d87c4c7c2e603aff727e25864bb8fbf8391e0343","title":"Captain also rostered as a flex player · 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":43.806,"exit_code":1,"observations":[{"actual":{"points":2179,"reason":null,"salary":29500,"valid":true},"check":"regression: captain duplicated in flex","expected":{"points":2179,"reason":"roster","salary":29500,"valid":false},"passed":false},{"actual":{"points":5241,"reason":"cap","salary":49800,"valid":false},"check":"partial repair probe: captain duplicated in flex","expected":{"points":5241,"reason":"roster","salary":49800,"valid":false},"passed":false},{"actual":{"points":6344,"reason":null,"salary":52800,"valid":true},"check":"second regression","expected":{"points":6344,"reason":"roster","salary":52800,"valid":false},"passed":false},{"actual":{"points":6978,"reason":null,"salary":42100,"valid":true},"check":"normal control 1","expected":{"points":6978,"reason":null,"salary":42100,"valid":true},"passed":true},{"actual":{"points":6511,"reason":null,"salary":35700,"valid":true},"check":"normal control 2","expected":{"points":6511,"reason":null,"salary":35700,"valid":true},"passed":true},{"actual":{"points":1463,"reason":"roster","salary":32500,"valid":false},"check":"normal control 3","expected":{"points":1463,"reason":"roster","salary":32500,"valid":false},"passed":true},{"actual":{"points":8670,"reason":null,"salary":40500,"valid":true},"check":"normal control 4","expected":{"points":8670,"reason":null,"salary":40500,"valid":true},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: captain duplicated in flex\", \"actual\": {\"valid\": true, \"reason\": null, \"salary\": 29500, \"points\": 2179}, \"expected\": {\"points\": 2179, \"reason\": \"roster\", \"salary\": 29500, \"valid\": false}, \"passed\": false}, {\"check\": \"partial repair probe: captain duplicated in flex\", \"actual\": {\"valid\": false, \"reason\": \"cap\", \"salary\": 49800, \"points\": 5241}, \"expected\": {\"points\": 5241, \"reason\": \"roster\", \"salary\": 49800, \"valid\": false}, \"passed\": false}, {\"check\": \"second regression\", \"actual\": {\"valid\": true, \"reason\": null, \"salary\": 52800, \"points\": 6344}, \"expected\": {\"points\": 6344, \"reason\": \"roster\", \"salary\": 52800, \"valid\": false}, \"passed\": false}, {\"check\": \"normal control 1\", \"actual\": {\"valid\": true, \"reason\": null, \"salary\": 42100, \"points\": 6978}, \"expected\": {\"points\": 6978, \"reason\": null, \"salary\": 42100, \"valid\": true}, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": {\"valid\": true, \"reason\": null, \"salary\": 35700, \"points\": 6511}, \"expected\": {\"points\": 6511, \"reason\": null, \"salary\": 35700, \"valid\": true}, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": {\"valid\": false, \"reason\": \"roster\", \"salary\": 32500, \"points\": 1463}, \"expected\": {\"points\": 1463, \"reason\": \"roster\", \"salary\": 32500, \"valid\": false}, \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": {\"valid\": true, \"reason\": null, \"salary\": 40500, \"points\": 8670}, \"expected\": {\"points\": 8670, \"reason\": null, \"salary\": 40500, \"valid\": true}, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":43.059,"exit_code":1,"observations":[{"actual":{"points":2179,"reason":null,"salary":29500,"valid":true},"check":"regression: captain duplicated in flex","expected":{"points":2179,"reason":"roster","salary":29500,"valid":false},"passed":false},{"actual":{"points":5241,"reason":"cap","salary":49800,"valid":false},"check":"partial repair probe: captain duplicated in flex","expected":{"points":5241,"reason":"roster","salary":49800,"valid":false},"passed":false},{"actual":{"points":6344,"reason":null,"salary":52800,"valid":true},"check":"second regression","expected":{"points":6344,"reason":"roster","salary":52800,"valid":false},"passed":false},{"actual":{"points":6978,"reason":null,"salary":42100,"valid":true},"check":"normal control 1","expected":{"points":6978,"reason":null,"salary":42100,"valid":true},"passed":true},{"actual":{"points":6511,"reason":null,"salary":35700,"valid":true},"check":"normal control 2","expected":{"points":6511,"reason":null,"salary":35700,"valid":true},"passed":true},{"actual":{"points":1463,"reason":"roster","salary":32500,"valid":false},"check":"normal control 3","expected":{"points":1463,"reason":"roster","salary":32500,"valid":false},"passed":true},{"actual":{"points":8670,"reason":null,"salary":40500,"valid":true},"check":"normal control 4","expected":{"points":8670,"reason":null,"salary":40500,"valid":true},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: captain duplicated in flex\", \"actual\": {\"valid\": true, \"reason\": null, \"salary\": 29500, \"points\": 2179}, \"expected\": {\"points\": 2179, \"reason\": \"roster\", \"salary\": 29500, \"valid\": false}, \"passed\": false}, {\"check\": \"partial repair probe: captain duplicated in flex\", \"actual\": {\"valid\": false, \"reason\": \"cap\", \"salary\": 49800, \"points\": 5241}, \"expected\": {\"points\": 5241, \"reason\": \"roster\", \"salary\": 49800, \"valid\": false}, \"passed\": false}, {\"check\": \"second regression\", \"actual\": {\"valid\": true, \"reason\": null, \"salary\": 52800, \"points\": 6344}, \"expected\": {\"points\": 6344, \"reason\": \"roster\", \"salary\": 52800, \"valid\": false}, \"passed\": false}, {\"check\": \"normal control 1\", \"actual\": {\"valid\": true, \"reason\": null, \"salary\": 42100, \"points\": 6978}, \"expected\": {\"points\": 6978, \"reason\": null, \"salary\": 42100, \"valid\": true}, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": {\"valid\": true, \"reason\": null, \"salary\": 35700, \"points\": 6511}, \"expected\": {\"points\": 6511, \"reason\": null, \"salary\": 35700, \"valid\": true}, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": {\"valid\": false, \"reason\": \"roster\", \"salary\": 32500, \"points\": 1463}, \"expected\": {\"points\": 1463, \"reason\": \"roster\", \"salary\": 32500, \"valid\": false}, \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": {\"valid\": true, \"reason\": null, \"salary\": 40500, \"points\": 8670}, \"expected\": {\"points\": 8670, \"reason\": null, \"salary\": 40500, \"valid\": true}, \"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."}}