broken_source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(x):
    v0 = max(0,x["bid"]-x["resale"])
    v1 = 0 if x["excused"] else x["fee"]
    v2 = max(0,x["bid"]-x["resale"])
    v3 = 0 if x["notice"]<=x["cutoff"] else x["deposit"]
    v4 = max(0,x["bid"]-x["resale"]-x["deposit"])
    v5 = max(0,min(x["cap"],max(0,x["bid"]-x["resale"])+x["fee"])-x["already_paid"])
    v6 = x["bond"] if x["forfeit"] and not x["released"] else 0
    v7 = max(0,x["awarded_units"]-x["returned_units"])
    v8 = min(x["withdrawn_units"],max(0,x["awarded_units"]-x["returned_units"]))
    v9 = [b for b in dict.fromkeys(b for op,b in x["events"]) if [op for op,c in x["events"] if c==b][-1]=="withdraw"]
    return {'resale-shortfall':v0,'excused-fee-waiver':v1,'award-liability-gate':v2,'notice-penalty':v3,'deposit-offset':v4,'paid-liability-credit':v5,'released-bond-exclusion':v6,'unreturned-award-units':v7,'withdrawal-unit-cap':v8,'reinstatement-after-withdrawal':v9}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('before award', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': False, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('notice order retained / before award', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': False, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('no forfeit', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': False, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60]), ('notice order retained / no forfeit', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': False, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60]), ('normal contract', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60]), ('notice order retained', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60]), ('resale surplus', {'bid': 30, 'resale': 40, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('excused default', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': True, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60]), ('timely notice', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 3, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60]), ('exact notice cutoff', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 4, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60]), ('liability already paid', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 40, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60]), ('bond released', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': True, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60])]
def vary(value):
 if type(value) is int: return value*N
 if isinstance(value,list): return [vary(v) for v in value]
 if isinstance(value,dict): return {k:(v if k in ['count', 'delivery_index', 'disputed', 'maximum_set', 'minimum_set', 'stage', 'threshold', 'waived'] else vary(v)) for k,v in value.items()}
 return value
for label, request, expected in fixtures:
 check(label, solve(vary(request))['award-liability-gate'], expected[N-1])
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)

source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(x):
    v0 = max(0,x["bid"]-x["resale"])
    v1 = 0 if x["excused"] else x["fee"]
    v2 = max(0,x["bid"]-x["resale"]) if x["awarded"] and x["forfeit"] else 0
    v3 = 0 if x["notice"]<=x["cutoff"] else x["deposit"]
    v4 = max(0,x["bid"]-x["resale"]-x["deposit"])
    v5 = max(0,min(x["cap"],max(0,x["bid"]-x["resale"])+x["fee"])-x["already_paid"])
    v6 = x["bond"] if x["forfeit"] and not x["released"] else 0
    v7 = max(0,x["awarded_units"]-x["returned_units"])
    v8 = min(x["withdrawn_units"],max(0,x["awarded_units"]-x["returned_units"]))
    v9 = [b for b in dict.fromkeys(b for op,b in x["events"]) if [op for op,c in x["events"] if c==b][-1]=="withdraw"]
    return {'resale-shortfall':v0,'excused-fee-waiver':v1,'award-liability-gate':v2,'notice-penalty':v3,'deposit-offset':v4,'paid-liability-credit':v5,'released-bond-exclusion':v6,'unreturned-award-units':v7,'withdrawal-unit-cap':v8,'reinstatement-after-withdrawal':v9}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('before award', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': False, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('notice order retained / before award', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': False, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('no forfeit', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': False, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60]), ('notice order retained / no forfeit', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': False, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60]), ('normal contract', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60]), ('notice order retained', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60]), ('resale surplus', {'bid': 30, 'resale': 40, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('excused default', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': True, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60]), ('timely notice', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 3, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60]), ('exact notice cutoff', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 4, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60]), ('liability already paid', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 40, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60]), ('bond released', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': True, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [12, 24, 36, 48, 60])]
def vary(value):
 if type(value) is int: return value*N
 if isinstance(value,list): return [vary(v) for v in value]
 if isinstance(value,dict): return {k:(v if k in ['count', 'delivery_index', 'disputed', 'maximum_set', 'minimum_set', 'stage', 'threshold', 'waived'] else vary(v)) for k,v in value.items()}
 return value
for label, request, expected in fixtures:
 check(label, solve(vary(request))['award-liability-gate'], expected[N-1])
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)

