FA-59106 / Payroll withholding rules / Open access
Net-pay deduction priority and arrears: arrears recording test · case 01
Fully paid deductions appear in the arrears report with zero balances.
ROOT CAUSE
Arrears are recorded when the shortfall is zero.
VERIFIED REPAIR
Restore the contract rule at the arrears recording test step: use `if due - take > 0:`.
Unsuccessful approach: The attempt compares with the current amount only, missing shortfalls on arrears and recording paid ones.
Case contract
Input {gross, taxes, deductions: [[name, amount, priority, allow_partial]], arrears: {name: cents}}. Available = max(0, gross - taxes). Deductions run by ascending priority, ties in input order. Each is due amount + prior arrears; if due fits it is taken in full, else partial deductions take what is left and all-or-nothing deductions take 0. Any unpaid due becomes new arrears (only positive entries). Return {net, taken, arrears}.
Why this case matters
When net pay cannot cover every deduction, ordering and arrears carry-forward decide who gets paid.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
avail = max(0, x['gross'] - x['taxes'])
taken = {}
arrears = {}
for name, amt, pri, partial in sorted(x['deductions'], key=lambda d: d[2]):
due = amt + x['arrears'].get(name, 0)
if due <= avail:
take = due
elif partial:
take = avail
else:
take = 0
avail -= take
taken[name] = take
if due - take >= 0:
arrears[name] = due - take
return {'net': avail, 'taken': taken, 'arrears': arrears}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression', {'gross': 49085, 'taxes': 13081, 'deductions': [['medical', 5278, 3, False], ['charity', 17544, 1, True], ['support', 5654, 1, True], ['parking', 38004, 1, False]], 'arrears': {'medical': 17073, 'charity': 11573, 'support': 3632}}, {'net': 0, 'taken': {'charity': 29117, 'support': 6887, 'parking': 0, 'medical': 0}, 'arrears': {'support': 2399, 'parking': 38004, 'medical': 22351}}), ('regression', {'gross': 134653, 'taxes': 27454, 'deductions': [['parking', 26770, 3, False], ['loan', 12315, 2, False], ['union', 3364, 1, False], ['support', 11662, 3, True]], 'arrears': {'parking': 10177, 'loan': 15972, 'support': 6216}}, {'net': 20723, 'taken': {'union': 3364, 'loan': 28287, 'parking': 36947, 'support': 17878}, 'arrears': {}}), ('partial-repair probe', {'gross': 63849, 'taxes': 6027, 'deductions': [['union', 18684, 2, True], ['charity', 28880, 1, True], ['loan', 38844, 2, True], ['support', 20513, 3, False]], 'arrears': {'union': 15372}}, {'net': 0, 'taken': {'charity': 28880, 'union': 28942, 'loan': 0, 'support': 0}, 'arrears': {'union': 5114, 'loan': 38844, 'support': 20513}}), ('partial-repair probe', {'gross': 63883, 'taxes': 16403, 'deductions': [['loan', 28842, 3, False], ['medical', 34809, 2, True]], 'arrears': {'loan': 5346, 'medical': 15166}}, {'net': 0, 'taken': {'medical': 47480, 'loan': 0}, 'arrears': {'medical': 2495, 'loan': 34188}}), ('normal control', {'gross': 6593, 'taxes': 872, 'deductions': [['parking', 5312, 3, False], ['union', 4345, 3, False], ['medical', 14587, 3, False], ['loan', 24540, 2, True], ['support', 7319, 3, True]], 'arrears': {'parking': 388, 'medical': 17218}}, {'net': 0, 'taken': {'loan': 5721, 'parking': 0, 'union': 0, 'medical': 0, 'support': 0}, 'arrears': {'loan': 18819, 'parking': 5700, 'union': 4345, 'medical': 31805, 'support': 7319}}), ('normal control', {'gross': 3515, 'taxes': 674, 'deductions': [['parking', 20962, 1, False], ['union', 18985, 3, True], ['loan', 33701, 1, True]], 'arrears': {}}, {'net': 0, 'taken': {'parking': 0, 'loan': 2841, 'union': 0}, 'arrears': {'parking': 20962, 'loan': 30860, 'union': 18985}}), ('normal control', {'gross': 33426, 'taxes': 5333, 'deductions': [['union', 35082, 2, False], ['loan', 36975, 1, True], ['support', 21693, 3, False], ['parking', 29816, 1, True]], 'arrears': {'union': 18802, 'support': 12060, 'parking': 10514}}, {'net': 0, 'taken': {'loan': 28093, 'parking': 0, 'union': 0, 'support': 0}, 'arrears': {'loan': 8882, 'parking': 40330, 'union': 53884, 'support': 33753}}), ('normal control', {'gross': 18626, 'taxes': 5266, 'deductions': [['union', 19250, 2, False], ['medical', 18064, 1, False], ['parking', 36984, 1, False], ['charity', 38440, 1, True]], 'arrears': {'medical': 7698}}, {'net': 0, 'taken': {'medical': 0, 'parking': 0, 'charity': 13360, 'union': 0}, 'arrears': {'medical': 25762, 'parking': 36984, 'charity': 25080, 'union': 19250}})], [('regression', {'gross': 63849, 'taxes': 6027, 'deductions': [['union', 18684, 2, True], ['charity', 28880, 1, True], ['loan', 38844, 2, True], ['support', 20513, 3, False]], 'arrears': {'union': 15372}}, {'net': 0, 'taken': {'charity': 28880, 'union': 28942, 'loan': 0, 'support': 0}, 'arrears': {'union': 5114, 'loan': 38844, 'support': 20513}}), ('regression', {'gross': 138327, 'taxes': 24358, 'deductions': [['loan', 12004, 3, True], ['union', 4120, 2, True], ['medical', 35331, 3, False], ['parking', 697, 1, True], ['support', 15166, 2, True]], 'arrears': {'loan': 5341, 'union': 19151, 'support': 16971}}, {'net': 5188, 'taken': {'parking': 697, 'union': 23271, 'support': 32137, 'loan': 17345, 'medical': 35331}, 'arrears': {}}), ('partial-repair probe', {'gross': 63883, 'taxes': 16403, 'deductions': [['loan', 28842, 3, False], ['medical', 34809, 2, True]], 'arrears': {'loan': 5346, 'medical': 15166}}, {'net': 0, 'taken': {'medical': 47480, 'loan': 0}, 'arrears': {'medical': 2495, 'loan': 34188}}), ('partial-repair probe', {'gross': 37898, 'taxes': 10470, 'deductions': [['union', 18447, 3, False], ['parking', 30036, 3, True], ['support', 12641, 2, True], ['loan', 39343, 2, False], ['charity', 10333, 2, False]], 'arrears': {'parking': 13057, 'support': 19997}}, {'net': 0, 'taken': {'support': 27428, 'loan': 0, 'charity': 0, 'union': 0, 'parking': 0}, 'arrears': {'support': 5210, 'loan': 39343, 'charity': 10333, 'union': 18447, 'parking': 43093}}), ('normal control', {'gross': 35155, 'taxes': 4541, 'deductions': [['parking', 30989, 1, False], ['support', 32872, 1, False]], 'arrears': {'parking': 10286, 'support': 19476}}, {'net': 30614, 'taken': {'parking': 0, 'support': 0}, 'arrears': {'parking': 41275, 'support': 52348}}), ('normal control', {'gross': 21943, 'taxes': 4843, 'deductions': [['parking', 33670, 3, False], ['charity', 24679, 3, True]], 'arrears': {}}, {'net': 0, 'taken': {'parking': 0, 'charity': 17100}, 'arrears': {'parking': 33670, 'charity': 7579}}), ('normal control', {'gross': 20726, 'taxes': 5501, 'deductions': [['charity', 22176, 1, True], ['medical', 30958, 1, True], ['loan', 15175, 2, True], ['support', 34214, 2, True]], 'arrears': {'support': 1284}}, {'net': 0, 'taken': {'charity': 15225, 'medical': 0, 'loan': 0, 'support': 0}, 'arrears': {'charity': 6951, 'medical': 30958, 'loan': 15175, 'support': 35498}}), ('normal control', {'gross': 15352, 'taxes': 3409, 'deductions': [['charity', 24919, 2, True], ['support', 16527, 2, False], ['loan', 28071, 2, False]], 'arrears': {}}, {'net': 0, 'taken': {'charity': 11943, 'support': 0, 'loan': 0}, 'arrears': {'charity': 12976, 'support': 16527, 'loan': 28071}})], [('regression', {'gross': 75893, 'taxes': 4166, 'deductions': [['parking', 28979, 1, True], ['medical', 32307, 2, True], ['support', 39584, 3, True], ['loan', 36560, 1, True]], 'arrears': {'medical': 4976, 'loan': 12853}}, {'net': 0, 'taken': {'parking': 28979, 'loan': 42748, 'medical': 0, 'support': 0}, 'arrears': {'loan': 6665, 'medical': 37283, 'support': 39584}}), ('regression', {'gross': 102757, 'taxes': 16339, 'deductions': [['medical', 20312, 1, False]], 'arrears': {'medical': 12422}}, {'net': 53684, 'taken': {'medical': 32734}, 'arrears': {}}), ('partial-repair probe', {'gross': 73228, 'taxes': 666, 'deductions': [['loan', 31096, 2, False], ['medical', 18616, 3, False], ['support', 10492, 3, True], ['union', 39510, 1, False], ['charity', 17132, 2, False]], 'arrears': {'loan': 2531, 'support': 15520}}, {'net': 0, 'taken': {'union': 39510, 'loan': 0, 'charity': 17132, 'medical': 0, 'support': 15920}, 'arrears': {'loan': 33627, 'medical': 18616, 'support': 10092}}), ('partial-repair probe', {'gross': 59493, 'taxes': 12677, 'deductions': [['parking', 36655, 2, True], ['union', 22566, 3, True], ['loan', 20538, 1, True], ['medical', 9246, 1, False], ['support', 14303, 1, True]], 'arrears': {'medical': 18889, 'support': 15753}}, {'net': 0, 'taken': {'loan': 20538, 'medical': 0, 'support': 26278, 'parking': 0, 'union': 0}, 'arrears': {'medical': 28135, 'support': 3778, 'parking': 36655, 'union': 22566}}), ('normal control', {'gross': 19093, 'taxes': 472, 'deductions': [['loan', 33282, 1, False], ['union', 29885, 3, False], ['charity', 36812, 3, True], ['support', 18134, 3, True]], 'arrears': {'charity': 8415}}, {'net': 0, 'taken': {'loan': 0, 'union': 0, 'charity': 18621, 'support': 0}, 'arrears': {'loan': 33282, 'union': 29885, 'charity': 26606, 'support': 18134}}), ('normal control', {'gross': 9496, 'taxes': 2152, 'deductions': [['loan', 37495, 2, False], ['union', 25319, 1, True]], 'arrears': {'loan': 5106}}, {'net': 0, 'taken': {'union': 7344, 'loan': 0}, 'arrears': {'union': 17975, 'loan': 42601}}), ('normal control', {'gross': 4210, 'taxes': 944, 'deductions': [['charity', 12281, 3, True], ['loan', 21699, 2, False]], 'arrears': {'loan': 5243}}, {'net': 0, 'taken': {'loan': 0, 'charity': 3266}, 'arrears': {'loan': 26942, 'charity': 9015}}), ('normal control', {'gross': 46504, 'taxes': 13089, 'deductions': [['union', 16705, 3, False], ['charity', 31049, 3, True], ['medical', 10810, 3, True], ['support', 34027, 2, True]], 'arrears': {'union': 13605}}, {'net': 0, 'taken': {'support': 33415, 'union': 0, 'charity': 0, 'medical': 0}, 'arrears': {'support': 612, 'union': 30310, 'charity': 31049, 'medical': 10810}})], [('regression', {'gross': 73228, 'taxes': 666, 'deductions': [['loan', 31096, 2, False], ['medical', 18616, 3, False], ['support', 10492, 3, True], ['union', 39510, 1, False], ['charity', 17132, 2, False]], 'arrears': {'loan': 2531, 'support': 15520}}, {'net': 0, 'taken': {'union': 39510, 'loan': 0, 'charity': 17132, 'medical': 0, 'support': 15920}, 'arrears': {'loan': 33627, 'medical': 18616, 'support': 10092}}), ('regression', {'gross': 106436, 'taxes': 29897, 'deductions': [['parking', 39254, 1, True]], 'arrears': {}}, {'net': 37285, 'taken': {'parking': 39254}, 'arrears': {}}), ('partial-repair probe', {'gross': 59493, 'taxes': 12677, 'deductions': [['parking', 36655, 2, True], ['union', 22566, 3, True], ['loan', 20538, 1, True], ['medical', 9246, 1, False], ['support', 14303, 1, True]], 'arrears': {'medical': 18889, 'support': 15753}}, {'net': 0, 'taken': {'loan': 20538, 'medical': 0, 'support': 26278, 'parking': 0, 'union': 0}, 'arrears': {'medical': 28135, 'support': 3778, 'parking': 36655, 'union': 22566}}), ('partial-repair probe', {'gross': 44674, 'taxes': 14202, 'deductions': [['parking', 23778, 3, True], ['union', 2374, 1, False], ['loan', 38498, 1, False]], 'arrears': {'parking': 6381}}, {'net': 0, 'taken': {'union': 2374, 'loan': 0, 'parking': 28098}, 'arrears': {'loan': 38498, 'parking': 2061}}), ('normal control', {'gross': 770, 'taxes': 57, 'deductions': [['support', 18698, 2, False]], 'arrears': {'support': 10191}}, {'net': 713, 'taken': {'support': 0}, 'arrears': {'support': 28889}}), ('normal control', {'gross': 23798, 'taxes': 1352, 'deductions': [['support', 18645, 2, False]], 'arrears': {'support': 11865}}, {'net': 22446, 'taken': {'support': 0}, 'arrears': {'support': 30510}}), ('normal control', {'gross': 8461, 'taxes': 2779, 'deductions': [['medical', 9329, 2, False], ['support', 30631, 3, True], ['union', 9173, 1, False], ['loan', 6881, 2, True]], 'arrears': {'support': 18557}}, {'net': 0, 'taken': {'union': 0, 'medical': 0, 'loan': 5682, 'support': 0}, 'arrears': {'union': 9173, 'medical': 9329, 'loan': 1199, 'support': 49188}}), ('normal control', {'gross': 12268, 'taxes': 105, 'deductions': [['union', 3130, 3, True], ['parking', 22747, 2, True]], 'arrears': {'union': 1170, 'parking': 19111}}, {'net': 0, 'taken': {'parking': 12163, 'union': 0}, 'arrears': {'parking': 29695, 'union': 4300}})], [('regression', {'gross': 59493, 'taxes': 12677, 'deductions': [['parking', 36655, 2, True], ['union', 22566, 3, True], ['loan', 20538, 1, True], ['medical', 9246, 1, False], ['support', 14303, 1, True]], 'arrears': {'medical': 18889, 'support': 15753}}, {'net': 0, 'taken': {'loan': 20538, 'medical': 0, 'support': 26278, 'parking': 0, 'union': 0}, 'arrears': {'medical': 28135, 'support': 3778, 'parking': 36655, 'union': 22566}}), ('regression', {'gross': 45406, 'taxes': 3941, 'deductions': [['parking', 32509, 3, True], ['loan', 15062, 3, True], ['charity', 31648, 1, False]], 'arrears': {'parking': 1472, 'charity': 15167}}, {'net': 0, 'taken': {'charity': 0, 'parking': 33981, 'loan': 7484}, 'arrears': {'charity': 46815, 'loan': 7578}}), ('partial-repair probe', {'gross': 33954, 'taxes': 3974, 'deductions': [['loan', 33783, 3, True], ['medical', 18835, 2, True], ['support', 24562, 3, True]], 'arrears': {'loan': 14539, 'medical': 11293, 'support': 1936}}, {'net': 0, 'taken': {'medical': 29980, 'loan': 0, 'support': 0}, 'arrears': {'medical': 148, 'loan': 48322, 'support': 26498}}), ('partial-repair probe', {'gross': 46241, 'taxes': 10134, 'deductions': [['charity', 112, 3, True], ['medical', 10972, 3, True], ['support', 1334, 3, True], ['loan', 1505, 3, False]], 'arrears': {'charity': 17330, 'medical': 9649, 'support': 5750, 'loan': 15010}}, {'net': 0, 'taken': {'charity': 17442, 'medical': 18665, 'support': 0, 'loan': 0}, 'arrears': {'medical': 1956, 'support': 7084, 'loan': 16515}}), ('normal control', {'gross': 5973, 'taxes': 1901, 'deductions': [['union', 6319, 2, False], ['charity', 37229, 2, False], ['support', 33286, 1, True], ['loan', 14454, 2, True]], 'arrears': {'support': 19587}}, {'net': 0, 'taken': {'support': 4072, 'union': 0, 'charity': 0, 'loan': 0}, 'arrears': {'support': 48801, 'union': 6319, 'charity': 37229, 'loan': 14454}}), ('normal control', {'gross': 27869, 'taxes': 5642, 'deductions': [['charity', 28332, 2, True]], 'arrears': {'charity': 19203}}, {'net': 0, 'taken': {'charity': 22227}, 'arrears': {'charity': 25308}}), ('normal control', {'gross': 1568, 'taxes': 348, 'deductions': [['parking', 30713, 2, True], ['loan', 23064, 3, False]], 'arrears': {}}, {'net': 0, 'taken': {'parking': 1220, 'loan': 0}, 'arrears': {'parking': 29493, 'loan': 23064}}), ('normal control', {'gross': 2966, 'taxes': 806, 'deductions': [['loan', 19712, 3, False], ['charity', 5272, 1, False], ['parking', 29129, 2, False], ['support', 19215, 1, False], ['union', 19767, 3, False]], 'arrears': {'charity': 11901, 'parking': 13244}}, {'net': 2160, 'taken': {'charity': 0, 'support': 0, 'parking': 0, 'loan': 0, 'union': 0}, 'arrears': {'charity': 17173, 'support': 19215, 'parking': 42373, 'loan': 19712, 'union': 19767}})]]
for i, (label, args, expected) in enumerate(fixtures[N-1]):
check("%s %d" % (label, i), solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| regression 0 | {'arrears': {'charity': 0, 'medical': 22351, 'parking': 38004, 'support': 2399}, 'net': 0, 'taken': {'charity': 29117, 'medical': 0, 'parking': 0, 'support': 6887}} | {'arrears': {'medical': 22351, 'parking': 38004, 'support': 2399}, 'net': 0, 'taken': {'charity': 29117, 'medical': 0, 'parking': 0, 'support': 6887}} | Failed |
| regression 1 | {'arrears': {'loan': 0, 'parking': 0, 'support': 0, 'union': 0}, 'net': 20723, 'taken': {'loan': 28287, 'parking': 36947, 'support': 17878, 'union': 3364}} | {'arrears': {}, 'net': 20723, 'taken': {'loan': 28287, 'parking': 36947, 'support': 17878, 'union': 3364}} | Failed |
| partial-repair probe 2 | {'arrears': {'charity': 0, 'loan': 38844, 'support': 20513, 'union': 5114}, 'net': 0, 'taken': {'charity': 28880, 'loan': 0, 'support': 0, 'union': 28942}} | {'arrears': {'loan': 38844, 'support': 20513, 'union': 5114}, 'net': 0, 'taken': {'charity': 28880, 'loan': 0, 'support': 0, 'union': 28942}} | Failed |
| partial-repair probe 3 | {'arrears': {'loan': 34188, 'medical': 2495}, 'net': 0, 'taken': {'loan': 0, 'medical': 47480}} | {'arrears': {'loan': 34188, 'medical': 2495}, 'net': 0, 'taken': {'loan': 0, 'medical': 47480}} | Passed |
| normal control 4 | {'arrears': {'loan': 18819, 'medical': 31805, 'parking': 5700, 'support': 7319, 'union': 4345}, 'net': 0, 'taken': {'loan': 5721, 'medical': 0, 'parking': 0, 'support': 0, 'union': 0}} | {'arrears': {'loan': 18819, 'medical': 31805, 'parking': 5700, 'support': 7319, 'union': 4345}, 'net': 0, 'taken': {'loan': 5721, 'medical': 0, 'parking': 0, 'support': 0, 'union': 0}} | Passed |
| normal control 5 | {'arrears': {'loan': 30860, 'parking': 20962, 'union': 18985}, 'net': 0, 'taken': {'loan': 2841, 'parking': 0, 'union': 0}} | {'arrears': {'loan': 30860, 'parking': 20962, 'union': 18985}, 'net': 0, 'taken': {'loan': 2841, 'parking': 0, 'union': 0}} | Passed |
| normal control 6 | {'arrears': {'loan': 8882, 'parking': 40330, 'support': 33753, 'union': 53884}, 'net': 0, 'taken': {'loan': 28093, 'parking': 0, 'support': 0, 'union': 0}} | {'arrears': {'loan': 8882, 'parking': 40330, 'support': 33753, 'union': 53884}, 'net': 0, 'taken': {'loan': 28093, 'parking': 0, 'support': 0, 'union': 0}} | Passed |
| normal control 7 | {'arrears': {'charity': 25080, 'medical': 25762, 'parking': 36984, 'union': 19250}, 'net': 0, 'taken': {'charity': 13360, 'medical': 0, 'parking': 0, 'union': 0}} | {'arrears': {'charity': 25080, 'medical': 25762, 'parking': 36984, 'union': 19250}, 'net': 0, 'taken': {'charity': 13360, 'medical': 0, 'parking': 0, 'union': 0}} | Passed |
SHA-256 / 771eca6c327064dfa3ef5654394ba346296fcd7ff729a4f79b3a759cacf11b84
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
avail = max(0, x['gross'] - x['taxes'])
taken = {}
arrears = {}
for name, amt, pri, partial in sorted(x['deductions'], key=lambda d: d[2]):
due = amt + x['arrears'].get(name, 0)
if due <= avail:
take = due
elif partial:
take = avail
else:
take = 0
avail -= take
taken[name] = take
if take < amt:
arrears[name] = due - take
return {'net': avail, 'taken': taken, 'arrears': arrears}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression', {'gross': 49085, 'taxes': 13081, 'deductions': [['medical', 5278, 3, False], ['charity', 17544, 1, True], ['support', 5654, 1, True], ['parking', 38004, 1, False]], 'arrears': {'medical': 17073, 'charity': 11573, 'support': 3632}}, {'net': 0, 'taken': {'charity': 29117, 'support': 6887, 'parking': 0, 'medical': 0}, 'arrears': {'support': 2399, 'parking': 38004, 'medical': 22351}}), ('regression', {'gross': 134653, 'taxes': 27454, 'deductions': [['parking', 26770, 3, False], ['loan', 12315, 2, False], ['union', 3364, 1, False], ['support', 11662, 3, True]], 'arrears': {'parking': 10177, 'loan': 15972, 'support': 6216}}, {'net': 20723, 'taken': {'union': 3364, 'loan': 28287, 'parking': 36947, 'support': 17878}, 'arrears': {}}), ('partial-repair probe', {'gross': 63849, 'taxes': 6027, 'deductions': [['union', 18684, 2, True], ['charity', 28880, 1, True], ['loan', 38844, 2, True], ['support', 20513, 3, False]], 'arrears': {'union': 15372}}, {'net': 0, 'taken': {'charity': 28880, 'union': 28942, 'loan': 0, 'support': 0}, 'arrears': {'union': 5114, 'loan': 38844, 'support': 20513}}), ('partial-repair probe', {'gross': 63883, 'taxes': 16403, 'deductions': [['loan', 28842, 3, False], ['medical', 34809, 2, True]], 'arrears': {'loan': 5346, 'medical': 15166}}, {'net': 0, 'taken': {'medical': 47480, 'loan': 0}, 'arrears': {'medical': 2495, 'loan': 34188}}), ('normal control', {'gross': 6593, 'taxes': 872, 'deductions': [['parking', 5312, 3, False], ['union', 4345, 3, False], ['medical', 14587, 3, False], ['loan', 24540, 2, True], ['support', 7319, 3, True]], 'arrears': {'parking': 388, 'medical': 17218}}, {'net': 0, 'taken': {'loan': 5721, 'parking': 0, 'union': 0, 'medical': 0, 'support': 0}, 'arrears': {'loan': 18819, 'parking': 5700, 'union': 4345, 'medical': 31805, 'support': 7319}}), ('normal control', {'gross': 3515, 'taxes': 674, 'deductions': [['parking', 20962, 1, False], ['union', 18985, 3, True], ['loan', 33701, 1, True]], 'arrears': {}}, {'net': 0, 'taken': {'parking': 0, 'loan': 2841, 'union': 0}, 'arrears': {'parking': 20962, 'loan': 30860, 'union': 18985}}), ('normal control', {'gross': 33426, 'taxes': 5333, 'deductions': [['union', 35082, 2, False], ['loan', 36975, 1, True], ['support', 21693, 3, False], ['parking', 29816, 1, True]], 'arrears': {'union': 18802, 'support': 12060, 'parking': 10514}}, {'net': 0, 'taken': {'loan': 28093, 'parking': 0, 'union': 0, 'support': 0}, 'arrears': {'loan': 8882, 'parking': 40330, 'union': 53884, 'support': 33753}}), ('normal control', {'gross': 18626, 'taxes': 5266, 'deductions': [['union', 19250, 2, False], ['medical', 18064, 1, False], ['parking', 36984, 1, False], ['charity', 38440, 1, True]], 'arrears': {'medical': 7698}}, {'net': 0, 'taken': {'medical': 0, 'parking': 0, 'charity': 13360, 'union': 0}, 'arrears': {'medical': 25762, 'parking': 36984, 'charity': 25080, 'union': 19250}})], [('regression', {'gross': 63849, 'taxes': 6027, 'deductions': [['union', 18684, 2, True], ['charity', 28880, 1, True], ['loan', 38844, 2, True], ['support', 20513, 3, False]], 'arrears': {'union': 15372}}, {'net': 0, 'taken': {'charity': 28880, 'union': 28942, 'loan': 0, 'support': 0}, 'arrears': {'union': 5114, 'loan': 38844, 'support': 20513}}), ('regression', {'gross': 138327, 'taxes': 24358, 'deductions': [['loan', 12004, 3, True], ['union', 4120, 2, True], ['medical', 35331, 3, False], ['parking', 697, 1, True], ['support', 15166, 2, True]], 'arrears': {'loan': 5341, 'union': 19151, 'support': 16971}}, {'net': 5188, 'taken': {'parking': 697, 'union': 23271, 'support': 32137, 'loan': 17345, 'medical': 35331}, 'arrears': {}}), ('partial-repair probe', {'gross': 63883, 'taxes': 16403, 'deductions': [['loan', 28842, 3, False], ['medical', 34809, 2, True]], 'arrears': {'loan': 5346, 'medical': 15166}}, {'net': 0, 'taken': {'medical': 47480, 'loan': 0}, 'arrears': {'medical': 2495, 'loan': 34188}}), ('partial-repair probe', {'gross': 37898, 'taxes': 10470, 'deductions': [['union', 18447, 3, False], ['parking', 30036, 3, True], ['support', 12641, 2, True], ['loan', 39343, 2, False], ['charity', 10333, 2, False]], 'arrears': {'parking': 13057, 'support': 19997}}, {'net': 0, 'taken': {'support': 27428, 'loan': 0, 'charity': 0, 'union': 0, 'parking': 0}, 'arrears': {'support': 5210, 'loan': 39343, 'charity': 10333, 'union': 18447, 'parking': 43093}}), ('normal control', {'gross': 35155, 'taxes': 4541, 'deductions': [['parking', 30989, 1, False], ['support', 32872, 1, False]], 'arrears': {'parking': 10286, 'support': 19476}}, {'net': 30614, 'taken': {'parking': 0, 'support': 0}, 'arrears': {'parking': 41275, 'support': 52348}}), ('normal control', {'gross': 21943, 'taxes': 4843, 'deductions': [['parking', 33670, 3, False], ['charity', 24679, 3, True]], 'arrears': {}}, {'net': 0, 'taken': {'parking': 0, 'charity': 17100}, 'arrears': {'parking': 33670, 'charity': 7579}}), ('normal control', {'gross': 20726, 'taxes': 5501, 'deductions': [['charity', 22176, 1, True], ['medical', 30958, 1, True], ['loan', 15175, 2, True], ['support', 34214, 2, True]], 'arrears': {'support': 1284}}, {'net': 0, 'taken': {'charity': 15225, 'medical': 0, 'loan': 0, 'support': 0}, 'arrears': {'charity': 6951, 'medical': 30958, 'loan': 15175, 'support': 35498}}), ('normal control', {'gross': 15352, 'taxes': 3409, 'deductions': [['charity', 24919, 2, True], ['support', 16527, 2, False], ['loan', 28071, 2, False]], 'arrears': {}}, {'net': 0, 'taken': {'charity': 11943, 'support': 0, 'loan': 0}, 'arrears': {'charity': 12976, 'support': 16527, 'loan': 28071}})], [('regression', {'gross': 75893, 'taxes': 4166, 'deductions': [['parking', 28979, 1, True], ['medical', 32307, 2, True], ['support', 39584, 3, True], ['loan', 36560, 1, True]], 'arrears': {'medical': 4976, 'loan': 12853}}, {'net': 0, 'taken': {'parking': 28979, 'loan': 42748, 'medical': 0, 'support': 0}, 'arrears': {'loan': 6665, 'medical': 37283, 'support': 39584}}), ('regression', {'gross': 102757, 'taxes': 16339, 'deductions': [['medical', 20312, 1, False]], 'arrears': {'medical': 12422}}, {'net': 53684, 'taken': {'medical': 32734}, 'arrears': {}}), ('partial-repair probe', {'gross': 73228, 'taxes': 666, 'deductions': [['loan', 31096, 2, False], ['medical', 18616, 3, False], ['support', 10492, 3, True], ['union', 39510, 1, False], ['charity', 17132, 2, False]], 'arrears': {'loan': 2531, 'support': 15520}}, {'net': 0, 'taken': {'union': 39510, 'loan': 0, 'charity': 17132, 'medical': 0, 'support': 15920}, 'arrears': {'loan': 33627, 'medical': 18616, 'support': 10092}}), ('partial-repair probe', {'gross': 59493, 'taxes': 12677, 'deductions': [['parking', 36655, 2, True], ['union', 22566, 3, True], ['loan', 20538, 1, True], ['medical', 9246, 1, False], ['support', 14303, 1, True]], 'arrears': {'medical': 18889, 'support': 15753}}, {'net': 0, 'taken': {'loan': 20538, 'medical': 0, 'support': 26278, 'parking': 0, 'union': 0}, 'arrears': {'medical': 28135, 'support': 3778, 'parking': 36655, 'union': 22566}}), ('normal control', {'gross': 19093, 'taxes': 472, 'deductions': [['loan', 33282, 1, False], ['union', 29885, 3, False], ['charity', 36812, 3, True], ['support', 18134, 3, True]], 'arrears': {'charity': 8415}}, {'net': 0, 'taken': {'loan': 0, 'union': 0, 'charity': 18621, 'support': 0}, 'arrears': {'loan': 33282, 'union': 29885, 'charity': 26606, 'support': 18134}}), ('normal control', {'gross': 9496, 'taxes': 2152, 'deductions': [['loan', 37495, 2, False], ['union', 25319, 1, True]], 'arrears': {'loan': 5106}}, {'net': 0, 'taken': {'union': 7344, 'loan': 0}, 'arrears': {'union': 17975, 'loan': 42601}}), ('normal control', {'gross': 4210, 'taxes': 944, 'deductions': [['charity', 12281, 3, True], ['loan', 21699, 2, False]], 'arrears': {'loan': 5243}}, {'net': 0, 'taken': {'loan': 0, 'charity': 3266}, 'arrears': {'loan': 26942, 'charity': 9015}}), ('normal control', {'gross': 46504, 'taxes': 13089, 'deductions': [['union', 16705, 3, False], ['charity', 31049, 3, True], ['medical', 10810, 3, True], ['support', 34027, 2, True]], 'arrears': {'union': 13605}}, {'net': 0, 'taken': {'support': 33415, 'union': 0, 'charity': 0, 'medical': 0}, 'arrears': {'support': 612, 'union': 30310, 'charity': 31049, 'medical': 10810}})], [('regression', {'gross': 73228, 'taxes': 666, 'deductions': [['loan', 31096, 2, False], ['medical', 18616, 3, False], ['support', 10492, 3, True], ['union', 39510, 1, False], ['charity', 17132, 2, False]], 'arrears': {'loan': 2531, 'support': 15520}}, {'net': 0, 'taken': {'union': 39510, 'loan': 0, 'charity': 17132, 'medical': 0, 'support': 15920}, 'arrears': {'loan': 33627, 'medical': 18616, 'support': 10092}}), ('regression', {'gross': 106436, 'taxes': 29897, 'deductions': [['parking', 39254, 1, True]], 'arrears': {}}, {'net': 37285, 'taken': {'parking': 39254}, 'arrears': {}}), ('partial-repair probe', {'gross': 59493, 'taxes': 12677, 'deductions': [['parking', 36655, 2, True], ['union', 22566, 3, True], ['loan', 20538, 1, True], ['medical', 9246, 1, False], ['support', 14303, 1, True]], 'arrears': {'medical': 18889, 'support': 15753}}, {'net': 0, 'taken': {'loan': 20538, 'medical': 0, 'support': 26278, 'parking': 0, 'union': 0}, 'arrears': {'medical': 28135, 'support': 3778, 'parking': 36655, 'union': 22566}}), ('partial-repair probe', {'gross': 44674, 'taxes': 14202, 'deductions': [['parking', 23778, 3, True], ['union', 2374, 1, False], ['loan', 38498, 1, False]], 'arrears': {'parking': 6381}}, {'net': 0, 'taken': {'union': 2374, 'loan': 0, 'parking': 28098}, 'arrears': {'loan': 38498, 'parking': 2061}}), ('normal control', {'gross': 770, 'taxes': 57, 'deductions': [['support', 18698, 2, False]], 'arrears': {'support': 10191}}, {'net': 713, 'taken': {'support': 0}, 'arrears': {'support': 28889}}), ('normal control', {'gross': 23798, 'taxes': 1352, 'deductions': [['support', 18645, 2, False]], 'arrears': {'support': 11865}}, {'net': 22446, 'taken': {'support': 0}, 'arrears': {'support': 30510}}), ('normal control', {'gross': 8461, 'taxes': 2779, 'deductions': [['medical', 9329, 2, False], ['support', 30631, 3, True], ['union', 9173, 1, False], ['loan', 6881, 2, True]], 'arrears': {'support': 18557}}, {'net': 0, 'taken': {'union': 0, 'medical': 0, 'loan': 5682, 'support': 0}, 'arrears': {'union': 9173, 'medical': 9329, 'loan': 1199, 'support': 49188}}), ('normal control', {'gross': 12268, 'taxes': 105, 'deductions': [['union', 3130, 3, True], ['parking', 22747, 2, True]], 'arrears': {'union': 1170, 'parking': 19111}}, {'net': 0, 'taken': {'parking': 12163, 'union': 0}, 'arrears': {'parking': 29695, 'union': 4300}})], [('regression', {'gross': 59493, 'taxes': 12677, 'deductions': [['parking', 36655, 2, True], ['union', 22566, 3, True], ['loan', 20538, 1, True], ['medical', 9246, 1, False], ['support', 14303, 1, True]], 'arrears': {'medical': 18889, 'support': 15753}}, {'net': 0, 'taken': {'loan': 20538, 'medical': 0, 'support': 26278, 'parking': 0, 'union': 0}, 'arrears': {'medical': 28135, 'support': 3778, 'parking': 36655, 'union': 22566}}), ('regression', {'gross': 45406, 'taxes': 3941, 'deductions': [['parking', 32509, 3, True], ['loan', 15062, 3, True], ['charity', 31648, 1, False]], 'arrears': {'parking': 1472, 'charity': 15167}}, {'net': 0, 'taken': {'charity': 0, 'parking': 33981, 'loan': 7484}, 'arrears': {'charity': 46815, 'loan': 7578}}), ('partial-repair probe', {'gross': 33954, 'taxes': 3974, 'deductions': [['loan', 33783, 3, True], ['medical', 18835, 2, True], ['support', 24562, 3, True]], 'arrears': {'loan': 14539, 'medical': 11293, 'support': 1936}}, {'net': 0, 'taken': {'medical': 29980, 'loan': 0, 'support': 0}, 'arrears': {'medical': 148, 'loan': 48322, 'support': 26498}}), ('partial-repair probe', {'gross': 46241, 'taxes': 10134, 'deductions': [['charity', 112, 3, True], ['medical', 10972, 3, True], ['support', 1334, 3, True], ['loan', 1505, 3, False]], 'arrears': {'charity': 17330, 'medical': 9649, 'support': 5750, 'loan': 15010}}, {'net': 0, 'taken': {'charity': 17442, 'medical': 18665, 'support': 0, 'loan': 0}, 'arrears': {'medical': 1956, 'support': 7084, 'loan': 16515}}), ('normal control', {'gross': 5973, 'taxes': 1901, 'deductions': [['union', 6319, 2, False], ['charity', 37229, 2, False], ['support', 33286, 1, True], ['loan', 14454, 2, True]], 'arrears': {'support': 19587}}, {'net': 0, 'taken': {'support': 4072, 'union': 0, 'charity': 0, 'loan': 0}, 'arrears': {'support': 48801, 'union': 6319, 'charity': 37229, 'loan': 14454}}), ('normal control', {'gross': 27869, 'taxes': 5642, 'deductions': [['charity', 28332, 2, True]], 'arrears': {'charity': 19203}}, {'net': 0, 'taken': {'charity': 22227}, 'arrears': {'charity': 25308}}), ('normal control', {'gross': 1568, 'taxes': 348, 'deductions': [['parking', 30713, 2, True], ['loan', 23064, 3, False]], 'arrears': {}}, {'net': 0, 'taken': {'parking': 1220, 'loan': 0}, 'arrears': {'parking': 29493, 'loan': 23064}}), ('normal control', {'gross': 2966, 'taxes': 806, 'deductions': [['loan', 19712, 3, False], ['charity', 5272, 1, False], ['parking', 29129, 2, False], ['support', 19215, 1, False], ['union', 19767, 3, False]], 'arrears': {'charity': 11901, 'parking': 13244}}, {'net': 2160, 'taken': {'charity': 0, 'support': 0, 'parking': 0, 'loan': 0, 'union': 0}, 'arrears': {'charity': 17173, 'support': 19215, 'parking': 42373, 'loan': 19712, 'union': 19767}})]]
for i, (label, args, expected) in enumerate(fixtures[N-1]):
check("%s %d" % (label, i), solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| regression 0 | {'arrears': {'medical': 22351, 'parking': 38004}, 'net': 0, 'taken': {'charity': 29117, 'medical': 0, 'parking': 0, 'support': 6887}} | {'arrears': {'medical': 22351, 'parking': 38004, 'support': 2399}, 'net': 0, 'taken': {'charity': 29117, 'medical': 0, 'parking': 0, 'support': 6887}} | Failed |
| regression 1 | {'arrears': {}, 'net': 20723, 'taken': {'loan': 28287, 'parking': 36947, 'support': 17878, 'union': 3364}} | {'arrears': {}, 'net': 20723, 'taken': {'loan': 28287, 'parking': 36947, 'support': 17878, 'union': 3364}} | Passed |
| partial-repair probe 2 | {'arrears': {'loan': 38844, 'support': 20513}, 'net': 0, 'taken': {'charity': 28880, 'loan': 0, 'support': 0, 'union': 28942}} | {'arrears': {'loan': 38844, 'support': 20513, 'union': 5114}, 'net': 0, 'taken': {'charity': 28880, 'loan': 0, 'support': 0, 'union': 28942}} | Failed |
| partial-repair probe 3 | {'arrears': {'loan': 34188}, 'net': 0, 'taken': {'loan': 0, 'medical': 47480}} | {'arrears': {'loan': 34188, 'medical': 2495}, 'net': 0, 'taken': {'loan': 0, 'medical': 47480}} | Failed |
| normal control 4 | {'arrears': {'loan': 18819, 'medical': 31805, 'parking': 5700, 'support': 7319, 'union': 4345}, 'net': 0, 'taken': {'loan': 5721, 'medical': 0, 'parking': 0, 'support': 0, 'union': 0}} | {'arrears': {'loan': 18819, 'medical': 31805, 'parking': 5700, 'support': 7319, 'union': 4345}, 'net': 0, 'taken': {'loan': 5721, 'medical': 0, 'parking': 0, 'support': 0, 'union': 0}} | Passed |
| normal control 5 | {'arrears': {'loan': 30860, 'parking': 20962, 'union': 18985}, 'net': 0, 'taken': {'loan': 2841, 'parking': 0, 'union': 0}} | {'arrears': {'loan': 30860, 'parking': 20962, 'union': 18985}, 'net': 0, 'taken': {'loan': 2841, 'parking': 0, 'union': 0}} | Passed |
| normal control 6 | {'arrears': {'loan': 8882, 'parking': 40330, 'support': 33753, 'union': 53884}, 'net': 0, 'taken': {'loan': 28093, 'parking': 0, 'support': 0, 'union': 0}} | {'arrears': {'loan': 8882, 'parking': 40330, 'support': 33753, 'union': 53884}, 'net': 0, 'taken': {'loan': 28093, 'parking': 0, 'support': 0, 'union': 0}} | Passed |
| normal control 7 | {'arrears': {'charity': 25080, 'medical': 25762, 'parking': 36984, 'union': 19250}, 'net': 0, 'taken': {'charity': 13360, 'medical': 0, 'parking': 0, 'union': 0}} | {'arrears': {'charity': 25080, 'medical': 25762, 'parking': 36984, 'union': 19250}, 'net': 0, 'taken': {'charity': 13360, 'medical': 0, 'parking': 0, 'union': 0}} | Passed |
SHA-256 / 7221933df1aa2e26dc5c7cae3bc375090a39ce8628c30ee537681b7f1986f621
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
avail = max(0, x['gross'] - x['taxes'])
taken = {}
arrears = {}
for name, amt, pri, partial in sorted(x['deductions'], key=lambda d: d[2]):
due = amt + x['arrears'].get(name, 0)
if due <= avail:
take = due
elif partial:
take = avail
else:
take = 0
avail -= take
taken[name] = take
if due - take > 0:
arrears[name] = due - take
return {'net': avail, 'taken': taken, 'arrears': arrears}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression', {'gross': 49085, 'taxes': 13081, 'deductions': [['medical', 5278, 3, False], ['charity', 17544, 1, True], ['support', 5654, 1, True], ['parking', 38004, 1, False]], 'arrears': {'medical': 17073, 'charity': 11573, 'support': 3632}}, {'net': 0, 'taken': {'charity': 29117, 'support': 6887, 'parking': 0, 'medical': 0}, 'arrears': {'support': 2399, 'parking': 38004, 'medical': 22351}}), ('regression', {'gross': 134653, 'taxes': 27454, 'deductions': [['parking', 26770, 3, False], ['loan', 12315, 2, False], ['union', 3364, 1, False], ['support', 11662, 3, True]], 'arrears': {'parking': 10177, 'loan': 15972, 'support': 6216}}, {'net': 20723, 'taken': {'union': 3364, 'loan': 28287, 'parking': 36947, 'support': 17878}, 'arrears': {}}), ('partial-repair probe', {'gross': 63849, 'taxes': 6027, 'deductions': [['union', 18684, 2, True], ['charity', 28880, 1, True], ['loan', 38844, 2, True], ['support', 20513, 3, False]], 'arrears': {'union': 15372}}, {'net': 0, 'taken': {'charity': 28880, 'union': 28942, 'loan': 0, 'support': 0}, 'arrears': {'union': 5114, 'loan': 38844, 'support': 20513}}), ('partial-repair probe', {'gross': 63883, 'taxes': 16403, 'deductions': [['loan', 28842, 3, False], ['medical', 34809, 2, True]], 'arrears': {'loan': 5346, 'medical': 15166}}, {'net': 0, 'taken': {'medical': 47480, 'loan': 0}, 'arrears': {'medical': 2495, 'loan': 34188}}), ('normal control', {'gross': 6593, 'taxes': 872, 'deductions': [['parking', 5312, 3, False], ['union', 4345, 3, False], ['medical', 14587, 3, False], ['loan', 24540, 2, True], ['support', 7319, 3, True]], 'arrears': {'parking': 388, 'medical': 17218}}, {'net': 0, 'taken': {'loan': 5721, 'parking': 0, 'union': 0, 'medical': 0, 'support': 0}, 'arrears': {'loan': 18819, 'parking': 5700, 'union': 4345, 'medical': 31805, 'support': 7319}}), ('normal control', {'gross': 3515, 'taxes': 674, 'deductions': [['parking', 20962, 1, False], ['union', 18985, 3, True], ['loan', 33701, 1, True]], 'arrears': {}}, {'net': 0, 'taken': {'parking': 0, 'loan': 2841, 'union': 0}, 'arrears': {'parking': 20962, 'loan': 30860, 'union': 18985}}), ('normal control', {'gross': 33426, 'taxes': 5333, 'deductions': [['union', 35082, 2, False], ['loan', 36975, 1, True], ['support', 21693, 3, False], ['parking', 29816, 1, True]], 'arrears': {'union': 18802, 'support': 12060, 'parking': 10514}}, {'net': 0, 'taken': {'loan': 28093, 'parking': 0, 'union': 0, 'support': 0}, 'arrears': {'loan': 8882, 'parking': 40330, 'union': 53884, 'support': 33753}}), ('normal control', {'gross': 18626, 'taxes': 5266, 'deductions': [['union', 19250, 2, False], ['medical', 18064, 1, False], ['parking', 36984, 1, False], ['charity', 38440, 1, True]], 'arrears': {'medical': 7698}}, {'net': 0, 'taken': {'medical': 0, 'parking': 0, 'charity': 13360, 'union': 0}, 'arrears': {'medical': 25762, 'parking': 36984, 'charity': 25080, 'union': 19250}})], [('regression', {'gross': 63849, 'taxes': 6027, 'deductions': [['union', 18684, 2, True], ['charity', 28880, 1, True], ['loan', 38844, 2, True], ['support', 20513, 3, False]], 'arrears': {'union': 15372}}, {'net': 0, 'taken': {'charity': 28880, 'union': 28942, 'loan': 0, 'support': 0}, 'arrears': {'union': 5114, 'loan': 38844, 'support': 20513}}), ('regression', {'gross': 138327, 'taxes': 24358, 'deductions': [['loan', 12004, 3, True], ['union', 4120, 2, True], ['medical', 35331, 3, False], ['parking', 697, 1, True], ['support', 15166, 2, True]], 'arrears': {'loan': 5341, 'union': 19151, 'support': 16971}}, {'net': 5188, 'taken': {'parking': 697, 'union': 23271, 'support': 32137, 'loan': 17345, 'medical': 35331}, 'arrears': {}}), ('partial-repair probe', {'gross': 63883, 'taxes': 16403, 'deductions': [['loan', 28842, 3, False], ['medical', 34809, 2, True]], 'arrears': {'loan': 5346, 'medical': 15166}}, {'net': 0, 'taken': {'medical': 47480, 'loan': 0}, 'arrears': {'medical': 2495, 'loan': 34188}}), ('partial-repair probe', {'gross': 37898, 'taxes': 10470, 'deductions': [['union', 18447, 3, False], ['parking', 30036, 3, True], ['support', 12641, 2, True], ['loan', 39343, 2, False], ['charity', 10333, 2, False]], 'arrears': {'parking': 13057, 'support': 19997}}, {'net': 0, 'taken': {'support': 27428, 'loan': 0, 'charity': 0, 'union': 0, 'parking': 0}, 'arrears': {'support': 5210, 'loan': 39343, 'charity': 10333, 'union': 18447, 'parking': 43093}}), ('normal control', {'gross': 35155, 'taxes': 4541, 'deductions': [['parking', 30989, 1, False], ['support', 32872, 1, False]], 'arrears': {'parking': 10286, 'support': 19476}}, {'net': 30614, 'taken': {'parking': 0, 'support': 0}, 'arrears': {'parking': 41275, 'support': 52348}}), ('normal control', {'gross': 21943, 'taxes': 4843, 'deductions': [['parking', 33670, 3, False], ['charity', 24679, 3, True]], 'arrears': {}}, {'net': 0, 'taken': {'parking': 0, 'charity': 17100}, 'arrears': {'parking': 33670, 'charity': 7579}}), ('normal control', {'gross': 20726, 'taxes': 5501, 'deductions': [['charity', 22176, 1, True], ['medical', 30958, 1, True], ['loan', 15175, 2, True], ['support', 34214, 2, True]], 'arrears': {'support': 1284}}, {'net': 0, 'taken': {'charity': 15225, 'medical': 0, 'loan': 0, 'support': 0}, 'arrears': {'charity': 6951, 'medical': 30958, 'loan': 15175, 'support': 35498}}), ('normal control', {'gross': 15352, 'taxes': 3409, 'deductions': [['charity', 24919, 2, True], ['support', 16527, 2, False], ['loan', 28071, 2, False]], 'arrears': {}}, {'net': 0, 'taken': {'charity': 11943, 'support': 0, 'loan': 0}, 'arrears': {'charity': 12976, 'support': 16527, 'loan': 28071}})], [('regression', {'gross': 75893, 'taxes': 4166, 'deductions': [['parking', 28979, 1, True], ['medical', 32307, 2, True], ['support', 39584, 3, True], ['loan', 36560, 1, True]], 'arrears': {'medical': 4976, 'loan': 12853}}, {'net': 0, 'taken': {'parking': 28979, 'loan': 42748, 'medical': 0, 'support': 0}, 'arrears': {'loan': 6665, 'medical': 37283, 'support': 39584}}), ('regression', {'gross': 102757, 'taxes': 16339, 'deductions': [['medical', 20312, 1, False]], 'arrears': {'medical': 12422}}, {'net': 53684, 'taken': {'medical': 32734}, 'arrears': {}}), ('partial-repair probe', {'gross': 73228, 'taxes': 666, 'deductions': [['loan', 31096, 2, False], ['medical', 18616, 3, False], ['support', 10492, 3, True], ['union', 39510, 1, False], ['charity', 17132, 2, False]], 'arrears': {'loan': 2531, 'support': 15520}}, {'net': 0, 'taken': {'union': 39510, 'loan': 0, 'charity': 17132, 'medical': 0, 'support': 15920}, 'arrears': {'loan': 33627, 'medical': 18616, 'support': 10092}}), ('partial-repair probe', {'gross': 59493, 'taxes': 12677, 'deductions': [['parking', 36655, 2, True], ['union', 22566, 3, True], ['loan', 20538, 1, True], ['medical', 9246, 1, False], ['support', 14303, 1, True]], 'arrears': {'medical': 18889, 'support': 15753}}, {'net': 0, 'taken': {'loan': 20538, 'medical': 0, 'support': 26278, 'parking': 0, 'union': 0}, 'arrears': {'medical': 28135, 'support': 3778, 'parking': 36655, 'union': 22566}}), ('normal control', {'gross': 19093, 'taxes': 472, 'deductions': [['loan', 33282, 1, False], ['union', 29885, 3, False], ['charity', 36812, 3, True], ['support', 18134, 3, True]], 'arrears': {'charity': 8415}}, {'net': 0, 'taken': {'loan': 0, 'union': 0, 'charity': 18621, 'support': 0}, 'arrears': {'loan': 33282, 'union': 29885, 'charity': 26606, 'support': 18134}}), ('normal control', {'gross': 9496, 'taxes': 2152, 'deductions': [['loan', 37495, 2, False], ['union', 25319, 1, True]], 'arrears': {'loan': 5106}}, {'net': 0, 'taken': {'union': 7344, 'loan': 0}, 'arrears': {'union': 17975, 'loan': 42601}}), ('normal control', {'gross': 4210, 'taxes': 944, 'deductions': [['charity', 12281, 3, True], ['loan', 21699, 2, False]], 'arrears': {'loan': 5243}}, {'net': 0, 'taken': {'loan': 0, 'charity': 3266}, 'arrears': {'loan': 26942, 'charity': 9015}}), ('normal control', {'gross': 46504, 'taxes': 13089, 'deductions': [['union', 16705, 3, False], ['charity', 31049, 3, True], ['medical', 10810, 3, True], ['support', 34027, 2, True]], 'arrears': {'union': 13605}}, {'net': 0, 'taken': {'support': 33415, 'union': 0, 'charity': 0, 'medical': 0}, 'arrears': {'support': 612, 'union': 30310, 'charity': 31049, 'medical': 10810}})], [('regression', {'gross': 73228, 'taxes': 666, 'deductions': [['loan', 31096, 2, False], ['medical', 18616, 3, False], ['support', 10492, 3, True], ['union', 39510, 1, False], ['charity', 17132, 2, False]], 'arrears': {'loan': 2531, 'support': 15520}}, {'net': 0, 'taken': {'union': 39510, 'loan': 0, 'charity': 17132, 'medical': 0, 'support': 15920}, 'arrears': {'loan': 33627, 'medical': 18616, 'support': 10092}}), ('regression', {'gross': 106436, 'taxes': 29897, 'deductions': [['parking', 39254, 1, True]], 'arrears': {}}, {'net': 37285, 'taken': {'parking': 39254}, 'arrears': {}}), ('partial-repair probe', {'gross': 59493, 'taxes': 12677, 'deductions': [['parking', 36655, 2, True], ['union', 22566, 3, True], ['loan', 20538, 1, True], ['medical', 9246, 1, False], ['support', 14303, 1, True]], 'arrears': {'medical': 18889, 'support': 15753}}, {'net': 0, 'taken': {'loan': 20538, 'medical': 0, 'support': 26278, 'parking': 0, 'union': 0}, 'arrears': {'medical': 28135, 'support': 3778, 'parking': 36655, 'union': 22566}}), ('partial-repair probe', {'gross': 44674, 'taxes': 14202, 'deductions': [['parking', 23778, 3, True], ['union', 2374, 1, False], ['loan', 38498, 1, False]], 'arrears': {'parking': 6381}}, {'net': 0, 'taken': {'union': 2374, 'loan': 0, 'parking': 28098}, 'arrears': {'loan': 38498, 'parking': 2061}}), ('normal control', {'gross': 770, 'taxes': 57, 'deductions': [['support', 18698, 2, False]], 'arrears': {'support': 10191}}, {'net': 713, 'taken': {'support': 0}, 'arrears': {'support': 28889}}), ('normal control', {'gross': 23798, 'taxes': 1352, 'deductions': [['support', 18645, 2, False]], 'arrears': {'support': 11865}}, {'net': 22446, 'taken': {'support': 0}, 'arrears': {'support': 30510}}), ('normal control', {'gross': 8461, 'taxes': 2779, 'deductions': [['medical', 9329, 2, False], ['support', 30631, 3, True], ['union', 9173, 1, False], ['loan', 6881, 2, True]], 'arrears': {'support': 18557}}, {'net': 0, 'taken': {'union': 0, 'medical': 0, 'loan': 5682, 'support': 0}, 'arrears': {'union': 9173, 'medical': 9329, 'loan': 1199, 'support': 49188}}), ('normal control', {'gross': 12268, 'taxes': 105, 'deductions': [['union', 3130, 3, True], ['parking', 22747, 2, True]], 'arrears': {'union': 1170, 'parking': 19111}}, {'net': 0, 'taken': {'parking': 12163, 'union': 0}, 'arrears': {'parking': 29695, 'union': 4300}})], [('regression', {'gross': 59493, 'taxes': 12677, 'deductions': [['parking', 36655, 2, True], ['union', 22566, 3, True], ['loan', 20538, 1, True], ['medical', 9246, 1, False], ['support', 14303, 1, True]], 'arrears': {'medical': 18889, 'support': 15753}}, {'net': 0, 'taken': {'loan': 20538, 'medical': 0, 'support': 26278, 'parking': 0, 'union': 0}, 'arrears': {'medical': 28135, 'support': 3778, 'parking': 36655, 'union': 22566}}), ('regression', {'gross': 45406, 'taxes': 3941, 'deductions': [['parking', 32509, 3, True], ['loan', 15062, 3, True], ['charity', 31648, 1, False]], 'arrears': {'parking': 1472, 'charity': 15167}}, {'net': 0, 'taken': {'charity': 0, 'parking': 33981, 'loan': 7484}, 'arrears': {'charity': 46815, 'loan': 7578}}), ('partial-repair probe', {'gross': 33954, 'taxes': 3974, 'deductions': [['loan', 33783, 3, True], ['medical', 18835, 2, True], ['support', 24562, 3, True]], 'arrears': {'loan': 14539, 'medical': 11293, 'support': 1936}}, {'net': 0, 'taken': {'medical': 29980, 'loan': 0, 'support': 0}, 'arrears': {'medical': 148, 'loan': 48322, 'support': 26498}}), ('partial-repair probe', {'gross': 46241, 'taxes': 10134, 'deductions': [['charity', 112, 3, True], ['medical', 10972, 3, True], ['support', 1334, 3, True], ['loan', 1505, 3, False]], 'arrears': {'charity': 17330, 'medical': 9649, 'support': 5750, 'loan': 15010}}, {'net': 0, 'taken': {'charity': 17442, 'medical': 18665, 'support': 0, 'loan': 0}, 'arrears': {'medical': 1956, 'support': 7084, 'loan': 16515}}), ('normal control', {'gross': 5973, 'taxes': 1901, 'deductions': [['union', 6319, 2, False], ['charity', 37229, 2, False], ['support', 33286, 1, True], ['loan', 14454, 2, True]], 'arrears': {'support': 19587}}, {'net': 0, 'taken': {'support': 4072, 'union': 0, 'charity': 0, 'loan': 0}, 'arrears': {'support': 48801, 'union': 6319, 'charity': 37229, 'loan': 14454}}), ('normal control', {'gross': 27869, 'taxes': 5642, 'deductions': [['charity', 28332, 2, True]], 'arrears': {'charity': 19203}}, {'net': 0, 'taken': {'charity': 22227}, 'arrears': {'charity': 25308}}), ('normal control', {'gross': 1568, 'taxes': 348, 'deductions': [['parking', 30713, 2, True], ['loan', 23064, 3, False]], 'arrears': {}}, {'net': 0, 'taken': {'parking': 1220, 'loan': 0}, 'arrears': {'parking': 29493, 'loan': 23064}}), ('normal control', {'gross': 2966, 'taxes': 806, 'deductions': [['loan', 19712, 3, False], ['charity', 5272, 1, False], ['parking', 29129, 2, False], ['support', 19215, 1, False], ['union', 19767, 3, False]], 'arrears': {'charity': 11901, 'parking': 13244}}, {'net': 2160, 'taken': {'charity': 0, 'support': 0, 'parking': 0, 'loan': 0, 'union': 0}, 'arrears': {'charity': 17173, 'support': 19215, 'parking': 42373, 'loan': 19712, 'union': 19767}})]]
for i, (label, args, expected) in enumerate(fixtures[N-1]):
check("%s %d" % (label, i), solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| regression 0 | {'arrears': {'medical': 22351, 'parking': 38004, 'support': 2399}, 'net': 0, 'taken': {'charity': 29117, 'medical': 0, 'parking': 0, 'support': 6887}} | {'arrears': {'medical': 22351, 'parking': 38004, 'support': 2399}, 'net': 0, 'taken': {'charity': 29117, 'medical': 0, 'parking': 0, 'support': 6887}} | Passed |
| regression 1 | {'arrears': {}, 'net': 20723, 'taken': {'loan': 28287, 'parking': 36947, 'support': 17878, 'union': 3364}} | {'arrears': {}, 'net': 20723, 'taken': {'loan': 28287, 'parking': 36947, 'support': 17878, 'union': 3364}} | Passed |
| partial-repair probe 2 | {'arrears': {'loan': 38844, 'support': 20513, 'union': 5114}, 'net': 0, 'taken': {'charity': 28880, 'loan': 0, 'support': 0, 'union': 28942}} | {'arrears': {'loan': 38844, 'support': 20513, 'union': 5114}, 'net': 0, 'taken': {'charity': 28880, 'loan': 0, 'support': 0, 'union': 28942}} | Passed |
| partial-repair probe 3 | {'arrears': {'loan': 34188, 'medical': 2495}, 'net': 0, 'taken': {'loan': 0, 'medical': 47480}} | {'arrears': {'loan': 34188, 'medical': 2495}, 'net': 0, 'taken': {'loan': 0, 'medical': 47480}} | Passed |
| normal control 4 | {'arrears': {'loan': 18819, 'medical': 31805, 'parking': 5700, 'support': 7319, 'union': 4345}, 'net': 0, 'taken': {'loan': 5721, 'medical': 0, 'parking': 0, 'support': 0, 'union': 0}} | {'arrears': {'loan': 18819, 'medical': 31805, 'parking': 5700, 'support': 7319, 'union': 4345}, 'net': 0, 'taken': {'loan': 5721, 'medical': 0, 'parking': 0, 'support': 0, 'union': 0}} | Passed |
| normal control 5 | {'arrears': {'loan': 30860, 'parking': 20962, 'union': 18985}, 'net': 0, 'taken': {'loan': 2841, 'parking': 0, 'union': 0}} | {'arrears': {'loan': 30860, 'parking': 20962, 'union': 18985}, 'net': 0, 'taken': {'loan': 2841, 'parking': 0, 'union': 0}} | Passed |
| normal control 6 | {'arrears': {'loan': 8882, 'parking': 40330, 'support': 33753, 'union': 53884}, 'net': 0, 'taken': {'loan': 28093, 'parking': 0, 'support': 0, 'union': 0}} | {'arrears': {'loan': 8882, 'parking': 40330, 'support': 33753, 'union': 53884}, 'net': 0, 'taken': {'loan': 28093, 'parking': 0, 'support': 0, 'union': 0}} | Passed |
| normal control 7 | {'arrears': {'charity': 25080, 'medical': 25762, 'parking': 36984, 'union': 19250}, 'net': 0, 'taken': {'charity': 13360, 'medical': 0, 'parking': 0, 'union': 0}} | {'arrears': {'charity': 25080, 'medical': 25762, 'parking': 36984, 'union': 19250}, 'net': 0, 'taken': {'charity': 13360, 'medical': 0, 'parking': 0, 'union': 0}} | Passed |
SHA-256 / 8bde92b28bf87a7a7d289f886801f592372af054cb7b342d905407f97769cff3
Verification & scope
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.
Observations recorded using Python 3.12.14 at 2026-09-29T14:46:33.089000+00:00.
Case digest / f49a67975cf4dbbb06cea2cb04364ae5c5ddf32e8b35b8d05e6e21c244524b9d