{"abstract":"Employees turning 50 this year are blocked from catch-up contributions.","category":"Payroll withholding rules","checks":8,"contract":"Input {gross, pct, ytd, birth_year, year, net_available}. Requested deferral = gross*pct/100 half-up. Annual cap 23,000.00 plus 7,500.00 catch-up when the employee turns 50 or older during the year. Deferral = min(request, max(0, cap - ytd), net_available). Return [deferral, remaining room after it].","evaluation_group":"w2-payroll-withholding-elective-deferral-limit","failed_approach":"The attempt fixes the age but only grants catch-up once the base limit was already reached before this paycheck.","family":"w2-payroll-withholding-elective-deferral-limit-catch-up-age-test","id":"FA-59036","implementations":{"attempt":{"sha256":"8052ec8bb7a664daf2c2af684ded9c0106fc4790ece746cb09d93897b8a3644b","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    want = (x['gross'] * x['pct'] + 50) // 100\n    age = x['year'] - x['birth_year']\n    cap = 2300000 + (750000 if age >= 50 and x['ytd'] >= 2300000 else 0)\n    room = max(0, cap - x['ytd'])\n    d = min(want, room)\n    d = min(d, x['net_available'])\n    return [d, room - d]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression', {'gross': 1413796, 'pct': 0, 'ytd': 2267407, 'birth_year': 1974, 'year': 2024, 'net_available': 1155850}, [0, 782593]), ('regression', {'gross': 1874539, 'pct': 3, 'ytd': 2067967, 'birth_year': 1975, 'year': 2025, 'net_available': 843855}, [56236, 925797]), ('partial-repair probe', {'gross': 1618397, 'pct': 3, 'ytd': 2121789, 'birth_year': 1961, 'year': 2025, 'net_available': 1350724}, [48552, 879659]), ('partial-repair probe', {'gross': 1338450, 'pct': 0, 'ytd': 895056, 'birth_year': 1965, 'year': 2025, 'net_available': 341182}, [0, 2154944]), ('normal control', {'gross': 1457089, 'pct': 0, 'ytd': 2996561, 'birth_year': 1976, 'year': 2025, 'net_available': 161315}, [0, 0]), ('normal control', {'gross': 742708, 'pct': 50, 'ytd': 2300000, 'birth_year': 1987, 'year': 2025, 'net_available': 358846}, [0, 0]), ('normal control', {'gross': 243481, 'pct': 10, 'ytd': 2857536, 'birth_year': 1999, 'year': 2024, 'net_available': 109046}, [0, 0]), ('normal control', {'gross': 1755234, 'pct': 75, 'ytd': 2857725, 'birth_year': 1965, 'year': 2025, 'net_available': 1444455}, [192275, 0])], [('regression', {'gross': 1874539, 'pct': 3, 'ytd': 2067967, 'birth_year': 1975, 'year': 2025, 'net_available': 843855}, [56236, 925797]), ('regression', {'gross': 1731857, 'pct': 75, 'ytd': 2300000, 'birth_year': 1975, 'year': 2025, 'net_available': 1370216}, [750000, 0]), ('partial-repair probe', {'gross': 1413796, 'pct': 0, 'ytd': 2267407, 'birth_year': 1974, 'year': 2024, 'net_available': 1155850}, [0, 782593]), ('partial-repair probe', {'gross': 1255430, 'pct': 0, 'ytd': 322436, 'birth_year': 1964, 'year': 2024, 'net_available': 213657}, [0, 2727564]), ('normal control', {'gross': 50757, 'pct': 3, 'ytd': 2246489, 'birth_year': 2005, 'year': 2025, 'net_available': 492828}, [1523, 51988]), ('normal control', {'gross': 466414, 'pct': 33, 'ytd': 2300000, 'birth_year': 1994, 'year': 2025, 'net_available': 1301026}, [0, 0]), ('normal control', {'gross': 153394, 'pct': 50, 'ytd': 2232880, 'birth_year': 1994, 'year': 2024, 'net_available': 220513}, [67120, 0]), ('normal control', {'gross': 1415766, 'pct': 0, 'ytd': 2300000, 'birth_year': 1973, 'year': 2024, 'net_available': 1433510}, [0, 750000])], [('regression', {'gross': 1552698, 'pct': 3, 'ytd': 926873, 'birth_year': 1974, 'year': 2024, 'net_available': 1490831}, [46581, 2076546]), ('regression', {'gross': 1731857, 'pct': 75, 'ytd': 2300000, 'birth_year': 1975, 'year': 2025, 'net_available': 1370216}, [750000, 0]), ('partial-repair probe', {'gross': 195058, 'pct': 3, 'ytd': 2297594, 'birth_year': 1965, 'year': 2025, 'net_available': 1227790}, [5852, 746554]), ('partial-repair probe', {'gross': 320598, 'pct': 3, 'ytd': 257717, 'birth_year': 1973, 'year': 2024, 'net_available': 164909}, [9618, 2782665]), ('normal control', {'gross': 1325390, 'pct': 15, 'ytd': 3004038, 'birth_year': 1973, 'year': 2024, 'net_available': 1230228}, [45962, 0]), ('normal control', {'gross': 1693660, 'pct': 15, 'ytd': 2977024, 'birth_year': 1988, 'year': 2025, 'net_available': 9919}, [0, 0]), ('normal control', {'gross': 1114570, 'pct': 15, 'ytd': 2028957, 'birth_year': 1995, 'year': 2025, 'net_available': 1264377}, [167186, 103857]), ('normal control', {'gross': 721708, 'pct': 75, 'ytd': 453300, 'birth_year': 1975, 'year': 2024, 'net_available': 60633}, [60633, 1786067])], [('regression', {'gross': 834857, 'pct': 15, 'ytd': 2164693, 'birth_year': 1975, 'year': 2025, 'net_available': 979981}, [125229, 760078]), ('regression', {'gross': 1552698, 'pct': 3, 'ytd': 926873, 'birth_year': 1974, 'year': 2024, 'net_available': 1490831}, [46581, 2076546]), ('partial-repair probe', {'gross': 678474, 'pct': 15, 'ytd': 1050923, 'birth_year': 1972, 'year': 2024, 'net_available': 513971}, [101771, 1897306]), ('partial-repair probe', {'gross': 1874539, 'pct': 3, 'ytd': 2067967, 'birth_year': 1975, 'year': 2025, 'net_available': 843855}, [56236, 925797]), ('normal control', {'gross': 1791193, 'pct': 75, 'ytd': 2946558, 'birth_year': 1964, 'year': 2024, 'net_available': 587430}, [103442, 0]), ('normal control', {'gross': 1886269, 'pct': 0, 'ytd': 3022556, 'birth_year': 1974, 'year': 2025, 'net_available': 531609}, [0, 27444]), ('normal control', {'gross': 901600, 'pct': 0, 'ytd': 2179894, 'birth_year': 1975, 'year': 2024, 'net_available': 1421448}, [0, 120106]), ('normal control', {'gross': 1505848, 'pct': 6, 'ytd': 2895487, 'birth_year': 1975, 'year': 2024, 'net_available': 685023}, [0, 0])], [('regression', {'gross': 332843, 'pct': 3, 'ytd': 1235206, 'birth_year': 1974, 'year': 2024, 'net_available': 1192631}, [9985, 1804809]), ('regression', {'gross': 1366584, 'pct': 0, 'ytd': 2421747, 'birth_year': 1974, 'year': 2024, 'net_available': 331646}, [0, 628253]), ('partial-repair probe', {'gross': 298934, 'pct': 3, 'ytd': 2181183, 'birth_year': 1964, 'year': 2024, 'net_available': 1434278}, [8968, 859849]), ('partial-repair probe', {'gross': 73922, 'pct': 90, 'ytd': 2171484, 'birth_year': 1974, 'year': 2025, 'net_available': 651545}, [66530, 811986]), ('normal control', {'gross': 1771224, 'pct': 15, 'ytd': 2300000, 'birth_year': 1973, 'year': 2024, 'net_available': 756642}, [265684, 484316]), ('normal control', {'gross': 66663, 'pct': 50, 'ytd': 852939, 'birth_year': 1983, 'year': 2025, 'net_available': 643352}, [33332, 1413729]), ('normal control', {'gross': 159714, 'pct': 50, 'ytd': 2300000, 'birth_year': 1996, 'year': 2024, 'net_available': 855993}, [0, 0]), ('normal control', {'gross': 160130, 'pct': 6, 'ytd': 2300000, 'birth_year': 1974, 'year': 2025, 'net_available': 888833}, [9608, 740392])]]\nfor i, (label, args, expected) in enumerate(fixtures[N-1]):\n    check(\"%s %d\" % (label, i), 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":"b9d5696eb01b2e2d3a8fbeafb28486f31b7dce51e2cb7530d11ade27f133e606","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    want = (x['gross'] * x['pct'] + 50) // 100\n    age = x['year'] - x['birth_year']\n    cap = 2300000 + (750000 if age > 50 else 0)\n    room = max(0, cap - x['ytd'])\n    d = min(want, room)\n    d = min(d, x['net_available'])\n    return [d, room - d]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression', {'gross': 1413796, 'pct': 0, 'ytd': 2267407, 'birth_year': 1974, 'year': 2024, 'net_available': 1155850}, [0, 782593]), ('regression', {'gross': 1874539, 'pct': 3, 'ytd': 2067967, 'birth_year': 1975, 'year': 2025, 'net_available': 843855}, [56236, 925797]), ('partial-repair probe', {'gross': 1618397, 'pct': 3, 'ytd': 2121789, 'birth_year': 1961, 'year': 2025, 'net_available': 1350724}, [48552, 879659]), ('partial-repair probe', {'gross': 1338450, 'pct': 0, 'ytd': 895056, 'birth_year': 1965, 'year': 2025, 'net_available': 341182}, [0, 2154944]), ('normal control', {'gross': 1457089, 'pct': 0, 'ytd': 2996561, 'birth_year': 1976, 'year': 2025, 'net_available': 161315}, [0, 0]), ('normal control', {'gross': 742708, 'pct': 50, 'ytd': 2300000, 'birth_year': 1987, 'year': 2025, 'net_available': 358846}, [0, 0]), ('normal control', {'gross': 243481, 'pct': 10, 'ytd': 2857536, 'birth_year': 1999, 'year': 2024, 'net_available': 109046}, [0, 0]), ('normal control', {'gross': 1755234, 'pct': 75, 'ytd': 2857725, 'birth_year': 1965, 'year': 2025, 'net_available': 1444455}, [192275, 0])], [('regression', {'gross': 1874539, 'pct': 3, 'ytd': 2067967, 'birth_year': 1975, 'year': 2025, 'net_available': 843855}, [56236, 925797]), ('regression', {'gross': 1731857, 'pct': 75, 'ytd': 2300000, 'birth_year': 1975, 'year': 2025, 'net_available': 1370216}, [750000, 0]), ('partial-repair probe', {'gross': 1413796, 'pct': 0, 'ytd': 2267407, 'birth_year': 1974, 'year': 2024, 'net_available': 1155850}, [0, 782593]), ('partial-repair probe', {'gross': 1255430, 'pct': 0, 'ytd': 322436, 'birth_year': 1964, 'year': 2024, 'net_available': 213657}, [0, 2727564]), ('normal control', {'gross': 50757, 'pct': 3, 'ytd': 2246489, 'birth_year': 2005, 'year': 2025, 'net_available': 492828}, [1523, 51988]), ('normal control', {'gross': 466414, 'pct': 33, 'ytd': 2300000, 'birth_year': 1994, 'year': 2025, 'net_available': 1301026}, [0, 0]), ('normal control', {'gross': 153394, 'pct': 50, 'ytd': 2232880, 'birth_year': 1994, 'year': 2024, 'net_available': 220513}, [67120, 0]), ('normal control', {'gross': 1415766, 'pct': 0, 'ytd': 2300000, 'birth_year': 1973, 'year': 2024, 'net_available': 1433510}, [0, 750000])], [('regression', {'gross': 1552698, 'pct': 3, 'ytd': 926873, 'birth_year': 1974, 'year': 2024, 'net_available': 1490831}, [46581, 2076546]), ('regression', {'gross': 1731857, 'pct': 75, 'ytd': 2300000, 'birth_year': 1975, 'year': 2025, 'net_available': 1370216}, [750000, 0]), ('partial-repair probe', {'gross': 195058, 'pct': 3, 'ytd': 2297594, 'birth_year': 1965, 'year': 2025, 'net_available': 1227790}, [5852, 746554]), ('partial-repair probe', {'gross': 320598, 'pct': 3, 'ytd': 257717, 'birth_year': 1973, 'year': 2024, 'net_available': 164909}, [9618, 2782665]), ('normal control', {'gross': 1325390, 'pct': 15, 'ytd': 3004038, 'birth_year': 1973, 'year': 2024, 'net_available': 1230228}, [45962, 0]), ('normal control', {'gross': 1693660, 'pct': 15, 'ytd': 2977024, 'birth_year': 1988, 'year': 2025, 'net_available': 9919}, [0, 0]), ('normal control', {'gross': 1114570, 'pct': 15, 'ytd': 2028957, 'birth_year': 1995, 'year': 2025, 'net_available': 1264377}, [167186, 103857]), ('normal control', {'gross': 721708, 'pct': 75, 'ytd': 453300, 'birth_year': 1975, 'year': 2024, 'net_available': 60633}, [60633, 1786067])], [('regression', {'gross': 834857, 'pct': 15, 'ytd': 2164693, 'birth_year': 1975, 'year': 2025, 'net_available': 979981}, [125229, 760078]), ('regression', {'gross': 1552698, 'pct': 3, 'ytd': 926873, 'birth_year': 1974, 'year': 2024, 'net_available': 1490831}, [46581, 2076546]), ('partial-repair probe', {'gross': 678474, 'pct': 15, 'ytd': 1050923, 'birth_year': 1972, 'year': 2024, 'net_available': 513971}, [101771, 1897306]), ('partial-repair probe', {'gross': 1874539, 'pct': 3, 'ytd': 2067967, 'birth_year': 1975, 'year': 2025, 'net_available': 843855}, [56236, 925797]), ('normal control', {'gross': 1791193, 'pct': 75, 'ytd': 2946558, 'birth_year': 1964, 'year': 2024, 'net_available': 587430}, [103442, 0]), ('normal control', {'gross': 1886269, 'pct': 0, 'ytd': 3022556, 'birth_year': 1974, 'year': 2025, 'net_available': 531609}, [0, 27444]), ('normal control', {'gross': 901600, 'pct': 0, 'ytd': 2179894, 'birth_year': 1975, 'year': 2024, 'net_available': 1421448}, [0, 120106]), ('normal control', {'gross': 1505848, 'pct': 6, 'ytd': 2895487, 'birth_year': 1975, 'year': 2024, 'net_available': 685023}, [0, 0])], [('regression', {'gross': 332843, 'pct': 3, 'ytd': 1235206, 'birth_year': 1974, 'year': 2024, 'net_available': 1192631}, [9985, 1804809]), ('regression', {'gross': 1366584, 'pct': 0, 'ytd': 2421747, 'birth_year': 1974, 'year': 2024, 'net_available': 331646}, [0, 628253]), ('partial-repair probe', {'gross': 298934, 'pct': 3, 'ytd': 2181183, 'birth_year': 1964, 'year': 2024, 'net_available': 1434278}, [8968, 859849]), ('partial-repair probe', {'gross': 73922, 'pct': 90, 'ytd': 2171484, 'birth_year': 1974, 'year': 2025, 'net_available': 651545}, [66530, 811986]), ('normal control', {'gross': 1771224, 'pct': 15, 'ytd': 2300000, 'birth_year': 1973, 'year': 2024, 'net_available': 756642}, [265684, 484316]), ('normal control', {'gross': 66663, 'pct': 50, 'ytd': 852939, 'birth_year': 1983, 'year': 2025, 'net_available': 643352}, [33332, 1413729]), ('normal control', {'gross': 159714, 'pct': 50, 'ytd': 2300000, 'birth_year': 1996, 'year': 2024, 'net_available': 855993}, [0, 0]), ('normal control', {'gross': 160130, 'pct': 6, 'ytd': 2300000, 'birth_year': 1974, 'year': 2025, 'net_available': 888833}, [9608, 740392])]]\nfor i, (label, args, expected) in enumerate(fixtures[N-1]):\n    check(\"%s %d\" % (label, i), 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":"e3aa92e326717d6c9b4b8286de2db316e443ce6898be5663e830780377c1ed63","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    want = (x['gross'] * x['pct'] + 50) // 100\n    age = x['year'] - x['birth_year']\n    cap = 2300000 + (750000 if age >= 50 else 0)\n    room = max(0, cap - x['ytd'])\n    d = min(want, room)\n    d = min(d, x['net_available'])\n    return [d, room - d]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression', {'gross': 1413796, 'pct': 0, 'ytd': 2267407, 'birth_year': 1974, 'year': 2024, 'net_available': 1155850}, [0, 782593]), ('regression', {'gross': 1874539, 'pct': 3, 'ytd': 2067967, 'birth_year': 1975, 'year': 2025, 'net_available': 843855}, [56236, 925797]), ('partial-repair probe', {'gross': 1618397, 'pct': 3, 'ytd': 2121789, 'birth_year': 1961, 'year': 2025, 'net_available': 1350724}, [48552, 879659]), ('partial-repair probe', {'gross': 1338450, 'pct': 0, 'ytd': 895056, 'birth_year': 1965, 'year': 2025, 'net_available': 341182}, [0, 2154944]), ('normal control', {'gross': 1457089, 'pct': 0, 'ytd': 2996561, 'birth_year': 1976, 'year': 2025, 'net_available': 161315}, [0, 0]), ('normal control', {'gross': 742708, 'pct': 50, 'ytd': 2300000, 'birth_year': 1987, 'year': 2025, 'net_available': 358846}, [0, 0]), ('normal control', {'gross': 243481, 'pct': 10, 'ytd': 2857536, 'birth_year': 1999, 'year': 2024, 'net_available': 109046}, [0, 0]), ('normal control', {'gross': 1755234, 'pct': 75, 'ytd': 2857725, 'birth_year': 1965, 'year': 2025, 'net_available': 1444455}, [192275, 0])], [('regression', {'gross': 1874539, 'pct': 3, 'ytd': 2067967, 'birth_year': 1975, 'year': 2025, 'net_available': 843855}, [56236, 925797]), ('regression', {'gross': 1731857, 'pct': 75, 'ytd': 2300000, 'birth_year': 1975, 'year': 2025, 'net_available': 1370216}, [750000, 0]), ('partial-repair probe', {'gross': 1413796, 'pct': 0, 'ytd': 2267407, 'birth_year': 1974, 'year': 2024, 'net_available': 1155850}, [0, 782593]), ('partial-repair probe', {'gross': 1255430, 'pct': 0, 'ytd': 322436, 'birth_year': 1964, 'year': 2024, 'net_available': 213657}, [0, 2727564]), ('normal control', {'gross': 50757, 'pct': 3, 'ytd': 2246489, 'birth_year': 2005, 'year': 2025, 'net_available': 492828}, [1523, 51988]), ('normal control', {'gross': 466414, 'pct': 33, 'ytd': 2300000, 'birth_year': 1994, 'year': 2025, 'net_available': 1301026}, [0, 0]), ('normal control', {'gross': 153394, 'pct': 50, 'ytd': 2232880, 'birth_year': 1994, 'year': 2024, 'net_available': 220513}, [67120, 0]), ('normal control', {'gross': 1415766, 'pct': 0, 'ytd': 2300000, 'birth_year': 1973, 'year': 2024, 'net_available': 1433510}, [0, 750000])], [('regression', {'gross': 1552698, 'pct': 3, 'ytd': 926873, 'birth_year': 1974, 'year': 2024, 'net_available': 1490831}, [46581, 2076546]), ('regression', {'gross': 1731857, 'pct': 75, 'ytd': 2300000, 'birth_year': 1975, 'year': 2025, 'net_available': 1370216}, [750000, 0]), ('partial-repair probe', {'gross': 195058, 'pct': 3, 'ytd': 2297594, 'birth_year': 1965, 'year': 2025, 'net_available': 1227790}, [5852, 746554]), ('partial-repair probe', {'gross': 320598, 'pct': 3, 'ytd': 257717, 'birth_year': 1973, 'year': 2024, 'net_available': 164909}, [9618, 2782665]), ('normal control', {'gross': 1325390, 'pct': 15, 'ytd': 3004038, 'birth_year': 1973, 'year': 2024, 'net_available': 1230228}, [45962, 0]), ('normal control', {'gross': 1693660, 'pct': 15, 'ytd': 2977024, 'birth_year': 1988, 'year': 2025, 'net_available': 9919}, [0, 0]), ('normal control', {'gross': 1114570, 'pct': 15, 'ytd': 2028957, 'birth_year': 1995, 'year': 2025, 'net_available': 1264377}, [167186, 103857]), ('normal control', {'gross': 721708, 'pct': 75, 'ytd': 453300, 'birth_year': 1975, 'year': 2024, 'net_available': 60633}, [60633, 1786067])], [('regression', {'gross': 834857, 'pct': 15, 'ytd': 2164693, 'birth_year': 1975, 'year': 2025, 'net_available': 979981}, [125229, 760078]), ('regression', {'gross': 1552698, 'pct': 3, 'ytd': 926873, 'birth_year': 1974, 'year': 2024, 'net_available': 1490831}, [46581, 2076546]), ('partial-repair probe', {'gross': 678474, 'pct': 15, 'ytd': 1050923, 'birth_year': 1972, 'year': 2024, 'net_available': 513971}, [101771, 1897306]), ('partial-repair probe', {'gross': 1874539, 'pct': 3, 'ytd': 2067967, 'birth_year': 1975, 'year': 2025, 'net_available': 843855}, [56236, 925797]), ('normal control', {'gross': 1791193, 'pct': 75, 'ytd': 2946558, 'birth_year': 1964, 'year': 2024, 'net_available': 587430}, [103442, 0]), ('normal control', {'gross': 1886269, 'pct': 0, 'ytd': 3022556, 'birth_year': 1974, 'year': 2025, 'net_available': 531609}, [0, 27444]), ('normal control', {'gross': 901600, 'pct': 0, 'ytd': 2179894, 'birth_year': 1975, 'year': 2024, 'net_available': 1421448}, [0, 120106]), ('normal control', {'gross': 1505848, 'pct': 6, 'ytd': 2895487, 'birth_year': 1975, 'year': 2024, 'net_available': 685023}, [0, 0])], [('regression', {'gross': 332843, 'pct': 3, 'ytd': 1235206, 'birth_year': 1974, 'year': 2024, 'net_available': 1192631}, [9985, 1804809]), ('regression', {'gross': 1366584, 'pct': 0, 'ytd': 2421747, 'birth_year': 1974, 'year': 2024, 'net_available': 331646}, [0, 628253]), ('partial-repair probe', {'gross': 298934, 'pct': 3, 'ytd': 2181183, 'birth_year': 1964, 'year': 2024, 'net_available': 1434278}, [8968, 859849]), ('partial-repair probe', {'gross': 73922, 'pct': 90, 'ytd': 2171484, 'birth_year': 1974, 'year': 2025, 'net_available': 651545}, [66530, 811986]), ('normal control', {'gross': 1771224, 'pct': 15, 'ytd': 2300000, 'birth_year': 1973, 'year': 2024, 'net_available': 756642}, [265684, 484316]), ('normal control', {'gross': 66663, 'pct': 50, 'ytd': 852939, 'birth_year': 1983, 'year': 2025, 'net_available': 643352}, [33332, 1413729]), ('normal control', {'gross': 159714, 'pct': 50, 'ytd': 2300000, 'birth_year': 1996, 'year': 2024, 'net_available': 855993}, [0, 0]), ('normal control', {'gross': 160130, 'pct': 6, 'ytd': 2300000, 'birth_year': 1974, 'year': 2025, 'net_available': 888833}, [9608, 740392])]]\nfor i, (label, args, expected) in enumerate(fixtures[N-1]):\n    check(\"%s %d\" % (label, i), 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 teaching model of a stipulated payroll rule with toy thresholds and rates. It makes no claim of conformance to any tax authority, statute or jurisdiction and is not payroll software. 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-payroll-withholding-elective-deferral-limit-catch-up-age-test","generated_at":"2026-09-29T14:46:32.430876+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Deferral limits apply to the calendar year of the age milestone and cannot exceed pay available after taxes.","repair":"Restore the contract rule at the catch-up age test step: use `age >= 50`.","root_cause":"Catch-up eligibility requires age above 50 instead of turning 50 during the year.","sha256":"927ad239a33f9b17c893a92c03492065ee4d3fa5329708af79496e923a44e9e4","title":"401(k) deferral limit with catch-up: catch-up age test · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":44.387,"exit_code":1,"observations":[{"actual":[0,32593],"check":"regression 0","expected":[0,782593],"passed":false},{"actual":[56236,175797],"check":"regression 1","expected":[56236,925797],"passed":false},{"actual":[48552,129659],"check":"partial-repair probe 2","expected":[48552,879659],"passed":false},{"actual":[0,1404944],"check":"partial-repair probe 3","expected":[0,2154944],"passed":false},{"actual":[0,0],"check":"normal control 4","expected":[0,0],"passed":true},{"actual":[0,0],"check":"normal control 5","expected":[0,0],"passed":true},{"actual":[0,0],"check":"normal control 6","expected":[0,0],"passed":true},{"actual":[192275,0],"check":"normal control 7","expected":[192275,0],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression 0\", \"actual\": [0, 32593], \"expected\": [0, 782593], \"passed\": false}, {\"check\": \"regression 1\", \"actual\": [56236, 175797], \"expected\": [56236, 925797], \"passed\": false}, {\"check\": \"partial-repair probe 2\", \"actual\": [48552, 129659], \"expected\": [48552, 879659], \"passed\": false}, {\"check\": \"partial-repair probe 3\", \"actual\": [0, 1404944], \"expected\": [0, 2154944], \"passed\": false}, {\"check\": \"normal control 4\", \"actual\": [0, 0], \"expected\": [0, 0], \"passed\": true}, {\"check\": \"normal control 5\", \"actual\": [0, 0], \"expected\": [0, 0], \"passed\": true}, {\"check\": \"normal control 6\", \"actual\": [0, 0], \"expected\": [0, 0], \"passed\": true}, {\"check\": \"normal control 7\", \"actual\": [192275, 0], \"expected\": [192275, 0], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":43.864,"exit_code":1,"observations":[{"actual":[0,32593],"check":"regression 0","expected":[0,782593],"passed":false},{"actual":[56236,175797],"check":"regression 1","expected":[56236,925797],"passed":false},{"actual":[48552,879659],"check":"partial-repair probe 2","expected":[48552,879659],"passed":true},{"actual":[0,2154944],"check":"partial-repair probe 3","expected":[0,2154944],"passed":true},{"actual":[0,0],"check":"normal control 4","expected":[0,0],"passed":true},{"actual":[0,0],"check":"normal control 5","expected":[0,0],"passed":true},{"actual":[0,0],"check":"normal control 6","expected":[0,0],"passed":true},{"actual":[192275,0],"check":"normal control 7","expected":[192275,0],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression 0\", \"actual\": [0, 32593], \"expected\": [0, 782593], \"passed\": false}, {\"check\": \"regression 1\", \"actual\": [56236, 175797], \"expected\": [56236, 925797], \"passed\": false}, {\"check\": \"partial-repair probe 2\", \"actual\": [48552, 879659], \"expected\": [48552, 879659], \"passed\": true}, {\"check\": \"partial-repair probe 3\", \"actual\": [0, 2154944], \"expected\": [0, 2154944], \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": [0, 0], \"expected\": [0, 0], \"passed\": true}, {\"check\": \"normal control 5\", \"actual\": [0, 0], \"expected\": [0, 0], \"passed\": true}, {\"check\": \"normal control 6\", \"actual\": [0, 0], \"expected\": [0, 0], \"passed\": true}, {\"check\": \"normal control 7\", \"actual\": [192275, 0], \"expected\": [192275, 0], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":41.709,"exit_code":0,"observations":[{"actual":[0,782593],"check":"regression 0","expected":[0,782593],"passed":true},{"actual":[56236,925797],"check":"regression 1","expected":[56236,925797],"passed":true},{"actual":[48552,879659],"check":"partial-repair probe 2","expected":[48552,879659],"passed":true},{"actual":[0,2154944],"check":"partial-repair probe 3","expected":[0,2154944],"passed":true},{"actual":[0,0],"check":"normal control 4","expected":[0,0],"passed":true},{"actual":[0,0],"check":"normal control 5","expected":[0,0],"passed":true},{"actual":[0,0],"check":"normal control 6","expected":[0,0],"passed":true},{"actual":[192275,0],"check":"normal control 7","expected":[192275,0],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression 0\", \"actual\": [0, 782593], \"expected\": [0, 782593], \"passed\": true}, {\"check\": \"regression 1\", \"actual\": [56236, 925797], \"expected\": [56236, 925797], \"passed\": true}, {\"check\": \"partial-repair probe 2\", \"actual\": [48552, 879659], \"expected\": [48552, 879659], \"passed\": true}, {\"check\": \"partial-repair probe 3\", \"actual\": [0, 2154944], \"expected\": [0, 2154944], \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": [0, 0], \"expected\": [0, 0], \"passed\": true}, {\"check\": \"normal control 5\", \"actual\": [0, 0], \"expected\": [0, 0], \"passed\": true}, {\"check\": \"normal control 6\", \"actual\": [0, 0], \"expected\": [0, 0], \"passed\": true}, {\"check\": \"normal control 7\", \"actual\": [192275, 0], \"expected\": [192275, 0], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}