prompt:
Unawarded bidders are charged award-default damages.

A toy auction withdrawal policy distinguishes voluntary withdrawal before award, excused withdrawal, replacement proceeds, paid deposits and caps on liquidated liability. Nonnegative integer credits are used; no legal or financial interpretation is intended. Named decision award-liability-gate: For award liability gate, apply the stipulated decision max(0,x["bid"]-x["resale"]) if x["awarded"] else 0.

split: open-access


broken_source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(x):
    v0 = max(0,x["bid"]-x["resale"])
    v1 = 0 if x["excused"] else x["fee"]
    v2 = max(0,x["bid"]-x["resale"]) if x["awarded"] else 0
    v3 = 0 if x["notice"]<x["cutoff"] else x["deposit"]
    v4 = max(0,x["bid"]-x["resale"]-x["deposit"])
    v5 = max(0,min(x["cap"],max(0,x["bid"]-x["resale"])+x["fee"])-x["already_paid"])
    v6 = x["bond"] if x["forfeit"] and not x["released"] else 0
    v7 = max(0,x["awarded_units"]-x["returned_units"])
    v8 = min(x["withdrawn_units"],max(0,x["awarded_units"]-x["returned_units"]))
    v9 = [b for b in dict.fromkeys(b for op,b in x["events"]) if [op for op,c in x["events"] if c==b][-1]=="withdraw"]
    return {'resale-shortfall':v0,'excused-fee-waiver':v1,'award-liability-gate':v2,'notice-penalty':v3,'deposit-offset':v4,'paid-liability-credit':v5,'released-bond-exclusion':v6,'unreturned-award-units':v7,'withdrawal-unit-cap':v8,'reinstatement-after-withdrawal':v9}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('exact notice cutoff', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 4, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('notice order retained / exact notice cutoff', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 4, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('normal contract', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [8, 16, 24, 32, 40]), ('notice order retained', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [8, 16, 24, 32, 40]), ('resale surplus', {'bid': 30, 'resale': 40, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [8, 16, 24, 32, 40]), ('excused default', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': True, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [8, 16, 24, 32, 40]), ('before award', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': False, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [8, 16, 24, 32, 40]), ('timely notice', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 3, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('liability already paid', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 40, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [8, 16, 24, 32, 40]), ('bond released', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': True, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [8, 16, 24, 32, 40])]
def vary(value):
 if type(value) is int: return value*N
 if isinstance(value,list): return [vary(v) for v in value]
 if isinstance(value,dict): return {k:(v if k in ['count', 'delivery_index', 'disputed', 'maximum_set', 'minimum_set', 'stage', 'threshold', 'waived'] else vary(v)) for k,v in value.items()}
 return value
for label, request, expected in fixtures:
 check(label, solve(vary(request))['notice-penalty'], expected[N-1])
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)

meaning: Fixture-count band, not measured model difficulty

deps: stdlib

source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(x):
    v0 = max(0,x["bid"]-x["resale"])
    v1 = 0 if x["excused"] else x["fee"]
    v2 = max(0,x["bid"]-x["resale"]) if x["awarded"] else 0
    v3 = 0 if x["notice"]>=x["cutoff"] else x["deposit"]
    v4 = max(0,x["bid"]-x["resale"]-x["deposit"])
    v5 = max(0,min(x["cap"],max(0,x["bid"]-x["resale"])+x["fee"])-x["already_paid"])
    v6 = x["bond"] if x["forfeit"] and not x["released"] else 0
    v7 = max(0,x["awarded_units"]-x["returned_units"])
    v8 = min(x["withdrawn_units"],max(0,x["awarded_units"]-x["returned_units"]))
    v9 = [b for b in dict.fromkeys(b for op,b in x["events"]) if [op for op,c in x["events"] if c==b][-1]=="withdraw"]
    return {'resale-shortfall':v0,'excused-fee-waiver':v1,'award-liability-gate':v2,'notice-penalty':v3,'deposit-offset':v4,'paid-liability-credit':v5,'released-bond-exclusion':v6,'unreturned-award-units':v7,'withdrawal-unit-cap':v8,'reinstatement-after-withdrawal':v9}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('exact notice cutoff', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 4, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('notice order retained / exact notice cutoff', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 4, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('normal contract', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [8, 16, 24, 32, 40]), ('notice order retained', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [8, 16, 24, 32, 40]), ('resale surplus', {'bid': 30, 'resale': 40, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [8, 16, 24, 32, 40]), ('excused default', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': True, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [8, 16, 24, 32, 40]), ('before award', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': False, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [8, 16, 24, 32, 40]), ('timely notice', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 3, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('liability already paid', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 40, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [8, 16, 24, 32, 40]), ('bond released', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': True, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [8, 16, 24, 32, 40])]
def vary(value):
 if type(value) is int: return value*N
 if isinstance(value,list): return [vary(v) for v in value]
 if isinstance(value,dict): return {k:(v if k in ['count', 'delivery_index', 'disputed', 'maximum_set', 'minimum_set', 'stage', 'threshold', 'waived'] else vary(v)) for k,v in value.items()}
 return value
for label, request, expected in fixtures:
 check(label, solve(vary(request))['notice-penalty'], expected[N-1])
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)

prompt:
Notice at the contractual cutoff is wrongly penalized.

A toy auction withdrawal policy distinguishes voluntary withdrawal before award, excused withdrawal, replacement proceeds, paid deposits and caps on liquidated liability. Nonnegative integer credits are used; no legal or financial interpretation is intended. Named decision notice-penalty: For notice penalty, apply the stipulated decision 0 if x["notice"]<=x["cutoff"] else x["deposit"].

split: open-access


broken_source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(x):
    v0 = max(0,x["bid"]-x["resale"])
    v1 = 0 if x["excused"] else x["fee"]
    v2 = max(0,x["bid"]-x["resale"]) if x["awarded"] else 0
    v3 = 0 if x["notice"]<=x["cutoff"] else x["deposit"]
    v4 = max(0,x["bid"]-x["resale"])+x["deposit"]
    v5 = max(0,min(x["cap"],max(0,x["bid"]-x["resale"])+x["fee"])-x["already_paid"])
    v6 = x["bond"] if x["forfeit"] and not x["released"] else 0
    v7 = max(0,x["awarded_units"]-x["returned_units"])
    v8 = min(x["withdrawn_units"],max(0,x["awarded_units"]-x["returned_units"]))
    v9 = [b for b in dict.fromkeys(b for op,b in x["events"]) if [op for op,c in x["events"] if c==b][-1]=="withdraw"]
    return {'resale-shortfall':v0,'excused-fee-waiver':v1,'award-liability-gate':v2,'notice-penalty':v3,'deposit-offset':v4,'paid-liability-credit':v5,'released-bond-exclusion':v6,'unreturned-award-units':v7,'withdrawal-unit-cap':v8,'reinstatement-after-withdrawal':v9}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('normal contract', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('notice order retained', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('resale surplus', {'bid': 30, 'resale': 40, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('notice order retained / resale surplus', {'bid': 30, 'resale': 40, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('excused default', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': True, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('before award', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': False, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('timely notice', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 3, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('exact notice cutoff', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 4, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('liability already paid', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 40, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('bond released', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': True, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20])]
def vary(value):
 if type(value) is int: return value*N
 if isinstance(value,list): return [vary(v) for v in value]
 if isinstance(value,dict): return {k:(v if k in ['count', 'delivery_index', 'disputed', 'maximum_set', 'minimum_set', 'stage', 'threshold', 'waived'] else vary(v)) for k,v in value.items()}
 return value
for label, request, expected in fixtures:
 check(label, solve(vary(request))['deposit-offset'], expected[N-1])
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)

source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(x):
    v0 = max(0,x["bid"]-x["resale"])
    v1 = 0 if x["excused"] else x["fee"]
    v2 = max(0,x["bid"]-x["resale"]) if x["awarded"] else 0
    v3 = 0 if x["notice"]<=x["cutoff"] else x["deposit"]
    v4 = max(0,x["bid"]-x["resale"])-x["deposit"]
    v5 = max(0,min(x["cap"],max(0,x["bid"]-x["resale"])+x["fee"])-x["already_paid"])
    v6 = x["bond"] if x["forfeit"] and not x["released"] else 0
    v7 = max(0,x["awarded_units"]-x["returned_units"])
    v8 = min(x["withdrawn_units"],max(0,x["awarded_units"]-x["returned_units"]))
    v9 = [b for b in dict.fromkeys(b for op,b in x["events"]) if [op for op,c in x["events"] if c==b][-1]=="withdraw"]
    return {'resale-shortfall':v0,'excused-fee-waiver':v1,'award-liability-gate':v2,'notice-penalty':v3,'deposit-offset':v4,'paid-liability-credit':v5,'released-bond-exclusion':v6,'unreturned-award-units':v7,'withdrawal-unit-cap':v8,'reinstatement-after-withdrawal':v9}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('normal contract', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('notice order retained', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('resale surplus', {'bid': 30, 'resale': 40, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('notice order retained / resale surplus', {'bid': 30, 'resale': 40, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('excused default', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': True, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('before award', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': False, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('timely notice', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 3, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('exact notice cutoff', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 4, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('liability already paid', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 40, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('bond released', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': True, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20])]
def vary(value):
 if type(value) is int: return value*N
 if isinstance(value,list): return [vary(v) for v in value]
 if isinstance(value,dict): return {k:(v if k in ['count', 'delivery_index', 'disputed', 'maximum_set', 'minimum_set', 'stage', 'threshold', 'waived'] else vary(v)) for k,v in value.items()}
 return value
for label, request, expected in fixtures:
 check(label, solve(vary(request))['deposit-offset'], expected[N-1])
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)

prompt:
An already forfeited deposit is added to damages instead of credited.

A toy auction withdrawal policy distinguishes voluntary withdrawal before award, excused withdrawal, replacement proceeds, paid deposits and caps on liquidated liability. Nonnegative integer credits are used; no legal or financial interpretation is intended. Named decision deposit-offset: For deposit offset, apply the stipulated decision max(0,x["bid"]-x["resale"]-x["deposit"]).

split: open-access


broken_source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(x):
    v0 = max(0,x["bid"]-x["resale"])
    v1 = 0 if x["excused"] else x["fee"]
    v2 = max(0,x["bid"]-x["resale"]) if x["awarded"] else 0
    v3 = 0 if x["notice"]<=x["cutoff"] else x["deposit"]
    v4 = max(0,x["bid"]-x["resale"]-x["deposit"])
    v5 = max(0,x["bid"]-x["resale"])+x["fee"]
    v6 = x["bond"] if x["forfeit"] and not x["released"] else 0
    v7 = max(0,x["awarded_units"]-x["returned_units"])
    v8 = min(x["withdrawn_units"],max(0,x["awarded_units"]-x["returned_units"]))
    v9 = [b for b in dict.fromkeys(b for op,b in x["events"]) if [op for op,c in x["events"] if c==b][-1]=="withdraw"]
    return {'resale-shortfall':v0,'excused-fee-waiver':v1,'award-liability-gate':v2,'notice-penalty':v3,'deposit-offset':v4,'paid-liability-credit':v5,'released-bond-exclusion':v6,'unreturned-award-units':v7,'withdrawal-unit-cap':v8,'reinstatement-after-withdrawal':v9}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('normal contract', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [13, 26, 39, 52, 65]), ('notice order retained', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [13, 26, 39, 52, 65]), ('resale surplus', {'bid': 30, 'resale': 40, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [1, 2, 3, 4, 5]), ('liability already paid', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 40, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('excused default', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': True, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [13, 26, 39, 52, 65]), ('before award', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': False, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [13, 26, 39, 52, 65]), ('timely notice', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 3, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [13, 26, 39, 52, 65]), ('exact notice cutoff', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 4, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [13, 26, 39, 52, 65]), ('bond released', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': True, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [13, 26, 39, 52, 65])]
def vary(value):
 if type(value) is int: return value*N
 if isinstance(value,list): return [vary(v) for v in value]
 if isinstance(value,dict): return {k:(v if k in ['count', 'delivery_index', 'disputed', 'maximum_set', 'minimum_set', 'stage', 'threshold', 'waived'] else vary(v)) for k,v in value.items()}
 return value
for label, request, expected in fixtures:
 check(label, solve(vary(request))['paid-liability-credit'], expected[N-1])
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)

source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(x):
    v0 = max(0,x["bid"]-x["resale"])
    v1 = 0 if x["excused"] else x["fee"]
    v2 = max(0,x["bid"]-x["resale"]) if x["awarded"] else 0
    v3 = 0 if x["notice"]<=x["cutoff"] else x["deposit"]
    v4 = max(0,x["bid"]-x["resale"]-x["deposit"])
    v5 = min(x["cap"],max(0,x["bid"]-x["resale"]-x["already_paid"])+x["fee"])
    v6 = x["bond"] if x["forfeit"] and not x["released"] else 0
    v7 = max(0,x["awarded_units"]-x["returned_units"])
    v8 = min(x["withdrawn_units"],max(0,x["awarded_units"]-x["returned_units"]))
    v9 = [b for b in dict.fromkeys(b for op,b in x["events"]) if [op for op,c in x["events"] if c==b][-1]=="withdraw"]
    return {'resale-shortfall':v0,'excused-fee-waiver':v1,'award-liability-gate':v2,'notice-penalty':v3,'deposit-offset':v4,'paid-liability-credit':v5,'released-bond-exclusion':v6,'unreturned-award-units':v7,'withdrawal-unit-cap':v8,'reinstatement-after-withdrawal':v9}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('normal contract', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [13, 26, 39, 52, 65]), ('notice order retained', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [13, 26, 39, 52, 65]), ('resale surplus', {'bid': 30, 'resale': 40, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [1, 2, 3, 4, 5]), ('liability already paid', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 40, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('excused default', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': True, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [13, 26, 39, 52, 65]), ('before award', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': False, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [13, 26, 39, 52, 65]), ('timely notice', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 3, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [13, 26, 39, 52, 65]), ('exact notice cutoff', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 4, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [13, 26, 39, 52, 65]), ('bond released', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': True, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [13, 26, 39, 52, 65])]
def vary(value):
 if type(value) is int: return value*N
 if isinstance(value,list): return [vary(v) for v in value]
 if isinstance(value,dict): return {k:(v if k in ['count', 'delivery_index', 'disputed', 'maximum_set', 'minimum_set', 'stage', 'threshold', 'waived'] else vary(v)) for k,v in value.items()}
 return value
for label, request, expected in fixtures:
 check(label, solve(vary(request))['paid-liability-credit'], expected[N-1])
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)

prompt:
Collected liability is credited on the wrong side of the liability cap.

A toy auction withdrawal policy distinguishes voluntary withdrawal before award, excused withdrawal, replacement proceeds, paid deposits and caps on liquidated liability. Nonnegative integer credits are used; no legal or financial interpretation is intended. Named decision paid-liability-credit: For paid liability credit, apply the stipulated decision max(0,min(x["cap"],max(0,x["bid"]-x["resale"])+x["fee"])-x["already_paid"]).

split: open-access


broken_source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(x):
    v0 = max(0,x["bid"]-x["resale"])
    v1 = 0 if x["excused"] else x["fee"]
    v2 = max(0,x["bid"]-x["resale"]) if x["awarded"] else 0
    v3 = 0 if x["notice"]<=x["cutoff"] else x["deposit"]
    v4 = max(0,x["bid"]-x["resale"]-x["deposit"])
    v5 = max(0,min(x["cap"],max(0,x["bid"]-x["resale"])+x["fee"])-x["already_paid"])
    v6 = x["bond"] if x["forfeit"] else 0
    v7 = max(0,x["awarded_units"]-x["returned_units"])
    v8 = min(x["withdrawn_units"],max(0,x["awarded_units"]-x["returned_units"]))
    v9 = [b for b in dict.fromkeys(b for op,b in x["events"]) if [op for op,c in x["events"] if c==b][-1]=="withdraw"]
    return {'resale-shortfall':v0,'excused-fee-waiver':v1,'award-liability-gate':v2,'notice-penalty':v3,'deposit-offset':v4,'paid-liability-credit':v5,'released-bond-exclusion':v6,'unreturned-award-units':v7,'withdrawal-unit-cap':v8,'reinstatement-after-withdrawal':v9}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('bond released', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': True, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('notice order retained / bond released', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': True, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('no forfeit', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': False, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('notice order retained / no forfeit', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': False, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('normal contract', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [6, 12, 18, 24, 30]), ('notice order retained', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [6, 12, 18, 24, 30]), ('resale surplus', {'bid': 30, 'resale': 40, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [6, 12, 18, 24, 30]), ('excused default', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': True, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [6, 12, 18, 24, 30]), ('before award', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': False, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [6, 12, 18, 24, 30]), ('timely notice', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 3, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [6, 12, 18, 24, 30]), ('exact notice cutoff', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 4, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [6, 12, 18, 24, 30]), ('liability already paid', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 40, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [6, 12, 18, 24, 30])]
def vary(value):
 if type(value) is int: return value*N
 if isinstance(value,list): return [vary(v) for v in value]
 if isinstance(value,dict): return {k:(v if k in ['count', 'delivery_index', 'disputed', 'maximum_set', 'minimum_set', 'stage', 'threshold', 'waived'] else vary(v)) for k,v in value.items()}
 return value
for label, request, expected in fixtures:
 check(label, solve(vary(request))['released-bond-exclusion'], expected[N-1])
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)

source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(x):
    v0 = max(0,x["bid"]-x["resale"])
    v1 = 0 if x["excused"] else x["fee"]
    v2 = max(0,x["bid"]-x["resale"]) if x["awarded"] else 0
    v3 = 0 if x["notice"]<=x["cutoff"] else x["deposit"]
    v4 = max(0,x["bid"]-x["resale"]-x["deposit"])
    v5 = max(0,min(x["cap"],max(0,x["bid"]-x["resale"])+x["fee"])-x["already_paid"])
    v6 = x["bond"] if not x["released"] else 0
    v7 = max(0,x["awarded_units"]-x["returned_units"])
    v8 = min(x["withdrawn_units"],max(0,x["awarded_units"]-x["returned_units"]))
    v9 = [b for b in dict.fromkeys(b for op,b in x["events"]) if [op for op,c in x["events"] if c==b][-1]=="withdraw"]
    return {'resale-shortfall':v0,'excused-fee-waiver':v1,'award-liability-gate':v2,'notice-penalty':v3,'deposit-offset':v4,'paid-liability-credit':v5,'released-bond-exclusion':v6,'unreturned-award-units':v7,'withdrawal-unit-cap':v8,'reinstatement-after-withdrawal':v9}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('bond released', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': True, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('notice order retained / bond released', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': True, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('no forfeit', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': False, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('notice order retained / no forfeit', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': False, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('normal contract', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [6, 12, 18, 24, 30]), ('notice order retained', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [6, 12, 18, 24, 30]), ('resale surplus', {'bid': 30, 'resale': 40, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [6, 12, 18, 24, 30]), ('excused default', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': True, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [6, 12, 18, 24, 30]), ('before award', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': False, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [6, 12, 18, 24, 30]), ('timely notice', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 3, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [6, 12, 18, 24, 30]), ('exact notice cutoff', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 4, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [6, 12, 18, 24, 30]), ('liability already paid', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 40, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [6, 12, 18, 24, 30])]
def vary(value):
 if type(value) is int: return value*N
 if isinstance(value,list): return [vary(v) for v in value]
 if isinstance(value,dict): return {k:(v if k in ['count', 'delivery_index', 'disputed', 'maximum_set', 'minimum_set', 'stage', 'threshold', 'waived'] else vary(v)) for k,v in value.items()}
 return value
for label, request, expected in fixtures:
 check(label, solve(vary(request))['released-bond-exclusion'], expected[N-1])
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)

prompt:
Withdrawal consumes a bond already released or not subject to forfeiture.

A toy auction withdrawal policy distinguishes voluntary withdrawal before award, excused withdrawal, replacement proceeds, paid deposits and caps on liquidated liability. Nonnegative integer credits are used; no legal or financial interpretation is intended. Named decision released-bond-exclusion: For released bond exclusion, apply the stipulated decision x["bond"] if x["forfeit"] and not x["released"] else 0.

split: open-access


broken_source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(x):
    v0 = max(0,x["bid"]-x["resale"])
    v1 = 0 if x["excused"] else x["fee"]
    v2 = max(0,x["bid"]-x["resale"]) if x["awarded"] else 0
    v3 = 0 if x["notice"]<=x["cutoff"] else x["deposit"]
    v4 = max(0,x["bid"]-x["resale"]-x["deposit"])
    v5 = max(0,min(x["cap"],max(0,x["bid"]-x["resale"])+x["fee"])-x["already_paid"])
    v6 = x["bond"] if x["forfeit"] and not x["released"] else 0
    v7 = x["awarded_units"]
    v8 = min(x["withdrawn_units"],max(0,x["awarded_units"]-x["returned_units"]))
    v9 = [b for b in dict.fromkeys(b for op,b in x["events"]) if [op for op,c in x["events"] if c==b][-1]=="withdraw"]
    return {'resale-shortfall':v0,'excused-fee-waiver':v1,'award-liability-gate':v2,'notice-penalty':v3,'deposit-offset':v4,'paid-liability-credit':v5,'released-bond-exclusion':v6,'unreturned-award-units':v7,'withdrawal-unit-cap':v8,'reinstatement-after-withdrawal':v9}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('normal contract', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('notice order retained', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('resale surplus', {'bid': 30, 'resale': 40, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('excused default', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': True, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('before award', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': False, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('timely notice', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 3, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('exact notice cutoff', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 4, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('liability already paid', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 40, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('bond released', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': True, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20])]
def vary(value):
 if type(value) is int: return value*N
 if isinstance(value,list): return [vary(v) for v in value]
 if isinstance(value,dict): return {k:(v if k in ['count', 'delivery_index', 'disputed', 'maximum_set', 'minimum_set', 'stage', 'threshold', 'waived'] else vary(v)) for k,v in value.items()}
 return value
for label, request, expected in fixtures:
 check(label, solve(vary(request))['unreturned-award-units'], expected[N-1])
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)

source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(x):
    v0 = max(0,x["bid"]-x["resale"])
    v1 = 0 if x["excused"] else x["fee"]
    v2 = max(0,x["bid"]-x["resale"]) if x["awarded"] else 0
    v3 = 0 if x["notice"]<=x["cutoff"] else x["deposit"]
    v4 = max(0,x["bid"]-x["resale"]-x["deposit"])
    v5 = max(0,min(x["cap"],max(0,x["bid"]-x["resale"])+x["fee"])-x["already_paid"])
    v6 = x["bond"] if x["forfeit"] and not x["released"] else 0
    v7 = max(0,x["withdrawn_units"]-x["returned_units"])
    v8 = min(x["withdrawn_units"],max(0,x["awarded_units"]-x["returned_units"]))
    v9 = [b for b in dict.fromkeys(b for op,b in x["events"]) if [op for op,c in x["events"] if c==b][-1]=="withdraw"]
    return {'resale-shortfall':v0,'excused-fee-waiver':v1,'award-liability-gate':v2,'notice-penalty':v3,'deposit-offset':v4,'paid-liability-credit':v5,'released-bond-exclusion':v6,'unreturned-award-units':v7,'withdrawal-unit-cap':v8,'reinstatement-after-withdrawal':v9}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('normal contract', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('notice order retained', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('resale surplus', {'bid': 30, 'resale': 40, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('excused default', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': True, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('before award', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': False, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('timely notice', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 3, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('exact notice cutoff', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 4, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('liability already paid', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 40, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20]), ('bond released', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': True, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [4, 8, 12, 16, 20])]
def vary(value):
 if type(value) is int: return value*N
 if isinstance(value,list): return [vary(v) for v in value]
 if isinstance(value,dict): return {k:(v if k in ['count', 'delivery_index', 'disputed', 'maximum_set', 'minimum_set', 'stage', 'threshold', 'waived'] else vary(v)) for k,v in value.items()}
 return value
for label, request, expected in fixtures:
 check(label, solve(vary(request))['unreturned-award-units'], expected[N-1])
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)

prompt:
Return accounting subtracts from withdrawn quantity rather than the outstanding award.

A toy auction withdrawal policy distinguishes voluntary withdrawal before award, excused withdrawal, replacement proceeds, paid deposits and caps on liquidated liability. Nonnegative integer credits are used; no legal or financial interpretation is intended. Named decision unreturned-award-units: For unreturned award units, apply the stipulated decision max(0,x["awarded_units"]-x["returned_units"]).

split: open-access


broken_source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(x):
    v0 = max(0,x["bid"]-x["resale"])
    v1 = 0 if x["excused"] else x["fee"]
    v2 = max(0,x["bid"]-x["resale"]) if x["awarded"] else 0
    v3 = 0 if x["notice"]<=x["cutoff"] else x["deposit"]
    v4 = max(0,x["bid"]-x["resale"]-x["deposit"])
    v5 = max(0,min(x["cap"],max(0,x["bid"]-x["resale"])+x["fee"])-x["already_paid"])
    v6 = x["bond"] if x["forfeit"] and not x["released"] else 0
    v7 = max(0,x["awarded_units"]-x["returned_units"])
    v8 = x["withdrawn_units"]
    v9 = [b for b in dict.fromkeys(b for op,b in x["events"]) if [op for op,c in x["events"] if c==b][-1]=="withdraw"]
    return {'resale-shortfall':v0,'excused-fee-waiver':v1,'award-liability-gate':v2,'notice-penalty':v3,'deposit-offset':v4,'paid-liability-credit':v5,'released-bond-exclusion':v6,'unreturned-award-units':v7,'withdrawal-unit-cap':v8,'reinstatement-after-withdrawal':v9}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('all units returned', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 5, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('notice order retained / all units returned', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 5, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('normal contract', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10]), ('notice order retained', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10]), ('resale surplus', {'bid': 30, 'resale': 40, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10]), ('excused default', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': True, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10]), ('before award', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': False, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10]), ('timely notice', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 3, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10]), ('exact notice cutoff', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 4, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10]), ('liability already paid', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 40, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10]), ('bond released', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': True, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10])]
def vary(value):
 if type(value) is int: return value*N
 if isinstance(value,list): return [vary(v) for v in value]
 if isinstance(value,dict): return {k:(v if k in ['count', 'delivery_index', 'disputed', 'maximum_set', 'minimum_set', 'stage', 'threshold', 'waived'] else vary(v)) for k,v in value.items()}
 return value
for label, request, expected in fixtures:
 check(label, solve(vary(request))['withdrawal-unit-cap'], expected[N-1])
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)

source:
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(x):
    v0 = max(0,x["bid"]-x["resale"])
    v1 = 0 if x["excused"] else x["fee"]
    v2 = max(0,x["bid"]-x["resale"]) if x["awarded"] else 0
    v3 = 0 if x["notice"]<=x["cutoff"] else x["deposit"]
    v4 = max(0,x["bid"]-x["resale"]-x["deposit"])
    v5 = max(0,min(x["cap"],max(0,x["bid"]-x["resale"])+x["fee"])-x["already_paid"])
    v6 = x["bond"] if x["forfeit"] and not x["released"] else 0
    v7 = max(0,x["awarded_units"]-x["returned_units"])
    v8 = min(x["withdrawn_units"],x["awarded_units"])
    v9 = [b for b in dict.fromkeys(b for op,b in x["events"]) if [op for op,c in x["events"] if c==b][-1]=="withdraw"]
    return {'resale-shortfall':v0,'excused-fee-waiver':v1,'award-liability-gate':v2,'notice-penalty':v3,'deposit-offset':v4,'paid-liability-credit':v5,'released-bond-exclusion':v6,'unreturned-award-units':v7,'withdrawal-unit-cap':v8,'reinstatement-after-withdrawal':v9}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [('all units returned', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 5, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('notice order retained / all units returned', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 5, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [0, 0, 0, 0, 0]), ('normal contract', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10]), ('notice order retained', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['b', 'a', 'b'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10]), ('resale surplus', {'bid': 30, 'resale': 40, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10]), ('excused default', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': True, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10]), ('before award', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': False, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10]), ('timely notice', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 3, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10]), ('exact notice cutoff', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 4, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10]), ('liability already paid', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 40, 'cap': 20, 'released': False, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10]), ('bond released', {'bid': 30, 'resale': 18, 'deposit': 8, 'fee': 3, 'excused': False, 'awarded': True, 'notice': 5, 'cutoff': 4, 'already_paid': 2, 'cap': 20, 'released': True, 'withdrawn_units': 2, 'awarded_units': 5, 'returned_units': 1, 'bond': 6, 'forfeit': True, 'withdrawals': ['a', 'b', 'a'], 'events': [['withdraw', 'a'], ['reinstate', 'a'], ['withdraw', 'b']]}, [2, 4, 6, 8, 10])]
def vary(value):
 if type(value) is int: return value*N
 if isinstance(value,list): return [vary(v) for v in value]
 if isinstance(value,dict): return {k:(v if k in ['count', 'delivery_index', 'disputed', 'maximum_set', 'minimum_set', 'stage', 'threshold', 'waived'] else vary(v)) for k,v in value.items()}
 return value
for label, request, expected in fixtures:
 check(label, solve(vary(request))['withdrawal-unit-cap'], expected[N-1])
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)

prompt:
Withdrawals include award units already physically returned.

A toy auction withdrawal policy distinguishes voluntary withdrawal before award, excused withdrawal, replacement proceeds, paid deposits and caps on liquidated liability. Nonnegative integer credits are used; no legal or financial interpretation is intended. Named decision withdrawal-unit-cap: For withdrawal unit cap, apply the stipulated decision min(x["withdrawn_units"],max(0,x["awarded_units"]-x["returned_units"])).

split: open-access