{"abstract":"Three entries sharing 1000 cents receive 333 each and one cent is never paid.","category":"Fantasy sports scoring","checks":7,"contract":"Daily contest entries are [entry id, score in hundredths]; payouts[r] is the prize in cents for finishing position r (0-based), positions past the list pay 0. Entries with equal scores share the positions they jointly occupy: their prizes are summed and split equally, whole cents only, with leftover cents given one each to the tied entries in ascending id order. Return id -> cents for entries receiving more than 0.","evaluation_group":"w2-fantasy-sports-scoring-contest-payout-ties","failed_approach":"Handing the whole remainder to the first entry overpays it when two or more cents remain.","family":"w2-fantasy-sports-scoring-contest-payout-ties-remainder-cents","id":"FA-85036","implementations":{"attempt":{"sha256":"413c6c8b0237a86c1a18f7658e59117a23df831d693d488e60925fd6f2af1480","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(entries, payouts):\n    ordered = sorted(entries, key=lambda e: (-e[1], e[0]))\n    out = {}\n    i = 0\n    while i < len(ordered):\n        j = i\n        while j < len(ordered) and ordered[j][1] == ordered[i][1]:\n            j += 1\n        pool = sum(payouts[i:j])\n        group = sorted(e[0] for e in ordered[i:j])\n        share, extra = divmod(pool, len(group))\n        for k, eid in enumerate(group):\n            amt = share + (extra if k == 0 else 0)\n            if amt > 0:\n                out[eid] = amt\n        i = j\n    return out\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: remainder cents',\n   [[['e19', 1333], ['e05', 1333], ['e18', 1333], ['e01', 1333]], [500, 100, 2]],\n   {'e01': 151, 'e05': 151, 'e18': 150, 'e19': 150}),\n  ('partial repair probe: remainder cents',\n   [[['e25', 1333], ['e16', 1326], ['e05', 1333], ['e24', 1330], ['e29', 1278], ['e06', 1333], ['e03', 1328],\n     ['e12', 1328]],\n    [301, 199]],\n   {'e05': 167, 'e06': 167, 'e25': 166}),\n  ('second regression',\n   [[['e15', 1420], ['e02', 1365], ['e17', 1410], ['e18', 1417], ['e14', 1365], ['e12', 1410], ['e03', 1415],\n     ['e27', 1420]],\n    [1000, 77, 77, 2]],\n   {'e03': 2, 'e15': 539, 'e18': 77, 'e27': 538}),\n  ('normal control 1',\n   [[['e11', 1333], ['e26', 1333], ['e14', 1333], ['e03', 1330], ['e09', 1326], ['e23', 1330], ['e06', 1328],\n     ['e02', 1330]],\n    [301, 100, 1]],\n   {'e11': 134, 'e14': 134, 'e26': 134}),\n  ('normal control 2', [[['e18', 1410], ['e13', 1415], ['e14', 1415], ['e05', 1415]], [501, 500, 301]],\n   {'e05': 434, 'e13': 434, 'e14': 434}),\n  ('normal control 3',\n   [[['e05', 1323], ['e17', 1328], ['e09', 1330], ['e13', 1328], ['e02', 1333], ['e26', 1333], ['e01', 1278],\n     ['e12', 1330]],\n    [1000, 500]],\n   {'e02': 750, 'e26': 750}),\n  ('normal control 4', [[['e03', 1500], ['e24', 1500], ['e25', 1497]], [199, 199, 77, 77, 1]],\n   {'e03': 199, 'e24': 199, 'e25': 77})],\n [('regression: remainder cents',\n   [[['e04', 1410], ['e16', 1420], ['e14', 1415], ['e11', 1420], ['e20', 1410]], [500, 199, 77, 1, 1]],\n   {'e04': 1, 'e11': 350, 'e14': 77, 'e16': 349, 'e20': 1}),\n  ('partial repair probe: remainder cents',\n   [[['e11', 1490], ['e07', 1490], ['e04', 1500], ['e26', 1500], ['e14', 1500], ['e22', 1495], ['e25', 1500],\n     ['e20', 1500]],\n    [301, 301]],\n   {'e04': 121, 'e14': 121, 'e20': 120, 'e25': 120, 'e26': 120}),\n  ('second regression',\n   [[['e02', 1445], ['e13', 1495], ['e24', 1493], ['e21', 1495], ['e11', 1495], ['e07', 1500], ['e09', 1495],\n     ['e29', 1500]],\n    [500, 100, 1]],\n   {'e07': 300, 'e09': 1, 'e29': 300}),\n  ('normal control 1',\n   [[['e26', 1326], ['e23', 1333], ['e08', 1323], ['e20', 1333], ['e29', 1278], ['e13', 1326]],\n    [501, 301, 250, 100]],\n   {'e13': 175, 'e20': 401, 'e23': 401, 'e26': 175}),\n  ('normal control 2', [[['e22', 1278], ['e12', 1278], ['e24', 1328], ['e16', 1333]], [77, 77]],\n   {'e16': 77, 'e24': 77}),\n  ('normal control 3',\n   [[['e16', 1365], ['e12', 1415], ['e14', 1365], ['e18', 1420], ['e13', 1420], ['e26', 1417], ['e22', 1410],\n     ['e20', 1420], ['e10', 1365]],\n    [501, 500, 199, 77, 2]],\n   {'e12': 2, 'e13': 400, 'e18': 400, 'e20': 400, 'e26': 77}),\n  ('normal control 4',\n   [[['e02', 1490], ['e22', 1445], ['e25', 1490], ['e17', 1500], ['e26', 1493], ['e23', 1445]], [1000, 1]],\n   {'e17': 1000, 'e26': 1})],\n [('regression: remainder cents', [[['e19', 1417], ['e17', 1417], ['e18', 1420], ['e29', 1365]], [1000, 199]],\n   {'e17': 100, 'e18': 1000, 'e19': 99}),\n  ('partial repair probe: remainder cents',\n   [[['e15', 1330], ['e17', 1326], ['e09', 1278], ['e22', 1333], ['e26', 1333], ['e07', 1333], ['e08', 1333],\n     ['e25', 1333], ['e24', 1330]],\n    [501, 500, 301, 250, 77]],\n   {'e07': 326, 'e08': 326, 'e22': 326, 'e25': 326, 'e26': 325}),\n  ('second regression',\n   [[['e02', 1445], ['e28', 1493], ['e19', 1493], ['e15', 1495], ['e11', 1445], ['e29', 1500], ['e03', 1500],\n     ['e26', 1500], ['e18', 1493]],\n    [100, 100, 77, 2]],\n   {'e03': 93, 'e15': 2, 'e26': 92, 'e29': 92}),\n  ('normal control 1',\n   [[['e02', 1493], ['e23', 1497], ['e05', 1490], ['e19', 1445], ['e06', 1493], ['e09', 1493]], [250, 2, 1]],\n   {'e02': 1, 'e06': 1, 'e09': 1, 'e23': 250}),\n  ('normal control 2',\n   [[['e28', 1493], ['e05', 1500], ['e20', 1500], ['e16', 1493], ['e01', 1445], ['e07', 1500], ['e26', 1445],\n     ['e21', 1495]],\n    [1000, 301, 100, 1]],\n   {'e05': 467, 'e07': 467, 'e20': 467, 'e21': 1}),\n  ('normal control 3',\n   [[['e14', 1328], ['e03', 1278], ['e10', 1328], ['e21', 1333], ['e22', 1323]], [1000, 500, 100, 100, 77]],\n   {'e03': 77, 'e10': 300, 'e14': 300, 'e21': 1000, 'e22': 100}),\n  ('normal control 4', [[['e01', 1333], ['e22', 1328], ['e15', 1333], ['e02', 1326]], [1000, 500, 2, 1]],\n   {'e01': 750, 'e02': 1, 'e15': 750, 'e22': 2})],\n [('regression: remainder cents',\n   [[['e08', 1323], ['e27', 1333], ['e20', 1330], ['e26', 1330], ['e14', 1333], ['e09', 1328], ['e19', 1333],\n     ['e25', 1323], ['e28', 1333]],\n    [1000, 250, 199, 199, 77]],\n   {'e14': 412, 'e19': 412, 'e20': 39, 'e26': 38, 'e27': 412, 'e28': 412}),\n  ('partial repair probe: remainder cents',\n   [[['e09', 1278], ['e02', 1328], ['e21', 1333], ['e06', 1328], ['e11', 1328]], [1000, 500, 500, 100]],\n   {'e02': 367, 'e06': 367, 'e11': 366, 'e21': 1000}),\n  ('second regression',\n   [[['e29', 1500], ['e22', 1493], ['e01', 1500], ['e10', 1493], ['e21', 1445], ['e24', 1490], ['e27', 1500],\n     ['e09', 1495], ['e08', 1497]],\n    [501, 500, 77, 1]],\n   {'e01': 360, 'e08': 1, 'e27': 359, 'e29': 359}),\n  ('normal control 1', [[['e22', 1410], ['e08', 1413], ['e10', 1365], ['e07', 1415]], [2, 1, 1]],\n   {'e07': 2, 'e08': 1, 'e22': 1}),\n  ('normal control 2',\n   [[['e23', 1420], ['e02', 1413], ['e14', 1415], ['e15', 1415]], [1000, 1000, 1000, 199, 2]],\n   {'e02': 199, 'e14': 1000, 'e15': 1000, 'e23': 1000}),\n  ('normal control 3', [[['e17', 1328], ['e22', 1326], ['e08', 1330]], [500, 250, 199, 100, 77]],\n   {'e08': 500, 'e17': 250, 'e22': 199}),\n  ('normal control 4',\n   [[['e12', 1490], ['e17', 1500], ['e07', 1493], ['e05', 1500], ['e18', 1500], ['e11', 1495], ['e06', 1500],\n     ['e24', 1495], ['e28', 1500]],\n    [501, 199, 100, 100]],\n   {'e05': 180, 'e06': 180, 'e17': 180, 'e18': 180, 'e28': 180})],\n [('regression: remainder cents',\n   [[['e13', 1410], ['e25', 1413], ['e09', 1413], ['e16', 1415], ['e24', 1410], ['e08', 1420], ['e27', 1410],\n     ['e01', 1410]],\n    [250, 199, 77, 77, 2]],\n   {'e01': 1, 'e08': 250, 'e09': 77, 'e13': 1, 'e16': 199, 'e25': 77}),\n  ('partial repair probe: remainder cents',\n   [[['e12', 1413], ['e23', 1410], ['e25', 1410], ['e24', 1417], ['e02', 1365], ['e06', 1415], ['e11', 1410]],\n    [1000, 250, 199, 77]],\n   {'e06': 250, 'e11': 26, 'e12': 199, 'e23': 26, 'e24': 1000, 'e25': 25}),\n  ('second regression',\n   [[['e06', 1328], ['e12', 1328], ['e09', 1333], ['e18', 1328]], [250, 250, 100, 77, 2]],\n   {'e06': 143, 'e09': 250, 'e12': 142, 'e18': 142}),\n  ('normal control 1', [[['e01', 1278], ['e25', 1326], ['e23', 1328]], [199, 77]], {'e23': 199, 'e25': 77}),\n  ('normal control 2', [[['e23', 1417], ['e19', 1413], ['e08', 1420]], [1000, 501, 501, 199]],\n   {'e08': 1000, 'e19': 501, 'e23': 501}),\n  ('normal control 3',\n   [[['e23', 1493], ['e10', 1495], ['e13', 1495], ['e12', 1490], ['e15', 1495], ['e02', 1500], ['e25', 1495],\n     ['e18', 1445]],\n    [1000, 501, 199, 199, 1]],\n   {'e02': 1000, 'e10': 225, 'e13': 225, 'e15': 225, 'e25': 225}),\n  ('normal control 4', [[['e01', 1415], ['e21', 1415], ['e15', 1365], ['e08', 1365]], [250, 2]],\n   {'e01': 126, 'e21': 126})]]\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":"2fbb1e432c4fa00f928b218bde85fd3b5c9f104f30d58e5c8d00b9f5ae2550cc","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(entries, payouts):\n    ordered = sorted(entries, key=lambda e: (-e[1], e[0]))\n    out = {}\n    i = 0\n    while i < len(ordered):\n        j = i\n        while j < len(ordered) and ordered[j][1] == ordered[i][1]:\n            j += 1\n        pool = sum(payouts[i:j])\n        group = sorted(e[0] for e in ordered[i:j])\n        share, extra = pool // len(group), 0\n        for k, eid in enumerate(group):\n            amt = share + (1 if k < extra else 0)\n            if amt > 0:\n                out[eid] = amt\n        i = j\n    return out\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: remainder cents',\n   [[['e19', 1333], ['e05', 1333], ['e18', 1333], ['e01', 1333]], [500, 100, 2]],\n   {'e01': 151, 'e05': 151, 'e18': 150, 'e19': 150}),\n  ('partial repair probe: remainder cents',\n   [[['e25', 1333], ['e16', 1326], ['e05', 1333], ['e24', 1330], ['e29', 1278], ['e06', 1333], ['e03', 1328],\n     ['e12', 1328]],\n    [301, 199]],\n   {'e05': 167, 'e06': 167, 'e25': 166}),\n  ('second regression',\n   [[['e15', 1420], ['e02', 1365], ['e17', 1410], ['e18', 1417], ['e14', 1365], ['e12', 1410], ['e03', 1415],\n     ['e27', 1420]],\n    [1000, 77, 77, 2]],\n   {'e03': 2, 'e15': 539, 'e18': 77, 'e27': 538}),\n  ('normal control 1',\n   [[['e11', 1333], ['e26', 1333], ['e14', 1333], ['e03', 1330], ['e09', 1326], ['e23', 1330], ['e06', 1328],\n     ['e02', 1330]],\n    [301, 100, 1]],\n   {'e11': 134, 'e14': 134, 'e26': 134}),\n  ('normal control 2', [[['e18', 1410], ['e13', 1415], ['e14', 1415], ['e05', 1415]], [501, 500, 301]],\n   {'e05': 434, 'e13': 434, 'e14': 434}),\n  ('normal control 3',\n   [[['e05', 1323], ['e17', 1328], ['e09', 1330], ['e13', 1328], ['e02', 1333], ['e26', 1333], ['e01', 1278],\n     ['e12', 1330]],\n    [1000, 500]],\n   {'e02': 750, 'e26': 750}),\n  ('normal control 4', [[['e03', 1500], ['e24', 1500], ['e25', 1497]], [199, 199, 77, 77, 1]],\n   {'e03': 199, 'e24': 199, 'e25': 77})],\n [('regression: remainder cents',\n   [[['e04', 1410], ['e16', 1420], ['e14', 1415], ['e11', 1420], ['e20', 1410]], [500, 199, 77, 1, 1]],\n   {'e04': 1, 'e11': 350, 'e14': 77, 'e16': 349, 'e20': 1}),\n  ('partial repair probe: remainder cents',\n   [[['e11', 1490], ['e07', 1490], ['e04', 1500], ['e26', 1500], ['e14', 1500], ['e22', 1495], ['e25', 1500],\n     ['e20', 1500]],\n    [301, 301]],\n   {'e04': 121, 'e14': 121, 'e20': 120, 'e25': 120, 'e26': 120}),\n  ('second regression',\n   [[['e02', 1445], ['e13', 1495], ['e24', 1493], ['e21', 1495], ['e11', 1495], ['e07', 1500], ['e09', 1495],\n     ['e29', 1500]],\n    [500, 100, 1]],\n   {'e07': 300, 'e09': 1, 'e29': 300}),\n  ('normal control 1',\n   [[['e26', 1326], ['e23', 1333], ['e08', 1323], ['e20', 1333], ['e29', 1278], ['e13', 1326]],\n    [501, 301, 250, 100]],\n   {'e13': 175, 'e20': 401, 'e23': 401, 'e26': 175}),\n  ('normal control 2', [[['e22', 1278], ['e12', 1278], ['e24', 1328], ['e16', 1333]], [77, 77]],\n   {'e16': 77, 'e24': 77}),\n  ('normal control 3',\n   [[['e16', 1365], ['e12', 1415], ['e14', 1365], ['e18', 1420], ['e13', 1420], ['e26', 1417], ['e22', 1410],\n     ['e20', 1420], ['e10', 1365]],\n    [501, 500, 199, 77, 2]],\n   {'e12': 2, 'e13': 400, 'e18': 400, 'e20': 400, 'e26': 77}),\n  ('normal control 4',\n   [[['e02', 1490], ['e22', 1445], ['e25', 1490], ['e17', 1500], ['e26', 1493], ['e23', 1445]], [1000, 1]],\n   {'e17': 1000, 'e26': 1})],\n [('regression: remainder cents', [[['e19', 1417], ['e17', 1417], ['e18', 1420], ['e29', 1365]], [1000, 199]],\n   {'e17': 100, 'e18': 1000, 'e19': 99}),\n  ('partial repair probe: remainder cents',\n   [[['e15', 1330], ['e17', 1326], ['e09', 1278], ['e22', 1333], ['e26', 1333], ['e07', 1333], ['e08', 1333],\n     ['e25', 1333], ['e24', 1330]],\n    [501, 500, 301, 250, 77]],\n   {'e07': 326, 'e08': 326, 'e22': 326, 'e25': 326, 'e26': 325}),\n  ('second regression',\n   [[['e02', 1445], ['e28', 1493], ['e19', 1493], ['e15', 1495], ['e11', 1445], ['e29', 1500], ['e03', 1500],\n     ['e26', 1500], ['e18', 1493]],\n    [100, 100, 77, 2]],\n   {'e03': 93, 'e15': 2, 'e26': 92, 'e29': 92}),\n  ('normal control 1',\n   [[['e02', 1493], ['e23', 1497], ['e05', 1490], ['e19', 1445], ['e06', 1493], ['e09', 1493]], [250, 2, 1]],\n   {'e02': 1, 'e06': 1, 'e09': 1, 'e23': 250}),\n  ('normal control 2',\n   [[['e28', 1493], ['e05', 1500], ['e20', 1500], ['e16', 1493], ['e01', 1445], ['e07', 1500], ['e26', 1445],\n     ['e21', 1495]],\n    [1000, 301, 100, 1]],\n   {'e05': 467, 'e07': 467, 'e20': 467, 'e21': 1}),\n  ('normal control 3',\n   [[['e14', 1328], ['e03', 1278], ['e10', 1328], ['e21', 1333], ['e22', 1323]], [1000, 500, 100, 100, 77]],\n   {'e03': 77, 'e10': 300, 'e14': 300, 'e21': 1000, 'e22': 100}),\n  ('normal control 4', [[['e01', 1333], ['e22', 1328], ['e15', 1333], ['e02', 1326]], [1000, 500, 2, 1]],\n   {'e01': 750, 'e02': 1, 'e15': 750, 'e22': 2})],\n [('regression: remainder cents',\n   [[['e08', 1323], ['e27', 1333], ['e20', 1330], ['e26', 1330], ['e14', 1333], ['e09', 1328], ['e19', 1333],\n     ['e25', 1323], ['e28', 1333]],\n    [1000, 250, 199, 199, 77]],\n   {'e14': 412, 'e19': 412, 'e20': 39, 'e26': 38, 'e27': 412, 'e28': 412}),\n  ('partial repair probe: remainder cents',\n   [[['e09', 1278], ['e02', 1328], ['e21', 1333], ['e06', 1328], ['e11', 1328]], [1000, 500, 500, 100]],\n   {'e02': 367, 'e06': 367, 'e11': 366, 'e21': 1000}),\n  ('second regression',\n   [[['e29', 1500], ['e22', 1493], ['e01', 1500], ['e10', 1493], ['e21', 1445], ['e24', 1490], ['e27', 1500],\n     ['e09', 1495], ['e08', 1497]],\n    [501, 500, 77, 1]],\n   {'e01': 360, 'e08': 1, 'e27': 359, 'e29': 359}),\n  ('normal control 1', [[['e22', 1410], ['e08', 1413], ['e10', 1365], ['e07', 1415]], [2, 1, 1]],\n   {'e07': 2, 'e08': 1, 'e22': 1}),\n  ('normal control 2',\n   [[['e23', 1420], ['e02', 1413], ['e14', 1415], ['e15', 1415]], [1000, 1000, 1000, 199, 2]],\n   {'e02': 199, 'e14': 1000, 'e15': 1000, 'e23': 1000}),\n  ('normal control 3', [[['e17', 1328], ['e22', 1326], ['e08', 1330]], [500, 250, 199, 100, 77]],\n   {'e08': 500, 'e17': 250, 'e22': 199}),\n  ('normal control 4',\n   [[['e12', 1490], ['e17', 1500], ['e07', 1493], ['e05', 1500], ['e18', 1500], ['e11', 1495], ['e06', 1500],\n     ['e24', 1495], ['e28', 1500]],\n    [501, 199, 100, 100]],\n   {'e05': 180, 'e06': 180, 'e17': 180, 'e18': 180, 'e28': 180})],\n [('regression: remainder cents',\n   [[['e13', 1410], ['e25', 1413], ['e09', 1413], ['e16', 1415], ['e24', 1410], ['e08', 1420], ['e27', 1410],\n     ['e01', 1410]],\n    [250, 199, 77, 77, 2]],\n   {'e01': 1, 'e08': 250, 'e09': 77, 'e13': 1, 'e16': 199, 'e25': 77}),\n  ('partial repair probe: remainder cents',\n   [[['e12', 1413], ['e23', 1410], ['e25', 1410], ['e24', 1417], ['e02', 1365], ['e06', 1415], ['e11', 1410]],\n    [1000, 250, 199, 77]],\n   {'e06': 250, 'e11': 26, 'e12': 199, 'e23': 26, 'e24': 1000, 'e25': 25}),\n  ('second regression',\n   [[['e06', 1328], ['e12', 1328], ['e09', 1333], ['e18', 1328]], [250, 250, 100, 77, 2]],\n   {'e06': 143, 'e09': 250, 'e12': 142, 'e18': 142}),\n  ('normal control 1', [[['e01', 1278], ['e25', 1326], ['e23', 1328]], [199, 77]], {'e23': 199, 'e25': 77}),\n  ('normal control 2', [[['e23', 1417], ['e19', 1413], ['e08', 1420]], [1000, 501, 501, 199]],\n   {'e08': 1000, 'e19': 501, 'e23': 501}),\n  ('normal control 3',\n   [[['e23', 1493], ['e10', 1495], ['e13', 1495], ['e12', 1490], ['e15', 1495], ['e02', 1500], ['e25', 1495],\n     ['e18', 1445]],\n    [1000, 501, 199, 199, 1]],\n   {'e02': 1000, 'e10': 225, 'e13': 225, 'e15': 225, 'e25': 225}),\n  ('normal control 4', [[['e01', 1415], ['e21', 1415], ['e15', 1365], ['e08', 1365]], [250, 2]],\n   {'e01': 126, 'e21': 126})]]\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":"dce42cd2c92a59a146f574fd91eca3cc2eddb57f9a79ebb89ef0ced6babd1c85","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(entries, payouts):\n    ordered = sorted(entries, key=lambda e: (-e[1], e[0]))\n    out = {}\n    i = 0\n    while i < len(ordered):\n        j = i\n        while j < len(ordered) and ordered[j][1] == ordered[i][1]:\n            j += 1\n        pool = sum(payouts[i:j])\n        group = sorted(e[0] for e in ordered[i:j])\n        share, extra = divmod(pool, len(group))\n        for k, eid in enumerate(group):\n            amt = share + (1 if k < extra else 0)\n            if amt > 0:\n                out[eid] = amt\n        i = j\n    return out\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: remainder cents',\n   [[['e19', 1333], ['e05', 1333], ['e18', 1333], ['e01', 1333]], [500, 100, 2]],\n   {'e01': 151, 'e05': 151, 'e18': 150, 'e19': 150}),\n  ('partial repair probe: remainder cents',\n   [[['e25', 1333], ['e16', 1326], ['e05', 1333], ['e24', 1330], ['e29', 1278], ['e06', 1333], ['e03', 1328],\n     ['e12', 1328]],\n    [301, 199]],\n   {'e05': 167, 'e06': 167, 'e25': 166}),\n  ('second regression',\n   [[['e15', 1420], ['e02', 1365], ['e17', 1410], ['e18', 1417], ['e14', 1365], ['e12', 1410], ['e03', 1415],\n     ['e27', 1420]],\n    [1000, 77, 77, 2]],\n   {'e03': 2, 'e15': 539, 'e18': 77, 'e27': 538}),\n  ('normal control 1',\n   [[['e11', 1333], ['e26', 1333], ['e14', 1333], ['e03', 1330], ['e09', 1326], ['e23', 1330], ['e06', 1328],\n     ['e02', 1330]],\n    [301, 100, 1]],\n   {'e11': 134, 'e14': 134, 'e26': 134}),\n  ('normal control 2', [[['e18', 1410], ['e13', 1415], ['e14', 1415], ['e05', 1415]], [501, 500, 301]],\n   {'e05': 434, 'e13': 434, 'e14': 434}),\n  ('normal control 3',\n   [[['e05', 1323], ['e17', 1328], ['e09', 1330], ['e13', 1328], ['e02', 1333], ['e26', 1333], ['e01', 1278],\n     ['e12', 1330]],\n    [1000, 500]],\n   {'e02': 750, 'e26': 750}),\n  ('normal control 4', [[['e03', 1500], ['e24', 1500], ['e25', 1497]], [199, 199, 77, 77, 1]],\n   {'e03': 199, 'e24': 199, 'e25': 77})],\n [('regression: remainder cents',\n   [[['e04', 1410], ['e16', 1420], ['e14', 1415], ['e11', 1420], ['e20', 1410]], [500, 199, 77, 1, 1]],\n   {'e04': 1, 'e11': 350, 'e14': 77, 'e16': 349, 'e20': 1}),\n  ('partial repair probe: remainder cents',\n   [[['e11', 1490], ['e07', 1490], ['e04', 1500], ['e26', 1500], ['e14', 1500], ['e22', 1495], ['e25', 1500],\n     ['e20', 1500]],\n    [301, 301]],\n   {'e04': 121, 'e14': 121, 'e20': 120, 'e25': 120, 'e26': 120}),\n  ('second regression',\n   [[['e02', 1445], ['e13', 1495], ['e24', 1493], ['e21', 1495], ['e11', 1495], ['e07', 1500], ['e09', 1495],\n     ['e29', 1500]],\n    [500, 100, 1]],\n   {'e07': 300, 'e09': 1, 'e29': 300}),\n  ('normal control 1',\n   [[['e26', 1326], ['e23', 1333], ['e08', 1323], ['e20', 1333], ['e29', 1278], ['e13', 1326]],\n    [501, 301, 250, 100]],\n   {'e13': 175, 'e20': 401, 'e23': 401, 'e26': 175}),\n  ('normal control 2', [[['e22', 1278], ['e12', 1278], ['e24', 1328], ['e16', 1333]], [77, 77]],\n   {'e16': 77, 'e24': 77}),\n  ('normal control 3',\n   [[['e16', 1365], ['e12', 1415], ['e14', 1365], ['e18', 1420], ['e13', 1420], ['e26', 1417], ['e22', 1410],\n     ['e20', 1420], ['e10', 1365]],\n    [501, 500, 199, 77, 2]],\n   {'e12': 2, 'e13': 400, 'e18': 400, 'e20': 400, 'e26': 77}),\n  ('normal control 4',\n   [[['e02', 1490], ['e22', 1445], ['e25', 1490], ['e17', 1500], ['e26', 1493], ['e23', 1445]], [1000, 1]],\n   {'e17': 1000, 'e26': 1})],\n [('regression: remainder cents', [[['e19', 1417], ['e17', 1417], ['e18', 1420], ['e29', 1365]], [1000, 199]],\n   {'e17': 100, 'e18': 1000, 'e19': 99}),\n  ('partial repair probe: remainder cents',\n   [[['e15', 1330], ['e17', 1326], ['e09', 1278], ['e22', 1333], ['e26', 1333], ['e07', 1333], ['e08', 1333],\n     ['e25', 1333], ['e24', 1330]],\n    [501, 500, 301, 250, 77]],\n   {'e07': 326, 'e08': 326, 'e22': 326, 'e25': 326, 'e26': 325}),\n  ('second regression',\n   [[['e02', 1445], ['e28', 1493], ['e19', 1493], ['e15', 1495], ['e11', 1445], ['e29', 1500], ['e03', 1500],\n     ['e26', 1500], ['e18', 1493]],\n    [100, 100, 77, 2]],\n   {'e03': 93, 'e15': 2, 'e26': 92, 'e29': 92}),\n  ('normal control 1',\n   [[['e02', 1493], ['e23', 1497], ['e05', 1490], ['e19', 1445], ['e06', 1493], ['e09', 1493]], [250, 2, 1]],\n   {'e02': 1, 'e06': 1, 'e09': 1, 'e23': 250}),\n  ('normal control 2',\n   [[['e28', 1493], ['e05', 1500], ['e20', 1500], ['e16', 1493], ['e01', 1445], ['e07', 1500], ['e26', 1445],\n     ['e21', 1495]],\n    [1000, 301, 100, 1]],\n   {'e05': 467, 'e07': 467, 'e20': 467, 'e21': 1}),\n  ('normal control 3',\n   [[['e14', 1328], ['e03', 1278], ['e10', 1328], ['e21', 1333], ['e22', 1323]], [1000, 500, 100, 100, 77]],\n   {'e03': 77, 'e10': 300, 'e14': 300, 'e21': 1000, 'e22': 100}),\n  ('normal control 4', [[['e01', 1333], ['e22', 1328], ['e15', 1333], ['e02', 1326]], [1000, 500, 2, 1]],\n   {'e01': 750, 'e02': 1, 'e15': 750, 'e22': 2})],\n [('regression: remainder cents',\n   [[['e08', 1323], ['e27', 1333], ['e20', 1330], ['e26', 1330], ['e14', 1333], ['e09', 1328], ['e19', 1333],\n     ['e25', 1323], ['e28', 1333]],\n    [1000, 250, 199, 199, 77]],\n   {'e14': 412, 'e19': 412, 'e20': 39, 'e26': 38, 'e27': 412, 'e28': 412}),\n  ('partial repair probe: remainder cents',\n   [[['e09', 1278], ['e02', 1328], ['e21', 1333], ['e06', 1328], ['e11', 1328]], [1000, 500, 500, 100]],\n   {'e02': 367, 'e06': 367, 'e11': 366, 'e21': 1000}),\n  ('second regression',\n   [[['e29', 1500], ['e22', 1493], ['e01', 1500], ['e10', 1493], ['e21', 1445], ['e24', 1490], ['e27', 1500],\n     ['e09', 1495], ['e08', 1497]],\n    [501, 500, 77, 1]],\n   {'e01': 360, 'e08': 1, 'e27': 359, 'e29': 359}),\n  ('normal control 1', [[['e22', 1410], ['e08', 1413], ['e10', 1365], ['e07', 1415]], [2, 1, 1]],\n   {'e07': 2, 'e08': 1, 'e22': 1}),\n  ('normal control 2',\n   [[['e23', 1420], ['e02', 1413], ['e14', 1415], ['e15', 1415]], [1000, 1000, 1000, 199, 2]],\n   {'e02': 199, 'e14': 1000, 'e15': 1000, 'e23': 1000}),\n  ('normal control 3', [[['e17', 1328], ['e22', 1326], ['e08', 1330]], [500, 250, 199, 100, 77]],\n   {'e08': 500, 'e17': 250, 'e22': 199}),\n  ('normal control 4',\n   [[['e12', 1490], ['e17', 1500], ['e07', 1493], ['e05', 1500], ['e18', 1500], ['e11', 1495], ['e06', 1500],\n     ['e24', 1495], ['e28', 1500]],\n    [501, 199, 100, 100]],\n   {'e05': 180, 'e06': 180, 'e17': 180, 'e18': 180, 'e28': 180})],\n [('regression: remainder cents',\n   [[['e13', 1410], ['e25', 1413], ['e09', 1413], ['e16', 1415], ['e24', 1410], ['e08', 1420], ['e27', 1410],\n     ['e01', 1410]],\n    [250, 199, 77, 77, 2]],\n   {'e01': 1, 'e08': 250, 'e09': 77, 'e13': 1, 'e16': 199, 'e25': 77}),\n  ('partial repair probe: remainder cents',\n   [[['e12', 1413], ['e23', 1410], ['e25', 1410], ['e24', 1417], ['e02', 1365], ['e06', 1415], ['e11', 1410]],\n    [1000, 250, 199, 77]],\n   {'e06': 250, 'e11': 26, 'e12': 199, 'e23': 26, 'e24': 1000, 'e25': 25}),\n  ('second regression',\n   [[['e06', 1328], ['e12', 1328], ['e09', 1333], ['e18', 1328]], [250, 250, 100, 77, 2]],\n   {'e06': 143, 'e09': 250, 'e12': 142, 'e18': 142}),\n  ('normal control 1', [[['e01', 1278], ['e25', 1326], ['e23', 1328]], [199, 77]], {'e23': 199, 'e25': 77}),\n  ('normal control 2', [[['e23', 1417], ['e19', 1413], ['e08', 1420]], [1000, 501, 501, 199]],\n   {'e08': 1000, 'e19': 501, 'e23': 501}),\n  ('normal control 3',\n   [[['e23', 1493], ['e10', 1495], ['e13', 1495], ['e12', 1490], ['e15', 1495], ['e02', 1500], ['e25', 1495],\n     ['e18', 1445]],\n    [1000, 501, 199, 199, 1]],\n   {'e02': 1000, 'e10': 225, 'e13': 225, 'e15': 225, 'e25': 225}),\n  ('normal control 4', [[['e01', 1415], ['e21', 1415], ['e15', 1365], ['e08', 1365]], [250, 2]],\n   {'e01': 126, 'e21': 126})]]\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-contest-payout-ties-remainder-cents","generated_at":"2026-09-29T14:50:36.657413+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Tie splitting in paid contests moves real money; cent remainders and the pooled positions must be exact.","repair":"Distribute the remainder one cent each to tied entries in id order.","root_cause":"The split floors the share and drops the remainder.","sha256":"7790912c9340370bb3945a717d0e6d4ca184f34bed7d84e7cce4ff7366d5fd13","title":"Leftover cents from a tie split disappear · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":43.374,"exit_code":1,"observations":[{"actual":{"e01":152,"e05":150,"e18":150,"e19":150},"check":"regression: remainder cents","expected":{"e01":151,"e05":151,"e18":150,"e19":150},"passed":false},{"actual":{"e05":168,"e06":166,"e25":166},"check":"partial repair probe: remainder cents","expected":{"e05":167,"e06":167,"e25":166},"passed":false},{"actual":{"e03":2,"e15":539,"e18":77,"e27":538},"check":"second regression","expected":{"e03":2,"e15":539,"e18":77,"e27":538},"passed":true},{"actual":{"e11":134,"e14":134,"e26":134},"check":"normal control 1","expected":{"e11":134,"e14":134,"e26":134},"passed":true},{"actual":{"e05":434,"e13":434,"e14":434},"check":"normal control 2","expected":{"e05":434,"e13":434,"e14":434},"passed":true},{"actual":{"e02":750,"e26":750},"check":"normal control 3","expected":{"e02":750,"e26":750},"passed":true},{"actual":{"e03":199,"e24":199,"e25":77},"check":"normal control 4","expected":{"e03":199,"e24":199,"e25":77},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: remainder cents\", \"actual\": {\"e01\": 152, \"e05\": 150, \"e18\": 150, \"e19\": 150}, \"expected\": {\"e01\": 151, \"e05\": 151, \"e18\": 150, \"e19\": 150}, \"passed\": false}, {\"check\": \"partial repair probe: remainder cents\", \"actual\": {\"e05\": 168, \"e06\": 166, \"e25\": 166}, \"expected\": {\"e05\": 167, \"e06\": 167, \"e25\": 166}, \"passed\": false}, {\"check\": \"second regression\", \"actual\": {\"e15\": 539, \"e27\": 538, \"e18\": 77, \"e03\": 2}, \"expected\": {\"e03\": 2, \"e15\": 539, \"e18\": 77, \"e27\": 538}, \"passed\": true}, {\"check\": \"normal control 1\", \"actual\": {\"e11\": 134, \"e14\": 134, \"e26\": 134}, \"expected\": {\"e11\": 134, \"e14\": 134, \"e26\": 134}, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": {\"e05\": 434, \"e13\": 434, \"e14\": 434}, \"expected\": {\"e05\": 434, \"e13\": 434, \"e14\": 434}, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": {\"e02\": 750, \"e26\": 750}, \"expected\": {\"e02\": 750, \"e26\": 750}, \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": {\"e03\": 199, \"e24\": 199, \"e25\": 77}, \"expected\": {\"e03\": 199, \"e24\": 199, \"e25\": 77}, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.006,"exit_code":1,"observations":[{"actual":{"e01":150,"e05":150,"e18":150,"e19":150},"check":"regression: remainder cents","expected":{"e01":151,"e05":151,"e18":150,"e19":150},"passed":false},{"actual":{"e05":166,"e06":166,"e25":166},"check":"partial repair probe: remainder cents","expected":{"e05":167,"e06":167,"e25":166},"passed":false},{"actual":{"e03":2,"e15":538,"e18":77,"e27":538},"check":"second regression","expected":{"e03":2,"e15":539,"e18":77,"e27":538},"passed":false},{"actual":{"e11":134,"e14":134,"e26":134},"check":"normal control 1","expected":{"e11":134,"e14":134,"e26":134},"passed":true},{"actual":{"e05":434,"e13":434,"e14":434},"check":"normal control 2","expected":{"e05":434,"e13":434,"e14":434},"passed":true},{"actual":{"e02":750,"e26":750},"check":"normal control 3","expected":{"e02":750,"e26":750},"passed":true},{"actual":{"e03":199,"e24":199,"e25":77},"check":"normal control 4","expected":{"e03":199,"e24":199,"e25":77},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: remainder cents\", \"actual\": {\"e01\": 150, \"e05\": 150, \"e18\": 150, \"e19\": 150}, \"expected\": {\"e01\": 151, \"e05\": 151, \"e18\": 150, \"e19\": 150}, \"passed\": false}, {\"check\": \"partial repair probe: remainder cents\", \"actual\": {\"e05\": 166, \"e06\": 166, \"e25\": 166}, \"expected\": {\"e05\": 167, \"e06\": 167, \"e25\": 166}, \"passed\": false}, {\"check\": \"second regression\", \"actual\": {\"e15\": 538, \"e27\": 538, \"e18\": 77, \"e03\": 2}, \"expected\": {\"e03\": 2, \"e15\": 539, \"e18\": 77, \"e27\": 538}, \"passed\": false}, {\"check\": \"normal control 1\", \"actual\": {\"e11\": 134, \"e14\": 134, \"e26\": 134}, \"expected\": {\"e11\": 134, \"e14\": 134, \"e26\": 134}, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": {\"e05\": 434, \"e13\": 434, \"e14\": 434}, \"expected\": {\"e05\": 434, \"e13\": 434, \"e14\": 434}, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": {\"e02\": 750, \"e26\": 750}, \"expected\": {\"e02\": 750, \"e26\": 750}, \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": {\"e03\": 199, \"e24\": 199, \"e25\": 77}, \"expected\": {\"e03\": 199, \"e24\": 199, \"e25\": 77}, \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":42.297,"exit_code":0,"observations":[{"actual":{"e01":151,"e05":151,"e18":150,"e19":150},"check":"regression: remainder cents","expected":{"e01":151,"e05":151,"e18":150,"e19":150},"passed":true},{"actual":{"e05":167,"e06":167,"e25":166},"check":"partial repair probe: remainder cents","expected":{"e05":167,"e06":167,"e25":166},"passed":true},{"actual":{"e03":2,"e15":539,"e18":77,"e27":538},"check":"second regression","expected":{"e03":2,"e15":539,"e18":77,"e27":538},"passed":true},{"actual":{"e11":134,"e14":134,"e26":134},"check":"normal control 1","expected":{"e11":134,"e14":134,"e26":134},"passed":true},{"actual":{"e05":434,"e13":434,"e14":434},"check":"normal control 2","expected":{"e05":434,"e13":434,"e14":434},"passed":true},{"actual":{"e02":750,"e26":750},"check":"normal control 3","expected":{"e02":750,"e26":750},"passed":true},{"actual":{"e03":199,"e24":199,"e25":77},"check":"normal control 4","expected":{"e03":199,"e24":199,"e25":77},"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: remainder cents\", \"actual\": {\"e01\": 151, \"e05\": 151, \"e18\": 150, \"e19\": 150}, \"expected\": {\"e01\": 151, \"e05\": 151, \"e18\": 150, \"e19\": 150}, \"passed\": true}, {\"check\": \"partial repair probe: remainder cents\", \"actual\": {\"e05\": 167, \"e06\": 167, \"e25\": 166}, \"expected\": {\"e05\": 167, \"e06\": 167, \"e25\": 166}, \"passed\": true}, {\"check\": \"second regression\", \"actual\": {\"e15\": 539, \"e27\": 538, \"e18\": 77, \"e03\": 2}, \"expected\": {\"e03\": 2, \"e15\": 539, \"e18\": 77, \"e27\": 538}, \"passed\": true}, {\"check\": \"normal control 1\", \"actual\": {\"e11\": 134, \"e14\": 134, \"e26\": 134}, \"expected\": {\"e11\": 134, \"e14\": 134, \"e26\": 134}, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": {\"e05\": 434, \"e13\": 434, \"e14\": 434}, \"expected\": {\"e05\": 434, \"e13\": 434, \"e14\": 434}, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": {\"e02\": 750, \"e26\": 750}, \"expected\": {\"e02\": 750, \"e26\": 750}, \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": {\"e03\": 199, \"e24\": 199, \"e25\": 77}, \"expected\": {\"e03\": 199, \"e24\": 199, \"e25\": 77}, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}