FA-85261 / Fantasy sports scoring / Open access
One bench player substitutes for two starters · case 01
The same bench midfielder appears twice in the final XI.
ROOT CAUSE
Outfield substitutes are not marked as used.
VERIFIED REPAIR
Record each bench player as used after substitution.
Unsuccessful approach: Marking the replaced starter as used does not block the bench player.
Case contract
Starters who played 0 minutes are replaced in starter order. A goalkeeper can only be replaced by the bench goalkeeper (bench[0]) and only if he played. An outfield starter is replaced by the first outfield bench player in bench order who played and is not already used, provided the XI with the candidate in place keeps at least 3 DEF, 2 MID and 1 FWD. Return the final XI in starter-slot order.
Why this case matters
Automatic substitutions decide which bench points count; order, goalkeeper and formation rules are frequently misapplied.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(starters, bench, minutes, pos):
xi = list(starters)
used = set()
def valid(team):
c = {'DEF': 0, 'MID': 0, 'FWD': 0}
for n in team:
if pos[n] in c:
c[pos[n]] += 1
return c['DEF'] >= 3 and c['MID'] >= 2 and c['FWD'] >= 1
for i, s in enumerate(starters):
if minutes[s] > 0:
continue
if pos[s] == 'GK':
g = bench[0]
if minutes[g] > 0:
xi[i] = g
used.add(g)
continue
for b in bench[1:]:
if b in used or minutes[b] == 0:
continue
trial = xi[:i] + [b] + xi[i + 1:]
if valid(trial):
xi[i] = b
break
return xi
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 30,
'b2': 90,
'def0': 1,
'def1': 1,
'def2': 1,
'def3': 1,
'def4': 1,
'fwd0': 90,
'fwd1': 0,
'gk1': 1,
'gk2': 90,
'mid0': 30,
'mid1': 0,
'mid2': 90},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'b1', 'mid2', 'fwd0', 'b2']),
('partial repair probe: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 90,
'b2': 90,
'def0': 30,
'def1': 0,
'def2': 1,
'def3': 90,
'fwd0': 30,
'gk1': 30,
'gk2': 90,
'mid0': 30,
'mid1': 0,
'mid2': 1,
'mid3': 30,
'mid4': 0},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'b1', 'def2', 'def3', 'mid0', 'b2', 'mid2', 'mid3', 'mid4', 'fwd0']),
('second regression',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 0,
'b2': 90,
'def0': 1,
'def1': 90,
'def2': 0,
'fwd0': 30,
'fwd1': 90,
'fwd2': 30,
'gk1': 0,
'gk2': 1,
'mid0': 0,
'mid1': 0,
'mid2': 30,
'mid3': 90},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'b0', 'b2', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 1',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 0,
'b2': 1,
'def0': 0,
'def1': 30,
'def2': 0,
'fwd0': 30,
'fwd1': 90,
'fwd2': 30,
'gk1': 0,
'gk2': 1,
'mid0': 0,
'mid1': 1,
'mid2': 90,
'mid3': 30},
{'b0': 'FWD',
'b1': 'DEF',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'b0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 2',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 0,
'b2': 30,
'def0': 90,
'def1': 90,
'def2': 90,
'def3': 30,
'fwd0': 30,
'gk1': 0,
'gk2': 1,
'mid0': 30,
'mid1': 30,
'mid2': 1,
'mid3': 30,
'mid4': 0},
{'b0': 'MID',
'b1': 'MID',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0']),
('normal control 3',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 0,
'b2': 0,
'def0': 30,
'def1': 1,
'def2': 30,
'def3': 90,
'fwd0': 90,
'gk1': 0,
'gk2': 30,
'mid0': 0,
'mid1': 1,
'mid2': 1,
'mid3': 0,
'mid4': 0},
{'b0': 'FWD',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0']),
('normal control 4',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 1,
'b2': 1,
'def0': 30,
'def1': 30,
'def2': 90,
'def3': 90,
'fwd0': 90,
'gk1': 30,
'gk2': 30,
'mid0': 90,
'mid1': 1,
'mid2': 90,
'mid3': 30,
'mid4': 0},
{'b0': 'FWD',
'b1': 'MID',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0'])],
[('regression: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 90,
'b2': 30,
'def0': 0,
'def1': 0,
'def2': 0,
'def3': 30,
'def4': 90,
'fwd0': 1,
'fwd1': 0,
'gk1': 30,
'gk2': 90,
'mid0': 90,
'mid1': 1,
'mid2': 0},
{'b0': 'MID',
'b1': 'MID',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'b0', 'b1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'b2', 'fwd0', 'fwd1']),
('partial repair probe: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 0,
'b2': 30,
'def0': 0,
'def1': 90,
'def2': 30,
'def3': 0,
'def4': 0,
'fwd0': 1,
'fwd1': 1,
'gk1': 30,
'gk2': 30,
'mid0': 0,
'mid1': 30,
'mid2': 0},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'b0', 'def1', 'def2', 'b2', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1']),
('second regression',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 1,
'b2': 90,
'def0': 0,
'def1': 0,
'def2': 30,
'fwd0': 1,
'fwd1': 1,
'fwd2': 90,
'gk1': 0,
'gk2': 1,
'mid0': 1,
'mid1': 1,
'mid2': 30,
'mid3': 30},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk2', 'b2', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 1',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 1,
'b2': 0,
'def0': 30,
'def1': 30,
'def2': 30,
'def3': 90,
'fwd0': 1,
'fwd1': 90,
'gk1': 30,
'gk2': 0,
'mid0': 0,
'mid1': 90,
'mid2': 90,
'mid3': 30},
{'b0': 'MID',
'b1': 'MID',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'b0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1']),
('normal control 2',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 90,
'b2': 1,
'def0': 90,
'def1': 90,
'def2': 0,
'def3': 90,
'fwd0': 1,
'fwd1': 1,
'gk1': 90,
'gk2': 1,
'mid0': 90,
'mid1': 30,
'mid2': 90,
'mid3': 90},
{'b0': 'DEF',
'b1': 'DEF',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'b0', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1']),
('normal control 3',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 30,
'b2': 30,
'def0': 0,
'def1': 0,
'def2': 30,
'fwd0': 1,
'fwd1': 30,
'gk1': 0,
'gk2': 0,
'mid0': 0,
'mid1': 30,
'mid2': 90,
'mid3': 1,
'mid4': 30},
{'b0': 'MID',
'b1': 'MID',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'b0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1']),
('normal control 4',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 1,
'b2': 30,
'def0': 90,
'def1': 1,
'def2': 1,
'def3': 30,
'def4': 30,
'fwd0': 1,
'fwd1': 1,
'gk1': 30,
'gk2': 0,
'mid0': 90,
'mid1': 30,
'mid2': 1},
{'b0': 'MID',
'b1': 'MID',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'])],
[('regression: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 1,
'b2': 30,
'def0': 1,
'def1': 0,
'def2': 90,
'def3': 1,
'fwd0': 1,
'fwd1': 0,
'gk1': 1,
'gk2': 90,
'mid0': 30,
'mid1': 1,
'mid2': 0,
'mid3': 30},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'b0', 'def2', 'def3', 'mid0', 'mid1', 'b1', 'mid3', 'fwd0', 'b2']),
('partial repair probe: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 90,
'b2': 1,
'def0': 1,
'def1': 90,
'def2': 30,
'fwd0': 1,
'fwd1': 0,
'gk1': 0,
'gk2': 90,
'mid0': 0,
'mid1': 30,
'mid2': 30,
'mid3': 90,
'mid4': 90},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'b1', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'b2']),
('second regression',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 0,
'b2': 30,
'def0': 90,
'def1': 1,
'def2': 30,
'def3': 1,
'fwd0': 1,
'fwd1': 90,
'gk1': 1,
'gk2': 30,
'mid0': 90,
'mid1': 1,
'mid2': 0,
'mid3': 0},
{'b0': 'FWD',
'b1': 'DEF',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'b0', 'b2', 'fwd0', 'fwd1']),
('normal control 1',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 0,
'b2': 0,
'def0': 1,
'def1': 30,
'def2': 90,
'fwd0': 1,
'fwd1': 30,
'gk1': 90,
'gk2': 1,
'mid0': 30,
'mid1': 30,
'mid2': 30,
'mid3': 1,
'mid4': 30},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1']),
('normal control 2',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 30,
'b2': 0,
'def0': 30,
'def1': 90,
'def2': 90,
'fwd0': 1,
'fwd1': 1,
'fwd2': 90,
'gk1': 90,
'gk2': 30,
'mid0': 1,
'mid1': 0,
'mid2': 1,
'mid3': 90},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'b0', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 3',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 0,
'b2': 1,
'def0': 1,
'def1': 1,
'def2': 0,
'fwd0': 1,
'fwd1': 0,
'fwd2': 90,
'gk1': 90,
'gk2': 0,
'mid0': 30,
'mid1': 1,
'mid2': 1,
'mid3': 30},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'b2', 'fwd2']),
('normal control 4',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 90,
'b2': 90,
'def0': 90,
'def1': 1,
'def2': 30,
'fwd0': 90,
'fwd1': 1,
'fwd2': 30,
'gk1': 30,
'gk2': 1,
'mid0': 1,
'mid1': 90,
'mid2': 30,
'mid3': 1},
{'b0': 'FWD',
'b1': 'DEF',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'])],
[('regression: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 1,
'b2': 30,
'def0': 30,
'def1': 0,
'def2': 90,
'def3': 30,
'fwd0': 1,
'gk1': 30,
'gk2': 90,
'mid0': 30,
'mid1': 0,
'mid2': 1,
'mid3': 0,
'mid4': 1},
{'b0': 'DEF',
'b1': 'MID',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'b1', 'def2', 'def3', 'mid0', 'b2', 'mid2', 'mid3', 'mid4', 'fwd0']),
('partial repair probe: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 90,
'b2': 1,
'def0': 30,
'def1': 1,
'def2': 1,
'def3': 0,
'def4': 0,
'fwd0': 90,
'fwd1': 90,
'gk1': 1,
'gk2': 30,
'mid0': 1,
'mid1': 0,
'mid2': 0},
{'b0': 'DEF',
'b1': 'MID',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'b0', 'b1', 'mid0', 'b2', 'mid2', 'fwd0', 'fwd1']),
('second regression',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 30,
'b2': 0,
'def0': 90,
'def1': 30,
'def2': 0,
'fwd0': 90,
'fwd1': 90,
'gk1': 0,
'gk2': 90,
'mid0': 1,
'mid1': 90,
'mid2': 0,
'mid3': 0,
'mid4': 1},
{'b0': 'MID',
'b1': 'DEF',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk2', 'def0', 'def1', 'b1', 'mid0', 'mid1', 'b0', 'mid3', 'mid4', 'fwd0', 'fwd1']),
('normal control 1',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 0,
'b2': 30,
'def0': 90,
'def1': 30,
'def2': 90,
'fwd0': 1,
'fwd1': 90,
'fwd2': 30,
'gk1': 90,
'gk2': 90,
'mid0': 90,
'mid1': 90,
'mid2': 1,
'mid3': 30},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 2',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 0,
'b2': 90,
'def0': 1,
'def1': 1,
'def2': 30,
'def3': 30,
'def4': 0,
'fwd0': 1,
'fwd1': 30,
'gk1': 90,
'gk2': 1,
'mid0': 30,
'mid1': 1,
'mid2': 1},
{'b0': 'DEF',
'b1': 'DEF',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'b0', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1']),
('normal control 3',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 1,
'b2': 90,
'def0': 0,
'def1': 90,
'def2': 90,
'def3': 90,
'fwd0': 30,
'fwd1': 30,
'gk1': 90,
'gk2': 0,
'mid0': 1,
'mid1': 90,
'mid2': 30,
'mid3': 1},
{'b0': 'DEF',
'b1': 'MID',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'b0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1']),
('normal control 4',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 90,
'b2': 30,
'def0': 1,
'def1': 30,
'def2': 1,
'def3': 1,
'fwd0': 1,
'fwd1': 30,
'gk1': 0,
'gk2': 1,
'mid0': 90,
'mid1': 30,
'mid2': 0,
'mid3': 30},
{'b0': 'FWD',
'b1': 'DEF',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'b1', 'mid3', 'fwd0', 'fwd1'])],
[('regression: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 1,
'b2': 1,
'def0': 30,
'def1': 90,
'def2': 0,
'fwd0': 1,
'fwd1': 30,
'fwd2': 1,
'gk1': 1,
'gk2': 90,
'mid0': 30,
'mid1': 0,
'mid2': 90,
'mid3': 1},
{'b0': 'DEF',
'b1': 'DEF',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'b0', 'mid0', 'b1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('partial repair probe: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 1,
'b2': 30,
'def0': 90,
'def1': 0,
'def2': 90,
'def3': 90,
'def4': 1,
'fwd0': 0,
'fwd1': 90,
'gk1': 1,
'gk2': 90,
'mid0': 90,
'mid1': 90,
'mid2': 1},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'def0', 'b0', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'b1', 'fwd1']),
('second regression',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 1,
'b2': 0,
'def0': 90,
'def1': 90,
'def2': 90,
'fwd0': 0,
'fwd1': 1,
'fwd2': 0,
'gk1': 1,
'gk2': 1,
'mid0': 1,
'mid1': 1,
'mid2': 1,
'mid3': 1},
{'b0': 'MID',
'b1': 'MID',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'b1', 'fwd1', 'fwd2']),
('normal control 1',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 0,
'b2': 1,
'def0': 0,
'def1': 30,
'def2': 30,
'def3': 1,
'fwd0': 30,
'gk1': 1,
'gk2': 90,
'mid0': 90,
'mid1': 30,
'mid2': 90,
'mid3': 1,
'mid4': 90},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'b0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0']),
('normal control 2',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 90,
'b2': 1,
'def0': 0,
'def1': 90,
'def2': 1,
'fwd0': 30,
'fwd1': 90,
'fwd2': 90,
'gk1': 1,
'gk2': 1,
'mid0': 30,
'mid1': 1,
'mid2': 1,
'mid3': 30},
{'b0': 'FWD',
'b1': 'FWD',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 3',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 0,
'b2': 1,
'def0': 30,
'def1': 0,
'def2': 1,
'def3': 30,
'fwd0': 90,
'gk1': 90,
'gk2': 90,
'mid0': 30,
'mid1': 30,
'mid2': 30,
'mid3': 1,
'mid4': 30},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'b0', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0']),
('normal control 4',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 0,
'b2': 1,
'def0': 90,
'def1': 1,
'def2': 30,
'fwd0': 90,
'fwd1': 0,
'gk1': 1,
'gk2': 1,
'mid0': 30,
'mid1': 90,
'mid2': 90,
'mid3': 1,
'mid4': 90},
{'b0': 'DEF',
'b1': 'MID',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'b0'])]]
for label, args, expected in fixtures[N-1]:
check(label, 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: used bench tracking | ['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'b1', 'mid2', 'fwd0', 'b1'] | ['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'b1', 'mid2', 'fwd0', 'b2'] | Failed |
| partial repair probe: used bench tracking | ['gk1', 'def0', 'b1', 'def2', 'def3', 'mid0', 'b1', 'mid2', 'mid3', 'b1', 'fwd0'] | ['gk1', 'def0', 'b1', 'def2', 'def3', 'mid0', 'b2', 'mid2', 'mid3', 'mid4', 'fwd0'] | Failed |
| second regression | ['gk2', 'def0', 'def1', 'def2', 'b0', 'b0', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'] | ['gk2', 'def0', 'def1', 'def2', 'b0', 'b2', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'] | Failed |
| normal control 1 | ['gk2', 'def0', 'def1', 'def2', 'b0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'] | ['gk2', 'def0', 'def1', 'def2', 'b0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'] | Passed |
| normal control 2 | ['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0'] | ['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0'] | Passed |
| normal control 3 | ['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'] | ['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'] | Passed |
| normal control 4 | ['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0'] | ['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0'] | Passed |
SHA-256 / cf72f6b69cc96090b91b93a108c19df8c82f4a9e4f9192a50de2dbbec900ff64
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(starters, bench, minutes, pos):
xi = list(starters)
used = set()
def valid(team):
c = {'DEF': 0, 'MID': 0, 'FWD': 0}
for n in team:
if pos[n] in c:
c[pos[n]] += 1
return c['DEF'] >= 3 and c['MID'] >= 2 and c['FWD'] >= 1
for i, s in enumerate(starters):
if minutes[s] > 0:
continue
if pos[s] == 'GK':
g = bench[0]
if minutes[g] > 0:
xi[i] = g
used.add(g)
continue
for b in bench[1:]:
if b in used or minutes[b] == 0:
continue
trial = xi[:i] + [b] + xi[i + 1:]
if valid(trial):
xi[i] = b
used.add(s)
break
return xi
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 30,
'b2': 90,
'def0': 1,
'def1': 1,
'def2': 1,
'def3': 1,
'def4': 1,
'fwd0': 90,
'fwd1': 0,
'gk1': 1,
'gk2': 90,
'mid0': 30,
'mid1': 0,
'mid2': 90},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'b1', 'mid2', 'fwd0', 'b2']),
('partial repair probe: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 90,
'b2': 90,
'def0': 30,
'def1': 0,
'def2': 1,
'def3': 90,
'fwd0': 30,
'gk1': 30,
'gk2': 90,
'mid0': 30,
'mid1': 0,
'mid2': 1,
'mid3': 30,
'mid4': 0},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'b1', 'def2', 'def3', 'mid0', 'b2', 'mid2', 'mid3', 'mid4', 'fwd0']),
('second regression',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 0,
'b2': 90,
'def0': 1,
'def1': 90,
'def2': 0,
'fwd0': 30,
'fwd1': 90,
'fwd2': 30,
'gk1': 0,
'gk2': 1,
'mid0': 0,
'mid1': 0,
'mid2': 30,
'mid3': 90},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'b0', 'b2', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 1',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 0,
'b2': 1,
'def0': 0,
'def1': 30,
'def2': 0,
'fwd0': 30,
'fwd1': 90,
'fwd2': 30,
'gk1': 0,
'gk2': 1,
'mid0': 0,
'mid1': 1,
'mid2': 90,
'mid3': 30},
{'b0': 'FWD',
'b1': 'DEF',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'b0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 2',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 0,
'b2': 30,
'def0': 90,
'def1': 90,
'def2': 90,
'def3': 30,
'fwd0': 30,
'gk1': 0,
'gk2': 1,
'mid0': 30,
'mid1': 30,
'mid2': 1,
'mid3': 30,
'mid4': 0},
{'b0': 'MID',
'b1': 'MID',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0']),
('normal control 3',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 0,
'b2': 0,
'def0': 30,
'def1': 1,
'def2': 30,
'def3': 90,
'fwd0': 90,
'gk1': 0,
'gk2': 30,
'mid0': 0,
'mid1': 1,
'mid2': 1,
'mid3': 0,
'mid4': 0},
{'b0': 'FWD',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0']),
('normal control 4',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 1,
'b2': 1,
'def0': 30,
'def1': 30,
'def2': 90,
'def3': 90,
'fwd0': 90,
'gk1': 30,
'gk2': 30,
'mid0': 90,
'mid1': 1,
'mid2': 90,
'mid3': 30,
'mid4': 0},
{'b0': 'FWD',
'b1': 'MID',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0'])],
[('regression: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 90,
'b2': 30,
'def0': 0,
'def1': 0,
'def2': 0,
'def3': 30,
'def4': 90,
'fwd0': 1,
'fwd1': 0,
'gk1': 30,
'gk2': 90,
'mid0': 90,
'mid1': 1,
'mid2': 0},
{'b0': 'MID',
'b1': 'MID',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'b0', 'b1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'b2', 'fwd0', 'fwd1']),
('partial repair probe: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 0,
'b2': 30,
'def0': 0,
'def1': 90,
'def2': 30,
'def3': 0,
'def4': 0,
'fwd0': 1,
'fwd1': 1,
'gk1': 30,
'gk2': 30,
'mid0': 0,
'mid1': 30,
'mid2': 0},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'b0', 'def1', 'def2', 'b2', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1']),
('second regression',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 1,
'b2': 90,
'def0': 0,
'def1': 0,
'def2': 30,
'fwd0': 1,
'fwd1': 1,
'fwd2': 90,
'gk1': 0,
'gk2': 1,
'mid0': 1,
'mid1': 1,
'mid2': 30,
'mid3': 30},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk2', 'b2', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 1',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 1,
'b2': 0,
'def0': 30,
'def1': 30,
'def2': 30,
'def3': 90,
'fwd0': 1,
'fwd1': 90,
'gk1': 30,
'gk2': 0,
'mid0': 0,
'mid1': 90,
'mid2': 90,
'mid3': 30},
{'b0': 'MID',
'b1': 'MID',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'b0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1']),
('normal control 2',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 90,
'b2': 1,
'def0': 90,
'def1': 90,
'def2': 0,
'def3': 90,
'fwd0': 1,
'fwd1': 1,
'gk1': 90,
'gk2': 1,
'mid0': 90,
'mid1': 30,
'mid2': 90,
'mid3': 90},
{'b0': 'DEF',
'b1': 'DEF',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'b0', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1']),
('normal control 3',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 30,
'b2': 30,
'def0': 0,
'def1': 0,
'def2': 30,
'fwd0': 1,
'fwd1': 30,
'gk1': 0,
'gk2': 0,
'mid0': 0,
'mid1': 30,
'mid2': 90,
'mid3': 1,
'mid4': 30},
{'b0': 'MID',
'b1': 'MID',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'b0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1']),
('normal control 4',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 1,
'b2': 30,
'def0': 90,
'def1': 1,
'def2': 1,
'def3': 30,
'def4': 30,
'fwd0': 1,
'fwd1': 1,
'gk1': 30,
'gk2': 0,
'mid0': 90,
'mid1': 30,
'mid2': 1},
{'b0': 'MID',
'b1': 'MID',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'])],
[('regression: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 1,
'b2': 30,
'def0': 1,
'def1': 0,
'def2': 90,
'def3': 1,
'fwd0': 1,
'fwd1': 0,
'gk1': 1,
'gk2': 90,
'mid0': 30,
'mid1': 1,
'mid2': 0,
'mid3': 30},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'b0', 'def2', 'def3', 'mid0', 'mid1', 'b1', 'mid3', 'fwd0', 'b2']),
('partial repair probe: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 90,
'b2': 1,
'def0': 1,
'def1': 90,
'def2': 30,
'fwd0': 1,
'fwd1': 0,
'gk1': 0,
'gk2': 90,
'mid0': 0,
'mid1': 30,
'mid2': 30,
'mid3': 90,
'mid4': 90},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'b1', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'b2']),
('second regression',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 0,
'b2': 30,
'def0': 90,
'def1': 1,
'def2': 30,
'def3': 1,
'fwd0': 1,
'fwd1': 90,
'gk1': 1,
'gk2': 30,
'mid0': 90,
'mid1': 1,
'mid2': 0,
'mid3': 0},
{'b0': 'FWD',
'b1': 'DEF',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'b0', 'b2', 'fwd0', 'fwd1']),
('normal control 1',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 0,
'b2': 0,
'def0': 1,
'def1': 30,
'def2': 90,
'fwd0': 1,
'fwd1': 30,
'gk1': 90,
'gk2': 1,
'mid0': 30,
'mid1': 30,
'mid2': 30,
'mid3': 1,
'mid4': 30},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1']),
('normal control 2',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 30,
'b2': 0,
'def0': 30,
'def1': 90,
'def2': 90,
'fwd0': 1,
'fwd1': 1,
'fwd2': 90,
'gk1': 90,
'gk2': 30,
'mid0': 1,
'mid1': 0,
'mid2': 1,
'mid3': 90},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'b0', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 3',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 0,
'b2': 1,
'def0': 1,
'def1': 1,
'def2': 0,
'fwd0': 1,
'fwd1': 0,
'fwd2': 90,
'gk1': 90,
'gk2': 0,
'mid0': 30,
'mid1': 1,
'mid2': 1,
'mid3': 30},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'b2', 'fwd2']),
('normal control 4',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 90,
'b2': 90,
'def0': 90,
'def1': 1,
'def2': 30,
'fwd0': 90,
'fwd1': 1,
'fwd2': 30,
'gk1': 30,
'gk2': 1,
'mid0': 1,
'mid1': 90,
'mid2': 30,
'mid3': 1},
{'b0': 'FWD',
'b1': 'DEF',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'])],
[('regression: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 1,
'b2': 30,
'def0': 30,
'def1': 0,
'def2': 90,
'def3': 30,
'fwd0': 1,
'gk1': 30,
'gk2': 90,
'mid0': 30,
'mid1': 0,
'mid2': 1,
'mid3': 0,
'mid4': 1},
{'b0': 'DEF',
'b1': 'MID',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'b1', 'def2', 'def3', 'mid0', 'b2', 'mid2', 'mid3', 'mid4', 'fwd0']),
('partial repair probe: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 90,
'b2': 1,
'def0': 30,
'def1': 1,
'def2': 1,
'def3': 0,
'def4': 0,
'fwd0': 90,
'fwd1': 90,
'gk1': 1,
'gk2': 30,
'mid0': 1,
'mid1': 0,
'mid2': 0},
{'b0': 'DEF',
'b1': 'MID',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'b0', 'b1', 'mid0', 'b2', 'mid2', 'fwd0', 'fwd1']),
('second regression',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 30,
'b2': 0,
'def0': 90,
'def1': 30,
'def2': 0,
'fwd0': 90,
'fwd1': 90,
'gk1': 0,
'gk2': 90,
'mid0': 1,
'mid1': 90,
'mid2': 0,
'mid3': 0,
'mid4': 1},
{'b0': 'MID',
'b1': 'DEF',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk2', 'def0', 'def1', 'b1', 'mid0', 'mid1', 'b0', 'mid3', 'mid4', 'fwd0', 'fwd1']),
('normal control 1',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 0,
'b2': 30,
'def0': 90,
'def1': 30,
'def2': 90,
'fwd0': 1,
'fwd1': 90,
'fwd2': 30,
'gk1': 90,
'gk2': 90,
'mid0': 90,
'mid1': 90,
'mid2': 1,
'mid3': 30},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 2',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 0,
'b2': 90,
'def0': 1,
'def1': 1,
'def2': 30,
'def3': 30,
'def4': 0,
'fwd0': 1,
'fwd1': 30,
'gk1': 90,
'gk2': 1,
'mid0': 30,
'mid1': 1,
'mid2': 1},
{'b0': 'DEF',
'b1': 'DEF',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'b0', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1']),
('normal control 3',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 1,
'b2': 90,
'def0': 0,
'def1': 90,
'def2': 90,
'def3': 90,
'fwd0': 30,
'fwd1': 30,
'gk1': 90,
'gk2': 0,
'mid0': 1,
'mid1': 90,
'mid2': 30,
'mid3': 1},
{'b0': 'DEF',
'b1': 'MID',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'b0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1']),
('normal control 4',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 90,
'b2': 30,
'def0': 1,
'def1': 30,
'def2': 1,
'def3': 1,
'fwd0': 1,
'fwd1': 30,
'gk1': 0,
'gk2': 1,
'mid0': 90,
'mid1': 30,
'mid2': 0,
'mid3': 30},
{'b0': 'FWD',
'b1': 'DEF',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'b1', 'mid3', 'fwd0', 'fwd1'])],
[('regression: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 1,
'b2': 1,
'def0': 30,
'def1': 90,
'def2': 0,
'fwd0': 1,
'fwd1': 30,
'fwd2': 1,
'gk1': 1,
'gk2': 90,
'mid0': 30,
'mid1': 0,
'mid2': 90,
'mid3': 1},
{'b0': 'DEF',
'b1': 'DEF',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'b0', 'mid0', 'b1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('partial repair probe: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 1,
'b2': 30,
'def0': 90,
'def1': 0,
'def2': 90,
'def3': 90,
'def4': 1,
'fwd0': 0,
'fwd1': 90,
'gk1': 1,
'gk2': 90,
'mid0': 90,
'mid1': 90,
'mid2': 1},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'def0', 'b0', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'b1', 'fwd1']),
('second regression',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 1,
'b2': 0,
'def0': 90,
'def1': 90,
'def2': 90,
'fwd0': 0,
'fwd1': 1,
'fwd2': 0,
'gk1': 1,
'gk2': 1,
'mid0': 1,
'mid1': 1,
'mid2': 1,
'mid3': 1},
{'b0': 'MID',
'b1': 'MID',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'b1', 'fwd1', 'fwd2']),
('normal control 1',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 0,
'b2': 1,
'def0': 0,
'def1': 30,
'def2': 30,
'def3': 1,
'fwd0': 30,
'gk1': 1,
'gk2': 90,
'mid0': 90,
'mid1': 30,
'mid2': 90,
'mid3': 1,
'mid4': 90},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'b0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0']),
('normal control 2',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 90,
'b2': 1,
'def0': 0,
'def1': 90,
'def2': 1,
'fwd0': 30,
'fwd1': 90,
'fwd2': 90,
'gk1': 1,
'gk2': 1,
'mid0': 30,
'mid1': 1,
'mid2': 1,
'mid3': 30},
{'b0': 'FWD',
'b1': 'FWD',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 3',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 0,
'b2': 1,
'def0': 30,
'def1': 0,
'def2': 1,
'def3': 30,
'fwd0': 90,
'gk1': 90,
'gk2': 90,
'mid0': 30,
'mid1': 30,
'mid2': 30,
'mid3': 1,
'mid4': 30},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'b0', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0']),
('normal control 4',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 0,
'b2': 1,
'def0': 90,
'def1': 1,
'def2': 30,
'fwd0': 90,
'fwd1': 0,
'gk1': 1,
'gk2': 1,
'mid0': 30,
'mid1': 90,
'mid2': 90,
'mid3': 1,
'mid4': 90},
{'b0': 'DEF',
'b1': 'MID',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'b0'])]]
for label, args, expected in fixtures[N-1]:
check(label, 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: used bench tracking | ['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'b1', 'mid2', 'fwd0', 'b1'] | ['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'b1', 'mid2', 'fwd0', 'b2'] | Failed |
| partial repair probe: used bench tracking | ['gk1', 'def0', 'b1', 'def2', 'def3', 'mid0', 'b1', 'mid2', 'mid3', 'b1', 'fwd0'] | ['gk1', 'def0', 'b1', 'def2', 'def3', 'mid0', 'b2', 'mid2', 'mid3', 'mid4', 'fwd0'] | Failed |
| second regression | ['gk2', 'def0', 'def1', 'def2', 'b0', 'b0', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'] | ['gk2', 'def0', 'def1', 'def2', 'b0', 'b2', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'] | Failed |
| normal control 1 | ['gk2', 'def0', 'def1', 'def2', 'b0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'] | ['gk2', 'def0', 'def1', 'def2', 'b0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'] | Passed |
| normal control 2 | ['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0'] | ['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0'] | Passed |
| normal control 3 | ['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'] | ['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'] | Passed |
| normal control 4 | ['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0'] | ['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0'] | Passed |
SHA-256 / 13801f66a9d952a12c3c203f57caedbd275319a7b587b5efebaaf6c60eb3ec8f
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(starters, bench, minutes, pos):
xi = list(starters)
used = set()
def valid(team):
c = {'DEF': 0, 'MID': 0, 'FWD': 0}
for n in team:
if pos[n] in c:
c[pos[n]] += 1
return c['DEF'] >= 3 and c['MID'] >= 2 and c['FWD'] >= 1
for i, s in enumerate(starters):
if minutes[s] > 0:
continue
if pos[s] == 'GK':
g = bench[0]
if minutes[g] > 0:
xi[i] = g
used.add(g)
continue
for b in bench[1:]:
if b in used or minutes[b] == 0:
continue
trial = xi[:i] + [b] + xi[i + 1:]
if valid(trial):
xi[i] = b
used.add(b)
break
return xi
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 30,
'b2': 90,
'def0': 1,
'def1': 1,
'def2': 1,
'def3': 1,
'def4': 1,
'fwd0': 90,
'fwd1': 0,
'gk1': 1,
'gk2': 90,
'mid0': 30,
'mid1': 0,
'mid2': 90},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'b1', 'mid2', 'fwd0', 'b2']),
('partial repair probe: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 90,
'b2': 90,
'def0': 30,
'def1': 0,
'def2': 1,
'def3': 90,
'fwd0': 30,
'gk1': 30,
'gk2': 90,
'mid0': 30,
'mid1': 0,
'mid2': 1,
'mid3': 30,
'mid4': 0},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'b1', 'def2', 'def3', 'mid0', 'b2', 'mid2', 'mid3', 'mid4', 'fwd0']),
('second regression',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 0,
'b2': 90,
'def0': 1,
'def1': 90,
'def2': 0,
'fwd0': 30,
'fwd1': 90,
'fwd2': 30,
'gk1': 0,
'gk2': 1,
'mid0': 0,
'mid1': 0,
'mid2': 30,
'mid3': 90},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'b0', 'b2', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 1',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 0,
'b2': 1,
'def0': 0,
'def1': 30,
'def2': 0,
'fwd0': 30,
'fwd1': 90,
'fwd2': 30,
'gk1': 0,
'gk2': 1,
'mid0': 0,
'mid1': 1,
'mid2': 90,
'mid3': 30},
{'b0': 'FWD',
'b1': 'DEF',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'b0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 2',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 0,
'b2': 30,
'def0': 90,
'def1': 90,
'def2': 90,
'def3': 30,
'fwd0': 30,
'gk1': 0,
'gk2': 1,
'mid0': 30,
'mid1': 30,
'mid2': 1,
'mid3': 30,
'mid4': 0},
{'b0': 'MID',
'b1': 'MID',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0']),
('normal control 3',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 0,
'b2': 0,
'def0': 30,
'def1': 1,
'def2': 30,
'def3': 90,
'fwd0': 90,
'gk1': 0,
'gk2': 30,
'mid0': 0,
'mid1': 1,
'mid2': 1,
'mid3': 0,
'mid4': 0},
{'b0': 'FWD',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0']),
('normal control 4',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 1,
'b2': 1,
'def0': 30,
'def1': 30,
'def2': 90,
'def3': 90,
'fwd0': 90,
'gk1': 30,
'gk2': 30,
'mid0': 90,
'mid1': 1,
'mid2': 90,
'mid3': 30,
'mid4': 0},
{'b0': 'FWD',
'b1': 'MID',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0'])],
[('regression: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 90,
'b2': 30,
'def0': 0,
'def1': 0,
'def2': 0,
'def3': 30,
'def4': 90,
'fwd0': 1,
'fwd1': 0,
'gk1': 30,
'gk2': 90,
'mid0': 90,
'mid1': 1,
'mid2': 0},
{'b0': 'MID',
'b1': 'MID',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'b0', 'b1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'b2', 'fwd0', 'fwd1']),
('partial repair probe: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 0,
'b2': 30,
'def0': 0,
'def1': 90,
'def2': 30,
'def3': 0,
'def4': 0,
'fwd0': 1,
'fwd1': 1,
'gk1': 30,
'gk2': 30,
'mid0': 0,
'mid1': 30,
'mid2': 0},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'b0', 'def1', 'def2', 'b2', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1']),
('second regression',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 1,
'b2': 90,
'def0': 0,
'def1': 0,
'def2': 30,
'fwd0': 1,
'fwd1': 1,
'fwd2': 90,
'gk1': 0,
'gk2': 1,
'mid0': 1,
'mid1': 1,
'mid2': 30,
'mid3': 30},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk2', 'b2', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 1',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 1,
'b2': 0,
'def0': 30,
'def1': 30,
'def2': 30,
'def3': 90,
'fwd0': 1,
'fwd1': 90,
'gk1': 30,
'gk2': 0,
'mid0': 0,
'mid1': 90,
'mid2': 90,
'mid3': 30},
{'b0': 'MID',
'b1': 'MID',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'b0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1']),
('normal control 2',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 90,
'b2': 1,
'def0': 90,
'def1': 90,
'def2': 0,
'def3': 90,
'fwd0': 1,
'fwd1': 1,
'gk1': 90,
'gk2': 1,
'mid0': 90,
'mid1': 30,
'mid2': 90,
'mid3': 90},
{'b0': 'DEF',
'b1': 'DEF',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'b0', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1']),
('normal control 3',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 30,
'b2': 30,
'def0': 0,
'def1': 0,
'def2': 30,
'fwd0': 1,
'fwd1': 30,
'gk1': 0,
'gk2': 0,
'mid0': 0,
'mid1': 30,
'mid2': 90,
'mid3': 1,
'mid4': 30},
{'b0': 'MID',
'b1': 'MID',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'b0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1']),
('normal control 4',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 1,
'b2': 30,
'def0': 90,
'def1': 1,
'def2': 1,
'def3': 30,
'def4': 30,
'fwd0': 1,
'fwd1': 1,
'gk1': 30,
'gk2': 0,
'mid0': 90,
'mid1': 30,
'mid2': 1},
{'b0': 'MID',
'b1': 'MID',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'])],
[('regression: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 1,
'b2': 30,
'def0': 1,
'def1': 0,
'def2': 90,
'def3': 1,
'fwd0': 1,
'fwd1': 0,
'gk1': 1,
'gk2': 90,
'mid0': 30,
'mid1': 1,
'mid2': 0,
'mid3': 30},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'b0', 'def2', 'def3', 'mid0', 'mid1', 'b1', 'mid3', 'fwd0', 'b2']),
('partial repair probe: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 90,
'b2': 1,
'def0': 1,
'def1': 90,
'def2': 30,
'fwd0': 1,
'fwd1': 0,
'gk1': 0,
'gk2': 90,
'mid0': 0,
'mid1': 30,
'mid2': 30,
'mid3': 90,
'mid4': 90},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'b1', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'b2']),
('second regression',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 0,
'b2': 30,
'def0': 90,
'def1': 1,
'def2': 30,
'def3': 1,
'fwd0': 1,
'fwd1': 90,
'gk1': 1,
'gk2': 30,
'mid0': 90,
'mid1': 1,
'mid2': 0,
'mid3': 0},
{'b0': 'FWD',
'b1': 'DEF',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'b0', 'b2', 'fwd0', 'fwd1']),
('normal control 1',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 0,
'b2': 0,
'def0': 1,
'def1': 30,
'def2': 90,
'fwd0': 1,
'fwd1': 30,
'gk1': 90,
'gk2': 1,
'mid0': 30,
'mid1': 30,
'mid2': 30,
'mid3': 1,
'mid4': 30},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1']),
('normal control 2',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 30,
'b2': 0,
'def0': 30,
'def1': 90,
'def2': 90,
'fwd0': 1,
'fwd1': 1,
'fwd2': 90,
'gk1': 90,
'gk2': 30,
'mid0': 1,
'mid1': 0,
'mid2': 1,
'mid3': 90},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'b0', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 3',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 0,
'b2': 1,
'def0': 1,
'def1': 1,
'def2': 0,
'fwd0': 1,
'fwd1': 0,
'fwd2': 90,
'gk1': 90,
'gk2': 0,
'mid0': 30,
'mid1': 1,
'mid2': 1,
'mid3': 30},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'b2', 'fwd2']),
('normal control 4',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 90,
'b2': 90,
'def0': 90,
'def1': 1,
'def2': 30,
'fwd0': 90,
'fwd1': 1,
'fwd2': 30,
'gk1': 30,
'gk2': 1,
'mid0': 1,
'mid1': 90,
'mid2': 30,
'mid3': 1},
{'b0': 'FWD',
'b1': 'DEF',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'])],
[('regression: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 1,
'b2': 30,
'def0': 30,
'def1': 0,
'def2': 90,
'def3': 30,
'fwd0': 1,
'gk1': 30,
'gk2': 90,
'mid0': 30,
'mid1': 0,
'mid2': 1,
'mid3': 0,
'mid4': 1},
{'b0': 'DEF',
'b1': 'MID',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'b1', 'def2', 'def3', 'mid0', 'b2', 'mid2', 'mid3', 'mid4', 'fwd0']),
('partial repair probe: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 90,
'b2': 1,
'def0': 30,
'def1': 1,
'def2': 1,
'def3': 0,
'def4': 0,
'fwd0': 90,
'fwd1': 90,
'gk1': 1,
'gk2': 30,
'mid0': 1,
'mid1': 0,
'mid2': 0},
{'b0': 'DEF',
'b1': 'MID',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'b0', 'b1', 'mid0', 'b2', 'mid2', 'fwd0', 'fwd1']),
('second regression',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 30,
'b2': 0,
'def0': 90,
'def1': 30,
'def2': 0,
'fwd0': 90,
'fwd1': 90,
'gk1': 0,
'gk2': 90,
'mid0': 1,
'mid1': 90,
'mid2': 0,
'mid3': 0,
'mid4': 1},
{'b0': 'MID',
'b1': 'DEF',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk2', 'def0', 'def1', 'b1', 'mid0', 'mid1', 'b0', 'mid3', 'mid4', 'fwd0', 'fwd1']),
('normal control 1',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 0,
'b2': 30,
'def0': 90,
'def1': 30,
'def2': 90,
'fwd0': 1,
'fwd1': 90,
'fwd2': 30,
'gk1': 90,
'gk2': 90,
'mid0': 90,
'mid1': 90,
'mid2': 1,
'mid3': 30},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 2',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 0,
'b2': 90,
'def0': 1,
'def1': 1,
'def2': 30,
'def3': 30,
'def4': 0,
'fwd0': 1,
'fwd1': 30,
'gk1': 90,
'gk2': 1,
'mid0': 30,
'mid1': 1,
'mid2': 1},
{'b0': 'DEF',
'b1': 'DEF',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'def3', 'b0', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1']),
('normal control 3',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 1,
'b2': 90,
'def0': 0,
'def1': 90,
'def2': 90,
'def3': 90,
'fwd0': 30,
'fwd1': 30,
'gk1': 90,
'gk2': 0,
'mid0': 1,
'mid1': 90,
'mid2': 30,
'mid3': 1},
{'b0': 'DEF',
'b1': 'MID',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'b0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1']),
('normal control 4',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 90,
'b2': 30,
'def0': 1,
'def1': 30,
'def2': 1,
'def3': 1,
'fwd0': 1,
'fwd1': 30,
'gk1': 0,
'gk2': 1,
'mid0': 90,
'mid1': 30,
'mid2': 0,
'mid3': 30},
{'b0': 'FWD',
'b1': 'DEF',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'b1', 'mid3', 'fwd0', 'fwd1'])],
[('regression: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 1,
'b2': 1,
'def0': 30,
'def1': 90,
'def2': 0,
'fwd0': 1,
'fwd1': 30,
'fwd2': 1,
'gk1': 1,
'gk2': 90,
'mid0': 30,
'mid1': 0,
'mid2': 90,
'mid3': 1},
{'b0': 'DEF',
'b1': 'DEF',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'b0', 'mid0', 'b1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('partial repair probe: used bench tracking',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 1,
'b2': 30,
'def0': 90,
'def1': 0,
'def2': 90,
'def3': 90,
'def4': 1,
'fwd0': 0,
'fwd1': 90,
'gk1': 1,
'gk2': 90,
'mid0': 90,
'mid1': 90,
'mid2': 1},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'def4': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID'}],
['gk1', 'def0', 'b0', 'def2', 'def3', 'def4', 'mid0', 'mid1', 'mid2', 'b1', 'fwd1']),
('second regression',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 0,
'b1': 1,
'b2': 0,
'def0': 90,
'def1': 90,
'def2': 90,
'fwd0': 0,
'fwd1': 1,
'fwd2': 0,
'gk1': 1,
'gk2': 1,
'mid0': 1,
'mid1': 1,
'mid2': 1,
'mid3': 1},
{'b0': 'MID',
'b1': 'MID',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'b1', 'fwd1', 'fwd2']),
('normal control 1',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 90,
'b1': 0,
'b2': 1,
'def0': 0,
'def1': 30,
'def2': 30,
'def3': 1,
'fwd0': 30,
'gk1': 1,
'gk2': 90,
'mid0': 90,
'mid1': 30,
'mid2': 90,
'mid3': 1,
'mid4': 90},
{'b0': 'DEF',
'b1': 'FWD',
'b2': 'DEF',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'b0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0']),
('normal control 2',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 90,
'b2': 1,
'def0': 0,
'def1': 90,
'def2': 1,
'fwd0': 30,
'fwd1': 90,
'fwd2': 90,
'gk1': 1,
'gk2': 1,
'mid0': 30,
'mid1': 1,
'mid2': 1,
'mid3': 30},
{'b0': 'FWD',
'b1': 'FWD',
'b2': 'MID',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'fwd2': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2']),
('normal control 3',
[['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 30,
'b1': 0,
'b2': 1,
'def0': 30,
'def1': 0,
'def2': 1,
'def3': 30,
'fwd0': 90,
'gk1': 90,
'gk2': 90,
'mid0': 30,
'mid1': 30,
'mid2': 30,
'mid3': 1,
'mid4': 30},
{'b0': 'MID',
'b1': 'FWD',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'def3': 'DEF',
'fwd0': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'b0', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0']),
('normal control 4',
[['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'fwd1'],
['gk2', 'b0', 'b1', 'b2'],
{'b0': 1,
'b1': 0,
'b2': 1,
'def0': 90,
'def1': 1,
'def2': 30,
'fwd0': 90,
'fwd1': 0,
'gk1': 1,
'gk2': 1,
'mid0': 30,
'mid1': 90,
'mid2': 90,
'mid3': 1,
'mid4': 90},
{'b0': 'DEF',
'b1': 'MID',
'b2': 'FWD',
'def0': 'DEF',
'def1': 'DEF',
'def2': 'DEF',
'fwd0': 'FWD',
'fwd1': 'FWD',
'gk1': 'GK',
'gk2': 'GK',
'mid0': 'MID',
'mid1': 'MID',
'mid2': 'MID',
'mid3': 'MID',
'mid4': 'MID'}],
['gk1', 'def0', 'def1', 'def2', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0', 'b0'])]]
for label, args, expected in fixtures[N-1]:
check(label, 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: used bench tracking | ['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'b1', 'mid2', 'fwd0', 'b2'] | ['gk1', 'def0', 'def1', 'def2', 'def3', 'def4', 'mid0', 'b1', 'mid2', 'fwd0', 'b2'] | Passed |
| partial repair probe: used bench tracking | ['gk1', 'def0', 'b1', 'def2', 'def3', 'mid0', 'b2', 'mid2', 'mid3', 'mid4', 'fwd0'] | ['gk1', 'def0', 'b1', 'def2', 'def3', 'mid0', 'b2', 'mid2', 'mid3', 'mid4', 'fwd0'] | Passed |
| second regression | ['gk2', 'def0', 'def1', 'def2', 'b0', 'b2', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'] | ['gk2', 'def0', 'def1', 'def2', 'b0', 'b2', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'] | Passed |
| normal control 1 | ['gk2', 'def0', 'def1', 'def2', 'b0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'] | ['gk2', 'def0', 'def1', 'def2', 'b0', 'mid1', 'mid2', 'mid3', 'fwd0', 'fwd1', 'fwd2'] | Passed |
| normal control 2 | ['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0'] | ['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0'] | Passed |
| normal control 3 | ['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'] | ['gk2', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'mid4', 'fwd0'] | Passed |
| normal control 4 | ['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0'] | ['gk1', 'def0', 'def1', 'def2', 'def3', 'mid0', 'mid1', 'mid2', 'mid3', 'b0', 'fwd0'] | Passed |
SHA-256 / f4d3c51f33e1a471454ac08b9d5b8829d8872254612e72e6e0cab813f65496a3
Verification & scope
A deterministic toy scoring contract stipulated for this example; it is not the rulebook of any real fantasy platform. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.
Observations recorded using Python 3.12.14 at 2026-09-29T14:50:38.667744+00:00.
Case digest / 7c2b9ce00fc03aba9ef435a12517c920a27601fef9e8435f65c71375709d2a4e