{"abstract":"At 2.5x surge the flat booking fee becomes 2.5 times larger.","category":"Ride-hailing fare and surge pricing","checks":7,"contract":"Cents throughout. Surge (tenths) multiplies only base+distance+time, rounded half up. A percentage promo discounts the surged amount (floor), capped at promo cap cents. The booking fee is added after the discount. Tax (basis points, rounded half up) applies to surged - discount + booking fee; tolls and airport fees are passed through untaxed and unsurged.","evaluation_group":"w2-ride-hailing-fare-surge-fare-composition","failed_approach":"Surging tolls into the core also double-charges them when they are passed through.","family":"w2-ride-hailing-fare-surge-fare-composition-booking-fee-surged","id":"FA-85381","implementations":{"attempt":{"sha256":"fbc7ca1392b17b8ee2b4c8d19c732a6fdfef14c2666b8f8b7508f0c910b4a1c0","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(parts, surge, promo, tax_bp):\n    def half_up(num, den):\n        return (num * 2 + den) // (den * 2)\n    core = parts['base'] + parts['distance'] + parts['time'] + parts['tolls']\n    surged = half_up(core * surge, 10)\n    disc = 0\n    if promo:\n        disc = min(surged * promo['pct'] // 100, promo['cap'])\n    sub = surged - disc + parts['booking_fee']\n    tax = half_up(sub * tax_bp, 10000)\n    total = sub + tax + parts['tolls'] + parts['airport_fee']\n    return {'surged': surged, 'discount': disc, 'tax': tax, 'total': total}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: booking fee surged',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 175, 'distance': 1778, 'time': 866, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 1000],\n   {'discount': 5, 'surged': 4191, 'tax': 436, 'total': 5297}),\n  ('partial repair probe: booking fee surged',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 245, 'distance': 1084, 'time': 371, 'tolls': 690}, 17,\n    {'cap': 5, 'pct': 15}, 625],\n   {'discount': 5, 'surged': 2899, 'tax': 196, 'total': 4025}),\n  ('second regression',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 245, 'distance': 2720, 'time': 873, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 0],\n   {'discount': 5, 'surged': 5765, 'tax': 0, 'total': 6005}),\n  ('normal control 1',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 0, 'distance': 2506, 'time': 646, 'tolls': 0}, 12,\n    {'cap': 500, 'pct': 20}, 625],\n   {'discount': 500, 'surged': 3962, 'tax': 216, 'total': 4178}),\n  ('normal control 2',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 0, 'distance': 1416, 'time': 612, 'tolls': 0}, 17,\n    {'cap': 500, 'pct': 20}, 825],\n   {'discount': 500, 'surged': 3703, 'tax': 264, 'total': 3967}),\n  ('normal control 3',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 709, 'time': 156, 'tolls': 0}, 25,\n    {'cap': 5, 'pct': 15}, 825],\n   {'discount': 5, 'surged': 2538, 'tax': 209, 'total': 2742}),\n  ('normal control 4',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 0, 'distance': 2828, 'time': 171, 'tolls': 0}, 17, None,\n    625],\n   {'discount': 0, 'surged': 5523, 'tax': 345, 'total': 6368})],\n [('regression: booking fee surged',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 175, 'distance': 1428, 'time': 657, 'tolls': 690}, 17,\n    None, 825],\n   {'discount': 0, 'surged': 3800, 'tax': 328, 'total': 4993}),\n  ('partial repair probe: booking fee surged',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 175, 'distance': 713, 'time': 323, 'tolls': 375}, 15, None,\n    625],\n   {'discount': 0, 'surged': 1779, 'tax': 122, 'total': 2451}),\n  ('second regression',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 245, 'distance': 998, 'time': 460, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 825],\n   {'discount': 5, 'surged': 2412, 'tax': 219, 'total': 3371}),\n  ('normal control 1',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 0, 'distance': 1810, 'time': 373, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 1000],\n   {'discount': 5, 'surged': 3650, 'tax': 365, 'total': 4510}),\n  ('normal control 2',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 0, 'distance': 1451, 'time': 384, 'tolls': 0}, 10,\n    {'cap': 5, 'pct': 15}, 0],\n   {'discount': 5, 'surged': 2085, 'tax': 0, 'total': 2080}),\n  ('normal control 3',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 0, 'distance': 765, 'time': 379, 'tolls': 0}, 15,\n    {'cap': 1000, 'pct': 50}, 0],\n   {'discount': 970, 'surged': 1941, 'tax': 0, 'total': 1471}),\n  ('normal control 4',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 0, 'distance': 1362, 'time': 592, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 0],\n   {'discount': 5, 'surged': 3306, 'tax': 0, 'total': 3301})],\n [('regression: booking fee surged',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 175, 'distance': 1423, 'time': 494, 'tolls': 375}, 12,\n    {'cap': 1000, 'pct': 50}, 625],\n   {'discount': 1000, 'surged': 2600, 'tax': 111, 'total': 2761}),\n  ('partial repair probe: booking fee surged',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 245, 'distance': 879, 'time': 747, 'tolls': 375}, 17,\n    {'cap': 5, 'pct': 15}, 1000],\n   {'discount': 5, 'surged': 3189, 'tax': 343, 'total': 4647}),\n  ('second regression',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 0, 'distance': 660, 'time': 472, 'tolls': 690}, 25,\n    {'cap': 500, 'pct': 20}, 625],\n   {'discount': 500, 'surged': 3455, 'tax': 185, 'total': 3830}),\n  ('normal control 1',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 0, 'distance': 2852, 'time': 398, 'tolls': 0}, 25,\n    {'cap': 5, 'pct': 15}, 1000],\n   {'discount': 5, 'surged': 8500, 'tax': 850, 'total': 9845}),\n  ('normal control 2',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 0, 'distance': 706, 'time': 406, 'tolls': 0}, 10, None,\n    1000],\n   {'discount': 0, 'surged': 1362, 'tax': 136, 'total': 1498}),\n  ('normal control 3',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 2282, 'time': 527, 'tolls': 0}, 10,\n    {'cap': 500, 'pct': 20}, 1000],\n   {'discount': 500, 'surged': 2959, 'tax': 246, 'total': 2705}),\n  ('normal control 4',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 294, 'time': 652, 'tolls': 0}, 25,\n    {'cap': 500, 'pct': 20}, 1000],\n   {'discount': 500, 'surged': 2740, 'tax': 224, 'total': 2464})],\n [('regression: booking fee surged',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 175, 'distance': 748, 'time': 320, 'tolls': 0}, 12, None,\n    625],\n   {'discount': 0, 'surged': 1582, 'tax': 110, 'total': 1867}),\n  ('partial repair probe: booking fee surged',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 336, 'time': 837, 'tolls': 375}, 25, None,\n    1000],\n   {'discount': 0, 'surged': 3308, 'tax': 331, 'total': 4014}),\n  ('second regression',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 175, 'distance': 1861, 'time': 607, 'tolls': 0}, 25,\n    {'cap': 500, 'pct': 20}, 625],\n   {'discount': 500, 'surged': 6795, 'tax': 404, 'total': 6874}),\n  ('normal control 1',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 251, 'time': 580, 'tolls': 0}, 15,\n    {'cap': 1000, 'pct': 50}, 625],\n   {'discount': 736, 'surged': 1472, 'tax': 46, 'total': 782}),\n  ('normal control 2',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 2510, 'time': 135, 'tolls': 0}, 15, None,\n    0],\n   {'discount': 0, 'surged': 4193, 'tax': 0, 'total': 4193}),\n  ('normal control 3',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 0, 'distance': 1629, 'time': 264, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 825],\n   {'discount': 5, 'surged': 3215, 'tax': 265, 'total': 3975}),\n  ('normal control 4',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 1916, 'time': 473, 'tolls': 0}, 10,\n    {'cap': 1000, 'pct': 50}, 1000],\n   {'discount': 1000, 'surged': 2539, 'tax': 154, 'total': 1693})],\n [('regression: booking fee surged',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 175, 'distance': 2485, 'time': 638, 'tolls': 0}, 12,\n    {'cap': 500, 'pct': 20}, 625],\n   {'discount': 500, 'surged': 3928, 'tax': 225, 'total': 4328}),\n  ('partial repair probe: booking fee surged',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 2937, 'time': 390, 'tolls': 690}, 17,\n    {'cap': 1000, 'pct': 50}, 1000],\n   {'discount': 1000, 'surged': 5911, 'tax': 491, 'total': 6092}),\n  ('second regression',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 175, 'distance': 2487, 'time': 507, 'tolls': 0}, 15,\n    {'cap': 500, 'pct': 20}, 0],\n   {'discount': 500, 'surged': 4716, 'tax': 0, 'total': 4391}),\n  ('normal control 1',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 0, 'distance': 2216, 'time': 595, 'tolls': 0}, 17,\n    {'cap': 1000, 'pct': 50}, 0],\n   {'discount': 1000, 'surged': 5204, 'tax': 0, 'total': 4704}),\n  ('normal control 2',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 2675, 'time': 665, 'tolls': 0}, 15,\n    {'cap': 1000, 'pct': 50}, 825],\n   {'discount': 1000, 'surged': 5235, 'tax': 349, 'total': 4584}),\n  ('normal control 3',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 0, 'distance': 2698, 'time': 462, 'tolls': 0}, 17,\n    {'cap': 1000, 'pct': 50}, 825],\n   {'discount': 1000, 'surged': 5797, 'tax': 396, 'total': 5693}),\n  ('normal control 4',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 1857, 'time': 629, 'tolls': 0}, 15,\n    {'cap': 500, 'pct': 20}, 0],\n   {'discount': 500, 'surged': 3954, 'tax': 0, 'total': 3454})]]\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":"942e290d8bde45c94aa8237e6abeafc6d551a2a468d184b96b0aa20f00518910","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(parts, surge, promo, tax_bp):\n    def half_up(num, den):\n        return (num * 2 + den) // (den * 2)\n    core = parts['base'] + parts['distance'] + parts['time'] + parts['booking_fee']\n    surged = half_up(core * surge, 10)\n    disc = 0\n    if promo:\n        disc = min(surged * promo['pct'] // 100, promo['cap'])\n    sub = surged - disc\n    tax = half_up(sub * tax_bp, 10000)\n    total = sub + tax + parts['tolls'] + parts['airport_fee']\n    return {'surged': surged, 'discount': disc, 'tax': tax, 'total': total}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: booking fee surged',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 175, 'distance': 1778, 'time': 866, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 1000],\n   {'discount': 5, 'surged': 4191, 'tax': 436, 'total': 5297}),\n  ('partial repair probe: booking fee surged',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 245, 'distance': 1084, 'time': 371, 'tolls': 690}, 17,\n    {'cap': 5, 'pct': 15}, 625],\n   {'discount': 5, 'surged': 2899, 'tax': 196, 'total': 4025}),\n  ('second regression',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 245, 'distance': 2720, 'time': 873, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 0],\n   {'discount': 5, 'surged': 5765, 'tax': 0, 'total': 6005}),\n  ('normal control 1',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 0, 'distance': 2506, 'time': 646, 'tolls': 0}, 12,\n    {'cap': 500, 'pct': 20}, 625],\n   {'discount': 500, 'surged': 3962, 'tax': 216, 'total': 4178}),\n  ('normal control 2',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 0, 'distance': 1416, 'time': 612, 'tolls': 0}, 17,\n    {'cap': 500, 'pct': 20}, 825],\n   {'discount': 500, 'surged': 3703, 'tax': 264, 'total': 3967}),\n  ('normal control 3',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 709, 'time': 156, 'tolls': 0}, 25,\n    {'cap': 5, 'pct': 15}, 825],\n   {'discount': 5, 'surged': 2538, 'tax': 209, 'total': 2742}),\n  ('normal control 4',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 0, 'distance': 2828, 'time': 171, 'tolls': 0}, 17, None,\n    625],\n   {'discount': 0, 'surged': 5523, 'tax': 345, 'total': 6368})],\n [('regression: booking fee surged',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 175, 'distance': 1428, 'time': 657, 'tolls': 690}, 17,\n    None, 825],\n   {'discount': 0, 'surged': 3800, 'tax': 328, 'total': 4993}),\n  ('partial repair probe: booking fee surged',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 175, 'distance': 713, 'time': 323, 'tolls': 375}, 15, None,\n    625],\n   {'discount': 0, 'surged': 1779, 'tax': 122, 'total': 2451}),\n  ('second regression',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 245, 'distance': 998, 'time': 460, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 825],\n   {'discount': 5, 'surged': 2412, 'tax': 219, 'total': 3371}),\n  ('normal control 1',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 0, 'distance': 1810, 'time': 373, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 1000],\n   {'discount': 5, 'surged': 3650, 'tax': 365, 'total': 4510}),\n  ('normal control 2',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 0, 'distance': 1451, 'time': 384, 'tolls': 0}, 10,\n    {'cap': 5, 'pct': 15}, 0],\n   {'discount': 5, 'surged': 2085, 'tax': 0, 'total': 2080}),\n  ('normal control 3',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 0, 'distance': 765, 'time': 379, 'tolls': 0}, 15,\n    {'cap': 1000, 'pct': 50}, 0],\n   {'discount': 970, 'surged': 1941, 'tax': 0, 'total': 1471}),\n  ('normal control 4',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 0, 'distance': 1362, 'time': 592, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 0],\n   {'discount': 5, 'surged': 3306, 'tax': 0, 'total': 3301})],\n [('regression: booking fee surged',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 175, 'distance': 1423, 'time': 494, 'tolls': 375}, 12,\n    {'cap': 1000, 'pct': 50}, 625],\n   {'discount': 1000, 'surged': 2600, 'tax': 111, 'total': 2761}),\n  ('partial repair probe: booking fee surged',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 245, 'distance': 879, 'time': 747, 'tolls': 375}, 17,\n    {'cap': 5, 'pct': 15}, 1000],\n   {'discount': 5, 'surged': 3189, 'tax': 343, 'total': 4647}),\n  ('second regression',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 0, 'distance': 660, 'time': 472, 'tolls': 690}, 25,\n    {'cap': 500, 'pct': 20}, 625],\n   {'discount': 500, 'surged': 3455, 'tax': 185, 'total': 3830}),\n  ('normal control 1',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 0, 'distance': 2852, 'time': 398, 'tolls': 0}, 25,\n    {'cap': 5, 'pct': 15}, 1000],\n   {'discount': 5, 'surged': 8500, 'tax': 850, 'total': 9845}),\n  ('normal control 2',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 0, 'distance': 706, 'time': 406, 'tolls': 0}, 10, None,\n    1000],\n   {'discount': 0, 'surged': 1362, 'tax': 136, 'total': 1498}),\n  ('normal control 3',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 2282, 'time': 527, 'tolls': 0}, 10,\n    {'cap': 500, 'pct': 20}, 1000],\n   {'discount': 500, 'surged': 2959, 'tax': 246, 'total': 2705}),\n  ('normal control 4',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 294, 'time': 652, 'tolls': 0}, 25,\n    {'cap': 500, 'pct': 20}, 1000],\n   {'discount': 500, 'surged': 2740, 'tax': 224, 'total': 2464})],\n [('regression: booking fee surged',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 175, 'distance': 748, 'time': 320, 'tolls': 0}, 12, None,\n    625],\n   {'discount': 0, 'surged': 1582, 'tax': 110, 'total': 1867}),\n  ('partial repair probe: booking fee surged',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 336, 'time': 837, 'tolls': 375}, 25, None,\n    1000],\n   {'discount': 0, 'surged': 3308, 'tax': 331, 'total': 4014}),\n  ('second regression',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 175, 'distance': 1861, 'time': 607, 'tolls': 0}, 25,\n    {'cap': 500, 'pct': 20}, 625],\n   {'discount': 500, 'surged': 6795, 'tax': 404, 'total': 6874}),\n  ('normal control 1',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 251, 'time': 580, 'tolls': 0}, 15,\n    {'cap': 1000, 'pct': 50}, 625],\n   {'discount': 736, 'surged': 1472, 'tax': 46, 'total': 782}),\n  ('normal control 2',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 2510, 'time': 135, 'tolls': 0}, 15, None,\n    0],\n   {'discount': 0, 'surged': 4193, 'tax': 0, 'total': 4193}),\n  ('normal control 3',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 0, 'distance': 1629, 'time': 264, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 825],\n   {'discount': 5, 'surged': 3215, 'tax': 265, 'total': 3975}),\n  ('normal control 4',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 1916, 'time': 473, 'tolls': 0}, 10,\n    {'cap': 1000, 'pct': 50}, 1000],\n   {'discount': 1000, 'surged': 2539, 'tax': 154, 'total': 1693})],\n [('regression: booking fee surged',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 175, 'distance': 2485, 'time': 638, 'tolls': 0}, 12,\n    {'cap': 500, 'pct': 20}, 625],\n   {'discount': 500, 'surged': 3928, 'tax': 225, 'total': 4328}),\n  ('partial repair probe: booking fee surged',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 2937, 'time': 390, 'tolls': 690}, 17,\n    {'cap': 1000, 'pct': 50}, 1000],\n   {'discount': 1000, 'surged': 5911, 'tax': 491, 'total': 6092}),\n  ('second regression',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 175, 'distance': 2487, 'time': 507, 'tolls': 0}, 15,\n    {'cap': 500, 'pct': 20}, 0],\n   {'discount': 500, 'surged': 4716, 'tax': 0, 'total': 4391}),\n  ('normal control 1',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 0, 'distance': 2216, 'time': 595, 'tolls': 0}, 17,\n    {'cap': 1000, 'pct': 50}, 0],\n   {'discount': 1000, 'surged': 5204, 'tax': 0, 'total': 4704}),\n  ('normal control 2',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 2675, 'time': 665, 'tolls': 0}, 15,\n    {'cap': 1000, 'pct': 50}, 825],\n   {'discount': 1000, 'surged': 5235, 'tax': 349, 'total': 4584}),\n  ('normal control 3',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 0, 'distance': 2698, 'time': 462, 'tolls': 0}, 17,\n    {'cap': 1000, 'pct': 50}, 825],\n   {'discount': 1000, 'surged': 5797, 'tax': 396, 'total': 5693}),\n  ('normal control 4',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 1857, 'time': 629, 'tolls': 0}, 15,\n    {'cap': 500, 'pct': 20}, 0],\n   {'discount': 500, 'surged': 3954, 'tax': 0, 'total': 3454})]]\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"},"fixed":{"sha256":"d26f991998558c82ef34e19ebe46d0ab56a17347790ee5e458fadbf7558e3751","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(parts, surge, promo, tax_bp):\n    def half_up(num, den):\n        return (num * 2 + den) // (den * 2)\n    core = parts['base'] + parts['distance'] + parts['time']\n    surged = half_up(core * surge, 10)\n    disc = 0\n    if promo:\n        disc = min(surged * promo['pct'] // 100, promo['cap'])\n    sub = surged - disc + parts['booking_fee']\n    tax = half_up(sub * tax_bp, 10000)\n    total = sub + tax + parts['tolls'] + parts['airport_fee']\n    return {'surged': surged, 'discount': disc, 'tax': tax, 'total': total}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: booking fee surged',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 175, 'distance': 1778, 'time': 866, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 1000],\n   {'discount': 5, 'surged': 4191, 'tax': 436, 'total': 5297}),\n  ('partial repair probe: booking fee surged',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 245, 'distance': 1084, 'time': 371, 'tolls': 690}, 17,\n    {'cap': 5, 'pct': 15}, 625],\n   {'discount': 5, 'surged': 2899, 'tax': 196, 'total': 4025}),\n  ('second regression',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 245, 'distance': 2720, 'time': 873, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 0],\n   {'discount': 5, 'surged': 5765, 'tax': 0, 'total': 6005}),\n  ('normal control 1',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 0, 'distance': 2506, 'time': 646, 'tolls': 0}, 12,\n    {'cap': 500, 'pct': 20}, 625],\n   {'discount': 500, 'surged': 3962, 'tax': 216, 'total': 4178}),\n  ('normal control 2',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 0, 'distance': 1416, 'time': 612, 'tolls': 0}, 17,\n    {'cap': 500, 'pct': 20}, 825],\n   {'discount': 500, 'surged': 3703, 'tax': 264, 'total': 3967}),\n  ('normal control 3',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 709, 'time': 156, 'tolls': 0}, 25,\n    {'cap': 5, 'pct': 15}, 825],\n   {'discount': 5, 'surged': 2538, 'tax': 209, 'total': 2742}),\n  ('normal control 4',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 0, 'distance': 2828, 'time': 171, 'tolls': 0}, 17, None,\n    625],\n   {'discount': 0, 'surged': 5523, 'tax': 345, 'total': 6368})],\n [('regression: booking fee surged',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 175, 'distance': 1428, 'time': 657, 'tolls': 690}, 17,\n    None, 825],\n   {'discount': 0, 'surged': 3800, 'tax': 328, 'total': 4993}),\n  ('partial repair probe: booking fee surged',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 175, 'distance': 713, 'time': 323, 'tolls': 375}, 15, None,\n    625],\n   {'discount': 0, 'surged': 1779, 'tax': 122, 'total': 2451}),\n  ('second regression',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 245, 'distance': 998, 'time': 460, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 825],\n   {'discount': 5, 'surged': 2412, 'tax': 219, 'total': 3371}),\n  ('normal control 1',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 0, 'distance': 1810, 'time': 373, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 1000],\n   {'discount': 5, 'surged': 3650, 'tax': 365, 'total': 4510}),\n  ('normal control 2',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 0, 'distance': 1451, 'time': 384, 'tolls': 0}, 10,\n    {'cap': 5, 'pct': 15}, 0],\n   {'discount': 5, 'surged': 2085, 'tax': 0, 'total': 2080}),\n  ('normal control 3',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 0, 'distance': 765, 'time': 379, 'tolls': 0}, 15,\n    {'cap': 1000, 'pct': 50}, 0],\n   {'discount': 970, 'surged': 1941, 'tax': 0, 'total': 1471}),\n  ('normal control 4',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 0, 'distance': 1362, 'time': 592, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 0],\n   {'discount': 5, 'surged': 3306, 'tax': 0, 'total': 3301})],\n [('regression: booking fee surged',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 175, 'distance': 1423, 'time': 494, 'tolls': 375}, 12,\n    {'cap': 1000, 'pct': 50}, 625],\n   {'discount': 1000, 'surged': 2600, 'tax': 111, 'total': 2761}),\n  ('partial repair probe: booking fee surged',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 245, 'distance': 879, 'time': 747, 'tolls': 375}, 17,\n    {'cap': 5, 'pct': 15}, 1000],\n   {'discount': 5, 'surged': 3189, 'tax': 343, 'total': 4647}),\n  ('second regression',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 0, 'distance': 660, 'time': 472, 'tolls': 690}, 25,\n    {'cap': 500, 'pct': 20}, 625],\n   {'discount': 500, 'surged': 3455, 'tax': 185, 'total': 3830}),\n  ('normal control 1',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 0, 'distance': 2852, 'time': 398, 'tolls': 0}, 25,\n    {'cap': 5, 'pct': 15}, 1000],\n   {'discount': 5, 'surged': 8500, 'tax': 850, 'total': 9845}),\n  ('normal control 2',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 0, 'distance': 706, 'time': 406, 'tolls': 0}, 10, None,\n    1000],\n   {'discount': 0, 'surged': 1362, 'tax': 136, 'total': 1498}),\n  ('normal control 3',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 2282, 'time': 527, 'tolls': 0}, 10,\n    {'cap': 500, 'pct': 20}, 1000],\n   {'discount': 500, 'surged': 2959, 'tax': 246, 'total': 2705}),\n  ('normal control 4',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 294, 'time': 652, 'tolls': 0}, 25,\n    {'cap': 500, 'pct': 20}, 1000],\n   {'discount': 500, 'surged': 2740, 'tax': 224, 'total': 2464})],\n [('regression: booking fee surged',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 175, 'distance': 748, 'time': 320, 'tolls': 0}, 12, None,\n    625],\n   {'discount': 0, 'surged': 1582, 'tax': 110, 'total': 1867}),\n  ('partial repair probe: booking fee surged',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 336, 'time': 837, 'tolls': 375}, 25, None,\n    1000],\n   {'discount': 0, 'surged': 3308, 'tax': 331, 'total': 4014}),\n  ('second regression',\n   [{'airport_fee': 0, 'base': 250, 'booking_fee': 175, 'distance': 1861, 'time': 607, 'tolls': 0}, 25,\n    {'cap': 500, 'pct': 20}, 625],\n   {'discount': 500, 'surged': 6795, 'tax': 404, 'total': 6874}),\n  ('normal control 1',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 251, 'time': 580, 'tolls': 0}, 15,\n    {'cap': 1000, 'pct': 50}, 625],\n   {'discount': 736, 'surged': 1472, 'tax': 46, 'total': 782}),\n  ('normal control 2',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 2510, 'time': 135, 'tolls': 0}, 15, None,\n    0],\n   {'discount': 0, 'surged': 4193, 'tax': 0, 'total': 4193}),\n  ('normal control 3',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 0, 'distance': 1629, 'time': 264, 'tolls': 0}, 15,\n    {'cap': 5, 'pct': 15}, 825],\n   {'discount': 5, 'surged': 3215, 'tax': 265, 'total': 3975}),\n  ('normal control 4',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 1916, 'time': 473, 'tolls': 0}, 10,\n    {'cap': 1000, 'pct': 50}, 1000],\n   {'discount': 1000, 'surged': 2539, 'tax': 154, 'total': 1693})],\n [('regression: booking fee surged',\n   [{'airport_fee': 500, 'base': 150, 'booking_fee': 175, 'distance': 2485, 'time': 638, 'tolls': 0}, 12,\n    {'cap': 500, 'pct': 20}, 625],\n   {'discount': 500, 'surged': 3928, 'tax': 225, 'total': 4328}),\n  ('partial repair probe: booking fee surged',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 2937, 'time': 390, 'tolls': 690}, 17,\n    {'cap': 1000, 'pct': 50}, 1000],\n   {'discount': 1000, 'surged': 5911, 'tax': 491, 'total': 6092}),\n  ('second regression',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 175, 'distance': 2487, 'time': 507, 'tolls': 0}, 15,\n    {'cap': 500, 'pct': 20}, 0],\n   {'discount': 500, 'surged': 4716, 'tax': 0, 'total': 4391}),\n  ('normal control 1',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 0, 'distance': 2216, 'time': 595, 'tolls': 0}, 17,\n    {'cap': 1000, 'pct': 50}, 0],\n   {'discount': 1000, 'surged': 5204, 'tax': 0, 'total': 4704}),\n  ('normal control 2',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 2675, 'time': 665, 'tolls': 0}, 15,\n    {'cap': 1000, 'pct': 50}, 825],\n   {'discount': 1000, 'surged': 5235, 'tax': 349, 'total': 4584}),\n  ('normal control 3',\n   [{'airport_fee': 500, 'base': 250, 'booking_fee': 0, 'distance': 2698, 'time': 462, 'tolls': 0}, 17,\n    {'cap': 1000, 'pct': 50}, 825],\n   {'discount': 1000, 'surged': 5797, 'tax': 396, 'total': 5693}),\n  ('normal control 4',\n   [{'airport_fee': 0, 'base': 150, 'booking_fee': 0, 'distance': 1857, 'time': 629, 'tolls': 0}, 15,\n    {'cap': 500, 'pct': 20}, 0],\n   {'discount': 500, 'surged': 3954, 'tax': 0, 'total': 3454})]]\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-fare-composition-booking-fee-surged","generated_at":"2026-09-29T14:50:39.847051+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.","repair":"Surge only base, distance and time; add the booking fee afterwards.","root_cause":"The booking fee is folded into the surged core.","sha256":"ea1aceb181855ca6b737543651a716f861eb12e4d56e769dad73f9d423367220","title":"Surge multiplier applied to the booking fee · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":40.821,"exit_code":1,"observations":[{"actual":{"discount":5,"surged":4191,"tax":436,"total":5297},"check":"regression: booking fee surged","expected":{"discount":5,"surged":4191,"tax":436,"total":5297},"passed":true},{"actual":{"discount":5,"surged":4072,"tax":270,"total":5272},"check":"partial repair probe: booking fee surged","expected":{"discount":5,"surged":2899,"tax":196,"total":4025},"passed":false},{"actual":{"discount":5,"surged":5765,"tax":0,"total":6005},"check":"second regression","expected":{"discount":5,"surged":5765,"tax":0,"total":6005},"passed":true},{"actual":{"discount":500,"surged":3962,"tax":216,"total":4178},"check":"normal control 1","expected":{"discount":500,"surged":3962,"tax":216,"total":4178},"passed":true},{"actual":{"discount":500,"surged":3703,"tax":264,"total":3967},"check":"normal control 2","expected":{"discount":500,"surged":3703,"tax":264,"total":3967},"passed":true},{"actual":{"discount":5,"surged":2538,"tax":209,"total":2742},"check":"normal control 3","expected":{"discount":5,"surged":2538,"tax":209,"total":2742},"passed":true},{"actual":{"discount":0,"surged":5523,"tax":345,"total":6368},"check":"normal control 4","expected":{"discount":0,"surged":5523,"tax":345,"total":6368},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: booking fee surged\", \"actual\": {\"surged\": 4191, \"discount\": 5, \"tax\": 436, \"total\": 5297}, \"expected\": {\"discount\": 5, \"surged\": 4191, \"tax\": 436, \"total\": 5297}, \"passed\": true}, {\"check\": \"partial repair probe: booking fee surged\", \"actual\": {\"surged\": 4072, \"discount\": 5, \"tax\": 270, \"total\": 5272}, \"expected\": {\"discount\": 5, \"surged\": 2899, \"tax\": 196, \"total\": 4025}, \"passed\": false}, {\"check\": \"second regression\", \"actual\": {\"surged\": 5765, \"discount\": 5, \"tax\": 0, \"total\": 6005}, \"expected\": {\"discount\": 5, \"surged\": 5765, \"tax\": 0, \"total\": 6005}, \"passed\": true}, {\"check\": \"normal control 1\", \"actual\": {\"surged\": 3962, \"discount\": 500, \"tax\": 216, \"total\": 4178}, \"expected\": {\"discount\": 500, \"surged\": 3962, \"tax\": 216, \"total\": 4178}, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": {\"surged\": 3703, \"discount\": 500, \"tax\": 264, \"total\": 3967}, \"expected\": {\"discount\": 500, \"surged\": 3703, \"tax\": 264, \"total\": 3967}, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": {\"surged\": 2538, \"discount\": 5, \"tax\": 209, \"total\": 2742}, \"expected\": {\"discount\": 5, \"surged\": 2538, \"tax\": 209, \"total\": 2742}, \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": {\"surged\": 5523, \"discount\": 0, \"tax\": 345, \"total\": 6368}, \"expected\": {\"discount\": 0, \"surged\": 5523, \"tax\": 345, \"total\": 6368}, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":40.107,"exit_code":1,"observations":[{"actual":{"discount":5,"surged":4454,"tax":445,"total":5394},"check":"regression: booking fee surged","expected":{"discount":5,"surged":4191,"tax":436,"total":5297},"passed":false},{"actual":{"discount":5,"surged":3315,"tax":207,"total":4207},"check":"partial repair probe: booking fee surged","expected":{"discount":5,"surged":2899,"tax":196,"total":4025},"passed":false},{"actual":{"discount":5,"surged":6132,"tax":0,"total":6127},"check":"second regression","expected":{"discount":5,"surged":5765,"tax":0,"total":6005},"passed":false},{"actual":{"discount":500,"surged":3962,"tax":216,"total":4178},"check":"normal control 1","expected":{"discount":500,"surged":3962,"tax":216,"total":4178},"passed":true},{"actual":{"discount":500,"surged":3703,"tax":264,"total":3967},"check":"normal control 2","expected":{"discount":500,"surged":3703,"tax":264,"total":3967},"passed":true},{"actual":{"discount":5,"surged":2538,"tax":209,"total":2742},"check":"normal control 3","expected":{"discount":5,"surged":2538,"tax":209,"total":2742},"passed":true},{"actual":{"discount":0,"surged":5523,"tax":345,"total":6368},"check":"normal control 4","expected":{"discount":0,"surged":5523,"tax":345,"total":6368},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: booking fee surged\", \"actual\": {\"surged\": 4454, \"discount\": 5, \"tax\": 445, \"total\": 5394}, \"expected\": {\"discount\": 5, \"surged\": 4191, \"tax\": 436, \"total\": 5297}, \"passed\": false}, {\"check\": \"partial repair probe: booking fee surged\", \"actual\": {\"surged\": 3315, \"discount\": 5, \"tax\": 207, \"total\": 4207}, \"expected\": {\"discount\": 5, \"surged\": 2899, \"tax\": 196, \"total\": 4025}, \"passed\": false}, {\"check\": \"second regression\", \"actual\": {\"surged\": 6132, \"discount\": 5, \"tax\": 0, \"total\": 6127}, \"expected\": {\"discount\": 5, \"surged\": 5765, \"tax\": 0, \"total\": 6005}, \"passed\": false}, {\"check\": \"normal control 1\", \"actual\": {\"surged\": 3962, \"discount\": 500, \"tax\": 216, \"total\": 4178}, \"expected\": {\"discount\": 500, \"surged\": 3962, \"tax\": 216, \"total\": 4178}, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": {\"surged\": 3703, \"discount\": 500, \"tax\": 264, \"total\": 3967}, \"expected\": {\"discount\": 500, \"surged\": 3703, \"tax\": 264, \"total\": 3967}, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": {\"surged\": 2538, \"discount\": 5, \"tax\": 209, \"total\": 2742}, \"expected\": {\"discount\": 5, \"surged\": 2538, \"tax\": 209, \"total\": 2742}, \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": {\"surged\": 5523, \"discount\": 0, \"tax\": 345, \"total\": 6368}, \"expected\": {\"discount\": 0, \"surged\": 5523, \"tax\": 345, \"total\": 6368}, \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":42.979,"exit_code":0,"observations":[{"actual":{"discount":5,"surged":4191,"tax":436,"total":5297},"check":"regression: booking fee surged","expected":{"discount":5,"surged":4191,"tax":436,"total":5297},"passed":true},{"actual":{"discount":5,"surged":2899,"tax":196,"total":4025},"check":"partial repair probe: booking fee surged","expected":{"discount":5,"surged":2899,"tax":196,"total":4025},"passed":true},{"actual":{"discount":5,"surged":5765,"tax":0,"total":6005},"check":"second regression","expected":{"discount":5,"surged":5765,"tax":0,"total":6005},"passed":true},{"actual":{"discount":500,"surged":3962,"tax":216,"total":4178},"check":"normal control 1","expected":{"discount":500,"surged":3962,"tax":216,"total":4178},"passed":true},{"actual":{"discount":500,"surged":3703,"tax":264,"total":3967},"check":"normal control 2","expected":{"discount":500,"surged":3703,"tax":264,"total":3967},"passed":true},{"actual":{"discount":5,"surged":2538,"tax":209,"total":2742},"check":"normal control 3","expected":{"discount":5,"surged":2538,"tax":209,"total":2742},"passed":true},{"actual":{"discount":0,"surged":5523,"tax":345,"total":6368},"check":"normal control 4","expected":{"discount":0,"surged":5523,"tax":345,"total":6368},"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: booking fee surged\", \"actual\": {\"surged\": 4191, \"discount\": 5, \"tax\": 436, \"total\": 5297}, \"expected\": {\"discount\": 5, \"surged\": 4191, \"tax\": 436, \"total\": 5297}, \"passed\": true}, {\"check\": \"partial repair probe: booking fee surged\", \"actual\": {\"surged\": 2899, \"discount\": 5, \"tax\": 196, \"total\": 4025}, \"expected\": {\"discount\": 5, \"surged\": 2899, \"tax\": 196, \"total\": 4025}, \"passed\": true}, {\"check\": \"second regression\", \"actual\": {\"surged\": 5765, \"discount\": 5, \"tax\": 0, \"total\": 6005}, \"expected\": {\"discount\": 5, \"surged\": 5765, \"tax\": 0, \"total\": 6005}, \"passed\": true}, {\"check\": \"normal control 1\", \"actual\": {\"surged\": 3962, \"discount\": 500, \"tax\": 216, \"total\": 4178}, \"expected\": {\"discount\": 500, \"surged\": 3962, \"tax\": 216, \"total\": 4178}, \"passed\": true}, {\"check\": \"normal control 2\", \"actual\": {\"surged\": 3703, \"discount\": 500, \"tax\": 264, \"total\": 3967}, \"expected\": {\"discount\": 500, \"surged\": 3703, \"tax\": 264, \"total\": 3967}, \"passed\": true}, {\"check\": \"normal control 3\", \"actual\": {\"surged\": 2538, \"discount\": 5, \"tax\": 209, \"total\": 2742}, \"expected\": {\"discount\": 5, \"surged\": 2538, \"tax\": 209, \"total\": 2742}, \"passed\": true}, {\"check\": \"normal control 4\", \"actual\": {\"surged\": 5523, \"discount\": 0, \"tax\": 345, \"total\": 6368}, \"expected\": {\"discount\": 0, \"surged\": 5523, \"tax\": 345, \"total\": 6368}, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}