{"abstract":"An event overlay with priority 2 loses to a base zone with a higher multiplier.","category":"Ride-hailing fare and surge pricing","checks":7,"contract":"Surge zones are rectangles, half-open [x0, x1) x [y0, y1). The multiplier comes from the pickup point only. Among zones containing it choose highest priority, then highest multiplier, then lowest id. No containing zone gives [None, 10] (1.0x in tenths). Return [zone id, multiplier].","contract_signature":"zones, pickup, dropoff","evaluation_group":"w2-ride-hailing-fare-surge-surge-zone-lookup","failed_approach":"Preferring the lowest multiplier within a priority inverts the second criterion.","family":"w2-ride-hailing-fare-surge-surge-zone-lookup-priority-before-multiplier","id":"FA-85481","implementations":{"attempt":{"sha256":"7b2ea076d83ce7c9a423748555f432abff02a18b62514f4d0d268096736d2e51","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(zones, pickup, dropoff):\n    best = None\n    for z in zones:\n        if z['x0'] <= pickup[0] < z['x1'] and z['y0'] <= pickup[1] < z['y1']:\n            k = (z['priority'], -z['mult'], -z['id'])\n            if best is None or k > best[0]:\n                best = (k, z)\n    if best is None:\n        return [None, 10]\n    return [best[1]['id'], best[1]['mult']]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: priority before multiplier',\n   [[{'id': 34, 'mult': 12, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 35, 'mult': 20, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 10, 'y1': 30},\n     {'id': 38, 'mult': 12, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 39, 'mult': 12, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 20},\n     {'id': 11, 'mult': 20, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 20}],\n    [20, 10], [40, 10]],\n   [38, 12]),\n  ('partial repair probe: priority before multiplier',\n   [[{'id': 29, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 0, 'y1': 20},\n     {'id': 47, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 4, 'mult': 15, 'priority': 1, 'x0': 10, 'x1': 20, 'y0': 20, 'y1': 40},\n     {'id': 6, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 40},\n     {'id': 19, 'mult': 20, 'priority': 1, 'x0': 10, 'x1': 20, 'y0': 20, 'y1': 40}],\n    [16, 20], [30, 0]],\n   [19, 20]),\n  ('second regression',\n   [[{'id': 14, 'mult': 20, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 5, 'mult': 12, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 30},\n     {'id': 39, 'mult': 12, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 20, 'y1': 30},\n     {'id': 49, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 30},\n     {'id': 19, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 20}],\n    [5, 10], [10, 30]],\n   [19, 20]),\n  ('normal control 1',\n   [[{'id': 4, 'mult': 15, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 10, 'y1': 30},\n     {'id': 46, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 40},\n     {'id': 37, 'mult': 12, 'priority': 1, 'x0': 10, 'x1': 20, 'y0': 0, 'y1': 10},\n     {'id': 29, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 10, 'y1': 30},\n     {'id': 28, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 20}],\n    [10, 10], [40, 20]],\n   [4, 15]),\n  ('normal control 2',\n   [[{'id': 39, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 20, 'y1': 30}], [23, 12], [0, 12]],\n   [None, 10]),\n  ('normal control 3',\n   [[{'id': 47, 'mult': 12, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 40},\n     {'id': 8, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 0, 'y1': 20},\n     {'id': 9, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 20, 'y1': 40},\n     {'id': 44, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 20}],\n    [15, 5], [15, 0]],\n   [None, 10]),\n  ('normal control 4',\n   [[{'id': 10, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 33, 'mult': 20, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 10},\n     {'id': 42, 'mult': 12, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 10},\n     {'id': 12, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 20, 'y1': 30}],\n    [0, 12], [13, 12]],\n   [None, 10])],\n [('regression: priority before multiplier',\n   [[{'id': 5, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 40},\n     {'id': 18, 'mult': 20, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 0, 'y1': 20},\n     {'id': 1, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 10, 'y1': 30},\n     {'id': 42, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 0, 'y1': 20}],\n    [23, 12], [0, 20]],\n   [1, 15]),\n  ('partial repair probe: priority before multiplier',\n   [[{'id': 39, 'mult': 12, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 0, 'y1': 10},\n     {'id': 9, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 20},\n     {'id': 33, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 0, 'y1': 10},\n     {'id': 40, 'mult': 15, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 0, 'y1': 10},\n     {'id': 19, 'mult': 15, 'priority': 2, 'x0': 10, 'x1': 30, 'y0': 10, 'y1': 30}],\n    [13, 0], [18, 30]],\n   [40, 15]),\n  ('second regression',\n   [[{'id': 39, 'mult': 15, 'priority': 2, 'x0': 10, 'x1': 20, 'y0': 20, 'y1': 40},\n     {'id': 10, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 10, 'y1': 20},\n     {'id': 29, 'mult': 20, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 20, 'y1': 40},\n     {'id': 40, 'mult': 12, 'priority': 2, 'x0': 10, 'x1': 20, 'y0': 0, 'y1': 10}],\n    [10, 30], [0, 12]],\n   [29, 20]),\n  ('normal control 1',\n   [[{'id': 42, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 40},\n     {'id': 43, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 48, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 30, 'mult': 20, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 0, 'y1': 10}],\n    [0, 5], [0, 10]],\n   [None, 10]),\n  ('normal control 2',\n   [[{'id': 17, 'mult': 12, 'priority': 2, 'x0': 10, 'x1': 20, 'y0': 20, 'y1': 40}], [15, 5], [30, 1]],\n   [None, 10]),\n  ('normal control 3',\n   [[{'id': 2, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 0, 'y1': 20},\n     {'id': 30, 'mult': 15, 'priority': 2, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 30},\n     {'id': 47, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 30},\n     {'id': 21, 'mult': 12, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 13, 'mult': 20, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 20, 'y1': 30}],\n    [5, 20], [30, 10]],\n   [30, 15]),\n  ('normal control 4',\n   [[{'id': 44, 'mult': 20, 'priority': 2, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 30},\n     {'id': 28, 'mult': 15, 'priority': 1, 'x0': 10, 'x1': 20, 'y0': 10, 'y1': 30},\n     {'id': 9, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 38, 'mult': 15, 'priority': 2, 'x0': 10, 'x1': 20, 'y0': 0, 'y1': 20}],\n    [7, 12], [10, 30]],\n   [None, 10])],\n [('regression: priority before multiplier',\n   [[{'id': 19, 'mult': 12, 'priority': 2, 'x0': 10, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 27, 'mult': 15, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 20, 'y1': 30},\n     {'id': 3, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 0, 'y1': 10},\n     {'id': 46, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 30},\n     {'id': 45, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 30}],\n    [15, 20], [17, 10]],\n   [27, 15]),\n  ('partial repair probe: priority before multiplier',\n   [[{'id': 36, 'mult': 12, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 30},\n     {'id': 2, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 0, 'y1': 10},\n     {'id': 37, 'mult': 12, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 17, 'mult': 15, 'priority': 2, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 30},\n     {'id': 35, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 0, 'y1': 20}],\n    [5, 12], [30, 27]],\n   [35, 15]),\n  ('second regression',\n   [[{'id': 34, 'mult': 20, 'priority': 2, 'x0': 0, 'x1': 10, 'y0': 0, 'y1': 20},\n     {'id': 19, 'mult': 20, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 0, 'y1': 20},\n     {'id': 31, 'mult': 12, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 21, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 32, 'mult': 12, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 0, 'y1': 10}],\n    [15, 0], [5, 10]],\n   [19, 20]),\n  ('normal control 1',\n   [[{'id': 44, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 17, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 20, 'y1': 30},\n     {'id': 11, 'mult': 15, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 12, 'mult': 15, 'priority': 2, 'x0': 10, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 20, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 10, 'y1': 20}],\n    [5, 12], [40, 5]],\n   [None, 10]),\n  ('normal control 2',\n   [[{'id': 32, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 40},\n     {'id': 36, 'mult': 12, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 10, 'y1': 30},\n     {'id': 26, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 30},\n     {'id': 30, 'mult': 20, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 0, 'y1': 20}],\n    [10, 4], [30, 20]],\n   [30, 20]),\n  ('normal control 3',\n   [[{'id': 24, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 0, 'y1': 20},\n     {'id': 49, 'mult': 15, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 0, 'y1': 20},\n     {'id': 23, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 39, 'mult': 15, 'priority': 2, 'x0': 10, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 4, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 10}],\n    [15, 5], [30, 5]],\n   [49, 15]),\n  ('normal control 4',\n   [[{'id': 32, 'mult': 12, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 47, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 30},\n     {'id': 39, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 30},\n     {'id': 25, 'mult': 15, 'priority': 2, 'x0': 0, 'x1': 10, 'y0': 0, 'y1': 10}],\n    [10, 40], [30, 30]],\n   [None, 10])],\n [('regression: priority before multiplier',\n   [[{'id': 11, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 30},\n     {'id': 32, 'mult': 15, 'priority': 2, 'x0': 10, 'x1': 20, 'y0': 20, 'y1': 30},\n     {'id': 14, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 20, 'y1': 30},\n     {'id': 43, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 30}],\n    [10, 24], [0, 20]],\n   [32, 15]),\n  ('partial repair probe: priority before multiplier',\n   [[{'id': 28, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 30},\n     {'id': 27, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 20, 'y1': 40},\n     {'id': 41, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 0, 'y1': 10}],\n    [0, 20], [0, 12]],\n   [28, 20]),\n  ('second regression',\n   [[{'id': 21, 'mult': 20, 'priority': 2, 'x0': 10, 'x1': 30, 'y0': 20, 'y1': 40},\n     {'id': 37, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 20},\n     {'id': 26, 'mult': 12, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 20, 'y1': 30},\n     {'id': 18, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 20, 'y1': 30}],\n    [20, 20], [5, 6]],\n   [21, 20]),\n  ('normal control 1',\n   [[{'id': 43, 'mult': 12, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 10, 'y1': 20},\n     {'id': 28, 'mult': 20, 'priority': 2, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 40}],\n    [5, 12], [15, 0]],\n   [None, 10]),\n  ('normal control 2',\n   [[{'id': 3, 'mult': 15, 'priority': 1, 'x0': 10, 'x1': 20, 'y0': 0, 'y1': 20},\n     {'id': 41, 'mult': 15, 'priority': 2, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 30},\n     {'id': 7, 'mult': 12, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 22, 'mult': 12, 'priority': 2, 'x0': 0, 'x1': 10, 'y0': 0, 'y1': 10},\n     {'id': 23, 'mult': 15, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 30}],\n    [30, 12], [20, 30]],\n   [None, 10]),\n  ('normal control 3',\n   [[{'id': 37, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 0, 'y1': 10},\n     {'id': 6, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 40}],\n    [0, 20], [0, 0]],\n   [None, 10]),\n  ('normal control 4',\n   [[{'id': 43, 'mult': 12, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 20, 'y1': 40},\n     {'id': 48, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 11, 'mult': 15, 'priority': 2, 'x0': 10, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 18, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 41, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 40}],\n    [30, 16], [15, 20]],\n   [48, 15])],\n [('regression: priority before multiplier',\n   [[{'id': 36, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 0, 'y1': 10},\n     {'id': 9, 'mult': 12, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 37, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 38, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 30},\n     {'id': 4, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 30}],\n    [20, 20], [20, 12]],\n   [9, 12]),\n  ('partial repair probe: priority before multiplier',\n   [[{'id': 15, 'mult': 12, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 32, 'mult': 20, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 49, 'mult': 20, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 17, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 20}],\n    [10, 12], [20, 12]],\n   [17, 15]),\n  ('second regression',\n   [[{'id': 20, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 30},\n     {'id': 46, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 4, 'mult': 15, 'priority': 2, 'x0': 10, 'x1': 20, 'y0': 10, 'y1': 30},\n     {'id': 45, 'mult': 12, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 30}],\n    [20, 12], [15, 20]],\n   [20, 15]),\n  ('normal control 1',\n   [[{'id': 20, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 20, 'y1': 30},\n     {'id': 12, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 30}],\n    [15, 20], [20, 30]],\n   [None, 10]),\n  ('normal control 2',\n   [[{'id': 20, 'mult': 20, 'priority': 2, 'x0': 10, 'x1': 30, 'y0': 0, 'y1': 20},\n     {'id': 18, 'mult': 15, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 20},\n     {'id': 10, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 20, 'y1': 30},\n     {'id': 25, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 20}],\n    [20, 20], [15, 20]],\n   [10, 15]),\n  ('normal control 3',\n   [[{'id': 23, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 0, 'y1': 10},\n     {'id': 20, 'mult': 12, 'priority': 1, 'x0': 10, 'x1': 20, 'y0': 0, 'y1': 20},\n     {'id': 16, 'mult': 20, 'priority': 2, 'x0': 10, 'x1': 20, 'y0': 0, 'y1': 10},\n     {'id': 29, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 20, 'y1': 30}],\n    [20, 20], [30, 20]],\n   [None, 10]),\n  ('normal control 4',\n   [[{'id': 29, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 0, 'y1': 10},\n     {'id': 22, 'mult': 15, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 11, 'mult': 12, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 10, 'y1': 20},\n     {'id': 27, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 30}],\n    [15, 10], [15, 30]],\n   [None, 10])]]\nfor label, args, expected in fixtures[N-1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"11564326fb7e9c28f82be36a0cc71a5b02c03b916e2be4f9bcecad08cd8747f6","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(zones, pickup, dropoff):\n    best = None\n    for z in zones:\n        if z['x0'] <= pickup[0] < z['x1'] and z['y0'] <= pickup[1] < z['y1']:\n            k = (z['mult'], z['priority'], -z['id'])\n            if best is None or k > best[0]:\n                best = (k, z)\n    if best is None:\n        return [None, 10]\n    return [best[1]['id'], best[1]['mult']]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: priority before multiplier',\n   [[{'id': 34, 'mult': 12, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 35, 'mult': 20, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 10, 'y1': 30},\n     {'id': 38, 'mult': 12, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 39, 'mult': 12, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 20},\n     {'id': 11, 'mult': 20, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 20}],\n    [20, 10], [40, 10]],\n   [38, 12]),\n  ('partial repair probe: priority before multiplier',\n   [[{'id': 29, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 0, 'y1': 20},\n     {'id': 47, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 4, 'mult': 15, 'priority': 1, 'x0': 10, 'x1': 20, 'y0': 20, 'y1': 40},\n     {'id': 6, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 40},\n     {'id': 19, 'mult': 20, 'priority': 1, 'x0': 10, 'x1': 20, 'y0': 20, 'y1': 40}],\n    [16, 20], [30, 0]],\n   [19, 20]),\n  ('second regression',\n   [[{'id': 14, 'mult': 20, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 5, 'mult': 12, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 30},\n     {'id': 39, 'mult': 12, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 20, 'y1': 30},\n     {'id': 49, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 30},\n     {'id': 19, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 20}],\n    [5, 10], [10, 30]],\n   [19, 20]),\n  ('normal control 1',\n   [[{'id': 4, 'mult': 15, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 10, 'y1': 30},\n     {'id': 46, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 40},\n     {'id': 37, 'mult': 12, 'priority': 1, 'x0': 10, 'x1': 20, 'y0': 0, 'y1': 10},\n     {'id': 29, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 10, 'y1': 30},\n     {'id': 28, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 20}],\n    [10, 10], [40, 20]],\n   [4, 15]),\n  ('normal control 2',\n   [[{'id': 39, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 20, 'y1': 30}], [23, 12], [0, 12]],\n   [None, 10]),\n  ('normal control 3',\n   [[{'id': 47, 'mult': 12, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 40},\n     {'id': 8, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 0, 'y1': 20},\n     {'id': 9, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 20, 'y1': 40},\n     {'id': 44, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 20}],\n    [15, 5], [15, 0]],\n   [None, 10]),\n  ('normal control 4',\n   [[{'id': 10, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 33, 'mult': 20, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 10},\n     {'id': 42, 'mult': 12, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 10},\n     {'id': 12, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 20, 'y1': 30}],\n    [0, 12], [13, 12]],\n   [None, 10])],\n [('regression: priority before multiplier',\n   [[{'id': 5, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 40},\n     {'id': 18, 'mult': 20, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 0, 'y1': 20},\n     {'id': 1, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 10, 'y1': 30},\n     {'id': 42, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 0, 'y1': 20}],\n    [23, 12], [0, 20]],\n   [1, 15]),\n  ('partial repair probe: priority before multiplier',\n   [[{'id': 39, 'mult': 12, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 0, 'y1': 10},\n     {'id': 9, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 20},\n     {'id': 33, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 0, 'y1': 10},\n     {'id': 40, 'mult': 15, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 0, 'y1': 10},\n     {'id': 19, 'mult': 15, 'priority': 2, 'x0': 10, 'x1': 30, 'y0': 10, 'y1': 30}],\n    [13, 0], [18, 30]],\n   [40, 15]),\n  ('second regression',\n   [[{'id': 39, 'mult': 15, 'priority': 2, 'x0': 10, 'x1': 20, 'y0': 20, 'y1': 40},\n     {'id': 10, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 10, 'y1': 20},\n     {'id': 29, 'mult': 20, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 20, 'y1': 40},\n     {'id': 40, 'mult': 12, 'priority': 2, 'x0': 10, 'x1': 20, 'y0': 0, 'y1': 10}],\n    [10, 30], [0, 12]],\n   [29, 20]),\n  ('normal control 1',\n   [[{'id': 42, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 40},\n     {'id': 43, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 48, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 30, 'mult': 20, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 0, 'y1': 10}],\n    [0, 5], [0, 10]],\n   [None, 10]),\n  ('normal control 2',\n   [[{'id': 17, 'mult': 12, 'priority': 2, 'x0': 10, 'x1': 20, 'y0': 20, 'y1': 40}], [15, 5], [30, 1]],\n   [None, 10]),\n  ('normal control 3',\n   [[{'id': 2, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 0, 'y1': 20},\n     {'id': 30, 'mult': 15, 'priority': 2, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 30},\n     {'id': 47, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 30},\n     {'id': 21, 'mult': 12, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 13, 'mult': 20, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 20, 'y1': 30}],\n    [5, 20], [30, 10]],\n   [30, 15]),\n  ('normal control 4',\n   [[{'id': 44, 'mult': 20, 'priority': 2, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 30},\n     {'id': 28, 'mult': 15, 'priority': 1, 'x0': 10, 'x1': 20, 'y0': 10, 'y1': 30},\n     {'id': 9, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 38, 'mult': 15, 'priority': 2, 'x0': 10, 'x1': 20, 'y0': 0, 'y1': 20}],\n    [7, 12], [10, 30]],\n   [None, 10])],\n [('regression: priority before multiplier',\n   [[{'id': 19, 'mult': 12, 'priority': 2, 'x0': 10, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 27, 'mult': 15, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 20, 'y1': 30},\n     {'id': 3, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 0, 'y1': 10},\n     {'id': 46, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 30},\n     {'id': 45, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 30}],\n    [15, 20], [17, 10]],\n   [27, 15]),\n  ('partial repair probe: priority before multiplier',\n   [[{'id': 36, 'mult': 12, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 30},\n     {'id': 2, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 0, 'y1': 10},\n     {'id': 37, 'mult': 12, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 17, 'mult': 15, 'priority': 2, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 30},\n     {'id': 35, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 0, 'y1': 20}],\n    [5, 12], [30, 27]],\n   [35, 15]),\n  ('second regression',\n   [[{'id': 34, 'mult': 20, 'priority': 2, 'x0': 0, 'x1': 10, 'y0': 0, 'y1': 20},\n     {'id': 19, 'mult': 20, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 0, 'y1': 20},\n     {'id': 31, 'mult': 12, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 21, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 32, 'mult': 12, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 0, 'y1': 10}],\n    [15, 0], [5, 10]],\n   [19, 20]),\n  ('normal control 1',\n   [[{'id': 44, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 17, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 20, 'y1': 30},\n     {'id': 11, 'mult': 15, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 12, 'mult': 15, 'priority': 2, 'x0': 10, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 20, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 10, 'y1': 20}],\n    [5, 12], [40, 5]],\n   [None, 10]),\n  ('normal control 2',\n   [[{'id': 32, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 40},\n     {'id': 36, 'mult': 12, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 10, 'y1': 30},\n     {'id': 26, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 30},\n     {'id': 30, 'mult': 20, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 0, 'y1': 20}],\n    [10, 4], [30, 20]],\n   [30, 20]),\n  ('normal control 3',\n   [[{'id': 24, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 0, 'y1': 20},\n     {'id': 49, 'mult': 15, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 0, 'y1': 20},\n     {'id': 23, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 39, 'mult': 15, 'priority': 2, 'x0': 10, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 4, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 10}],\n    [15, 5], [30, 5]],\n   [49, 15]),\n  ('normal control 4',\n   [[{'id': 32, 'mult': 12, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 47, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 30},\n     {'id': 39, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 30},\n     {'id': 25, 'mult': 15, 'priority': 2, 'x0': 0, 'x1': 10, 'y0': 0, 'y1': 10}],\n    [10, 40], [30, 30]],\n   [None, 10])],\n [('regression: priority before multiplier',\n   [[{'id': 11, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 30},\n     {'id': 32, 'mult': 15, 'priority': 2, 'x0': 10, 'x1': 20, 'y0': 20, 'y1': 30},\n     {'id': 14, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 20, 'y1': 30},\n     {'id': 43, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 30}],\n    [10, 24], [0, 20]],\n   [32, 15]),\n  ('partial repair probe: priority before multiplier',\n   [[{'id': 28, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 30},\n     {'id': 27, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 20, 'y1': 40},\n     {'id': 41, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 0, 'y1': 10}],\n    [0, 20], [0, 12]],\n   [28, 20]),\n  ('second regression',\n   [[{'id': 21, 'mult': 20, 'priority': 2, 'x0': 10, 'x1': 30, 'y0': 20, 'y1': 40},\n     {'id': 37, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 20},\n     {'id': 26, 'mult': 12, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 20, 'y1': 30},\n     {'id': 18, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 20, 'y1': 30}],\n    [20, 20], [5, 6]],\n   [21, 20]),\n  ('normal control 1',\n   [[{'id': 43, 'mult': 12, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 10, 'y1': 20},\n     {'id': 28, 'mult': 20, 'priority': 2, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 40}],\n    [5, 12], [15, 0]],\n   [None, 10]),\n  ('normal control 2',\n   [[{'id': 3, 'mult': 15, 'priority': 1, 'x0': 10, 'x1': 20, 'y0': 0, 'y1': 20},\n     {'id': 41, 'mult': 15, 'priority': 2, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 30},\n     {'id': 7, 'mult': 12, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 22, 'mult': 12, 'priority': 2, 'x0': 0, 'x1': 10, 'y0': 0, 'y1': 10},\n     {'id': 23, 'mult': 15, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 30}],\n    [30, 12], [20, 30]],\n   [None, 10]),\n  ('normal control 3',\n   [[{'id': 37, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 0, 'y1': 10},\n     {'id': 6, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 40}],\n    [0, 20], [0, 0]],\n   [None, 10]),\n  ('normal control 4',\n   [[{'id': 43, 'mult': 12, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 20, 'y1': 40},\n     {'id': 48, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 11, 'mult': 15, 'priority': 2, 'x0': 10, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 18, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 41, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 40}],\n    [30, 16], [15, 20]],\n   [48, 15])],\n [('regression: priority before multiplier',\n   [[{'id': 36, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 0, 'y1': 10},\n     {'id': 9, 'mult': 12, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 37, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 0, 'y1': 20},\n     {'id': 38, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 10, 'y1': 30},\n     {'id': 4, 'mult': 15, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 30}],\n    [20, 20], [20, 12]],\n   [9, 12]),\n  ('partial repair probe: priority before multiplier',\n   [[{'id': 15, 'mult': 12, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 32, 'mult': 20, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 49, 'mult': 20, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 17, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 20}],\n    [10, 12], [20, 12]],\n   [17, 15]),\n  ('second regression',\n   [[{'id': 20, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 30},\n     {'id': 46, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 20},\n     {'id': 4, 'mult': 15, 'priority': 2, 'x0': 10, 'x1': 20, 'y0': 10, 'y1': 30},\n     {'id': 45, 'mult': 12, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 30}],\n    [20, 12], [15, 20]],\n   [20, 15]),\n  ('normal control 1',\n   [[{'id': 20, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 40, 'y0': 20, 'y1': 30},\n     {'id': 12, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 30, 'y0': 10, 'y1': 30}],\n    [15, 20], [20, 30]],\n   [None, 10]),\n  ('normal control 2',\n   [[{'id': 20, 'mult': 20, 'priority': 2, 'x0': 10, 'x1': 30, 'y0': 0, 'y1': 20},\n     {'id': 18, 'mult': 15, 'priority': 2, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 20},\n     {'id': 10, 'mult': 15, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 20, 'y1': 30},\n     {'id': 25, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 10, 'y1': 20}],\n    [20, 20], [15, 20]],\n   [10, 15]),\n  ('normal control 3',\n   [[{'id': 23, 'mult': 20, 'priority': 1, 'x0': 20, 'x1': 30, 'y0': 0, 'y1': 10},\n     {'id': 20, 'mult': 12, 'priority': 1, 'x0': 10, 'x1': 20, 'y0': 0, 'y1': 20},\n     {'id': 16, 'mult': 20, 'priority': 2, 'x0': 10, 'x1': 20, 'y0': 0, 'y1': 10},\n     {'id': 29, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 20, 'y0': 20, 'y1': 30}],\n    [20, 20], [30, 20]],\n   [None, 10]),\n  ('normal control 4',\n   [[{'id': 29, 'mult': 20, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 0, 'y1': 10},\n     {'id': 22, 'mult': 15, 'priority': 1, 'x0': 10, 'x1': 30, 'y0': 20, 'y1': 30},\n     {'id': 11, 'mult': 12, 'priority': 2, 'x0': 20, 'x1': 40, 'y0': 10, 'y1': 20},\n     {'id': 27, 'mult': 15, 'priority': 1, 'x0': 0, 'x1': 10, 'y0': 20, 'y1': 30}],\n    [15, 10], [15, 30]],\n   [None, 10])]]\nfor label, args, expected in fixtures[N-1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":"A deterministic toy pricing contract stipulated for this example; it does not reproduce the pricing of any real ride-hailing operator or regulator. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"w2-ride-hailing-fare-surge-surge-zone-lookup-priority-before-multiplier","generated_at":"2026-09-29T14:50:40.879161+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Ride-hailing prices are computed per trip at scale; ordering, unit and boundary slips become systematic over- or under-charging.","root_cause":"The selection key ranks by multiplier before priority.","sha256":"9ec8d78ed1e1ef9737f339ce1be26a75800a332a64f8d5a5808bb7aa5d7fa641","title":"Highest multiplier overrides zone priority · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verified":true,"visibility":"public","verification":{"attempt":{"elapsed_ms":43.773,"exit_code":1,"observations":[{"actual":[38,12],"check":"regression: priority before multiplier","expected":[38,12],"passed":true},{"actual":[4,15],"check":"partial repair probe: priority before multiplier","expected":[19,20],"passed":false},{"actual":[5,12],"check":"second regression","expected":[19,20],"passed":false},{"actual":[4,15],"check":"normal control 1","expected":[4,15],"passed":true},{"actual":[null,10],"check":"normal control 2","expected":[null,10],"passed":true},{"actual":[null,10],"check":"normal control 3","expected":[null,10],"passed":true},{"actual":[null,10],"check":"normal control 4","expected":[null,10],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: priority before multiplier\", \"actual\": [38, 12], \"expected\": [38, 12], \"passed\": true}, {\"check\": \"partial repair probe: priority before multiplier\", \"actual\": [4, 15], \"expected\": [19, 20], \"passed\": false}, {\"check\": \"second regression\", \"actual\": [5, 12], \"expected\": [19, 20], \"passed\": false}, {\"check\": \"normal control 1\", \"actual\": [4, 15], \"expected\": [4, 15], \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": [null, 10], \"expected\": [null, 10], \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": [null, 10], \"expected\": [null, 10], \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": [null, 10], \"expected\": [null, 10], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":42.652,"exit_code":1,"observations":[{"actual":[35,20],"check":"regression: priority before multiplier","expected":[38,12],"passed":false},{"actual":[19,20],"check":"partial repair probe: priority before multiplier","expected":[19,20],"passed":true},{"actual":[19,20],"check":"second regression","expected":[19,20],"passed":true},{"actual":[4,15],"check":"normal control 1","expected":[4,15],"passed":true},{"actual":[null,10],"check":"normal control 2","expected":[null,10],"passed":true},{"actual":[null,10],"check":"normal control 3","expected":[null,10],"passed":true},{"actual":[null,10],"check":"normal control 4","expected":[null,10],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: priority before multiplier\", \"actual\": [35, 20], \"expected\": [38, 12], \"passed\": false}, {\"check\": \"partial repair probe: priority before multiplier\", \"actual\": [19, 20], \"expected\": [19, 20], \"passed\": true}, {\"check\": \"second regression\", \"actual\": [19, 20], \"expected\": [19, 20], \"passed\": true}, {\"check\": \"normal control 1\", \"actual\": [4, 15], \"expected\": [4, 15], \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": [null, 10], \"expected\": [null, 10], \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": [null, 10], \"expected\": [null, 10], \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": [null, 10], \"expected\": [null, 10], \"passed\": true}], \"passed\": false}\n"}},"member_only":{"stages":["fixed"],"fields":["implementations.fixed","verification.fixed","harness","repair"],"note":"The verified repair, its recorded checks, the repair description, and the scoring harness are available to members."}}