{"abstract":"A purchase exactly at standard is reported as unfavorable.","category":"Inventory cost layering","checks":7,"contract":"Input {std_price, std_qty (per good unit), good_units, scrap_units, purchases:[[qty,total_cost]], used}. The price variance is isolated at purchase: sum(total_cost - qty*std_price). Standard allowed quantity is std_qty*good_units (scrap earns no allowance). Usage variance = (used - allowed)*std_price. Labels: positive \"U\", negative \"F\", zero \"-\". Return {ppv, ppv_label, usage, usage_label, allowed}.","evaluation_group":"w2-inventory-cost-layering-standard-cost-variances","failed_approach":"Mapping zero to F just moves the mislabel.","family":"w2-inventory-cost-layering-standard-cost-variances-zero-variance-label","id":"FA-60111","implementations":{"attempt":{"sha256":"1ed5e3efda026a3d42efb7cec045cbc984518ce84d3af32eaf728a6d7a25c2df","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    ppv = sum(tc - q * x['std_price'] for q, tc in x['purchases'])\n    allowed = x['std_qty'] * x['good_units']\n    usage = (x['used'] - allowed) * x['std_price']\n    lab = lambda v: 'U' if v > 0 else 'F'\n    return {'ppv': ppv, 'ppv_label': lab(ppv), 'usage': usage, 'usage_label': lab(usage), 'allowed': allowed}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['unfavorable price', {'std_price': 200, 'std_qty': 3, 'good_units': 10, 'scrap_units': 1, 'purchases': [[40, 8401]], 'used': 33}, {'ppv': 401, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 30}], ['favorable usage', {'std_price': 150, 'std_qty': 2, 'good_units': 21, 'scrap_units': 0, 'purchases': [[50, 7000]], 'used': 40}, {'ppv': -500, 'ppv_label': 'F', 'usage': -300, 'usage_label': 'F', 'allowed': 42}], ['two purchases', {'std_price': 100, 'std_qty': 4, 'good_units': 5, 'scrap_units': 2, 'purchases': [[10, 900], [10, 1301]], 'used': 26}, {'ppv': 201, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 20}], ['exact standard', {'std_price': 75, 'std_qty': 1, 'good_units': 8, 'scrap_units': 0, 'purchases': [[8, 600]], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 8}], ['scrap heavy', {'std_price': 50, 'std_qty': 5, 'good_units': 6, 'scrap_units': 4, 'purchases': [[60, 3300], [5, 200]], 'used': 45}, {'ppv': 250, 'ppv_label': 'U', 'usage': 750, 'usage_label': 'U', 'allowed': 30}], ['no purchases', {'std_price': 90, 'std_qty': 2, 'good_units': 3, 'scrap_units': 1, 'purchases': [], 'used': 6}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 6}], ['mixed signs', {'std_price': 120, 'std_qty': 3, 'good_units': 4, 'scrap_units': 1, 'purchases': [[20, 2110], [5, 700]], 'used': 11}, {'ppv': -190, 'ppv_label': 'F', 'usage': -120, 'usage_label': 'F', 'allowed': 12}]], [['unfavorable price', {'std_price': 200, 'std_qty': 3, 'good_units': 10, 'scrap_units': 1, 'purchases': [[40, 8402]], 'used': 33}, {'ppv': 402, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 30}], ['favorable usage', {'std_price': 150, 'std_qty': 2, 'good_units': 22, 'scrap_units': 0, 'purchases': [[50, 7000]], 'used': 42}, {'ppv': -500, 'ppv_label': 'F', 'usage': -300, 'usage_label': 'F', 'allowed': 44}], ['two purchases', {'std_price': 100, 'std_qty': 4, 'good_units': 5, 'scrap_units': 2, 'purchases': [[10, 900], [10, 1302]], 'used': 26}, {'ppv': 202, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 20}], ['exact standard', {'std_price': 75, 'std_qty': 1, 'good_units': 8, 'scrap_units': 0, 'purchases': [[8, 600]], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 8}], ['scrap heavy', {'std_price': 50, 'std_qty': 5, 'good_units': 6, 'scrap_units': 5, 'purchases': [[60, 3300], [5, 200]], 'used': 45}, {'ppv': 250, 'ppv_label': 'U', 'usage': 750, 'usage_label': 'U', 'allowed': 30}], ['no purchases', {'std_price': 90, 'std_qty': 2, 'good_units': 3, 'scrap_units': 1, 'purchases': [], 'used': 7}, {'ppv': 0, 'ppv_label': '-', 'usage': 90, 'usage_label': 'U', 'allowed': 6}], ['mixed signs', {'std_price': 120, 'std_qty': 3, 'good_units': 4, 'scrap_units': 1, 'purchases': [[20, 2120], [5, 700]], 'used': 11}, {'ppv': -180, 'ppv_label': 'F', 'usage': -120, 'usage_label': 'F', 'allowed': 12}]], [['unfavorable price', {'std_price': 200, 'std_qty': 3, 'good_units': 10, 'scrap_units': 1, 'purchases': [[40, 8403]], 'used': 33}, {'ppv': 403, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 30}], ['favorable usage', {'std_price': 150, 'std_qty': 2, 'good_units': 23, 'scrap_units': 0, 'purchases': [[50, 7000]], 'used': 44}, {'ppv': -500, 'ppv_label': 'F', 'usage': -300, 'usage_label': 'F', 'allowed': 46}], ['two purchases', {'std_price': 100, 'std_qty': 4, 'good_units': 5, 'scrap_units': 2, 'purchases': [[10, 900], [10, 1303]], 'used': 26}, {'ppv': 203, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 20}], ['exact standard', {'std_price': 75, 'std_qty': 1, 'good_units': 8, 'scrap_units': 0, 'purchases': [[8, 600]], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 8}], ['scrap heavy', {'std_price': 50, 'std_qty': 5, 'good_units': 6, 'scrap_units': 6, 'purchases': [[60, 3300], [5, 200]], 'used': 45}, {'ppv': 250, 'ppv_label': 'U', 'usage': 750, 'usage_label': 'U', 'allowed': 30}], ['no purchases', {'std_price': 90, 'std_qty': 2, 'good_units': 3, 'scrap_units': 1, 'purchases': [], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 180, 'usage_label': 'U', 'allowed': 6}], ['mixed signs', {'std_price': 120, 'std_qty': 3, 'good_units': 4, 'scrap_units': 1, 'purchases': [[20, 2130], [5, 700]], 'used': 11}, {'ppv': -170, 'ppv_label': 'F', 'usage': -120, 'usage_label': 'F', 'allowed': 12}]], [['unfavorable price', {'std_price': 200, 'std_qty': 3, 'good_units': 10, 'scrap_units': 1, 'purchases': [[40, 8404]], 'used': 33}, {'ppv': 404, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 30}], ['favorable usage', {'std_price': 150, 'std_qty': 2, 'good_units': 24, 'scrap_units': 0, 'purchases': [[50, 7000]], 'used': 46}, {'ppv': -500, 'ppv_label': 'F', 'usage': -300, 'usage_label': 'F', 'allowed': 48}], ['two purchases', {'std_price': 100, 'std_qty': 4, 'good_units': 5, 'scrap_units': 2, 'purchases': [[10, 900], [10, 1304]], 'used': 26}, {'ppv': 204, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 20}], ['exact standard', {'std_price': 75, 'std_qty': 1, 'good_units': 8, 'scrap_units': 0, 'purchases': [[8, 600]], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 8}], ['scrap heavy', {'std_price': 50, 'std_qty': 5, 'good_units': 6, 'scrap_units': 7, 'purchases': [[60, 3300], [5, 200]], 'used': 45}, {'ppv': 250, 'ppv_label': 'U', 'usage': 750, 'usage_label': 'U', 'allowed': 30}], ['no purchases', {'std_price': 90, 'std_qty': 2, 'good_units': 3, 'scrap_units': 1, 'purchases': [], 'used': 9}, {'ppv': 0, 'ppv_label': '-', 'usage': 270, 'usage_label': 'U', 'allowed': 6}], ['mixed signs', {'std_price': 120, 'std_qty': 3, 'good_units': 4, 'scrap_units': 1, 'purchases': [[20, 2140], [5, 700]], 'used': 11}, {'ppv': -160, 'ppv_label': 'F', 'usage': -120, 'usage_label': 'F', 'allowed': 12}]], [['unfavorable price', {'std_price': 200, 'std_qty': 3, 'good_units': 10, 'scrap_units': 1, 'purchases': [[40, 8405]], 'used': 33}, {'ppv': 405, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 30}], ['favorable usage', {'std_price': 150, 'std_qty': 2, 'good_units': 25, 'scrap_units': 0, 'purchases': [[50, 7000]], 'used': 48}, {'ppv': -500, 'ppv_label': 'F', 'usage': -300, 'usage_label': 'F', 'allowed': 50}], ['two purchases', {'std_price': 100, 'std_qty': 4, 'good_units': 5, 'scrap_units': 2, 'purchases': [[10, 900], [10, 1305]], 'used': 26}, {'ppv': 205, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 20}], ['exact standard', {'std_price': 75, 'std_qty': 1, 'good_units': 8, 'scrap_units': 0, 'purchases': [[8, 600]], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 8}], ['scrap heavy', {'std_price': 50, 'std_qty': 5, 'good_units': 6, 'scrap_units': 8, 'purchases': [[60, 3300], [5, 200]], 'used': 45}, {'ppv': 250, 'ppv_label': 'U', 'usage': 750, 'usage_label': 'U', 'allowed': 30}], ['no purchases', {'std_price': 90, 'std_qty': 2, 'good_units': 3, 'scrap_units': 1, 'purchases': [], 'used': 10}, {'ppv': 0, 'ppv_label': '-', 'usage': 360, 'usage_label': 'U', 'allowed': 6}], ['mixed signs', {'std_price': 120, 'std_qty': 3, 'good_units': 4, 'scrap_units': 1, 'purchases': [[20, 2150], [5, 700]], 'used': 11}, {'ppv': -150, 'ppv_label': 'F', 'usage': -120, 'usage_label': 'F', 'allowed': 12}]]]\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":"7b017b1e5928bdda2051e0e069bc6cf6cf90ea36d0ce472b2b78c8313db5b2c6","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    ppv = sum(tc - q * x['std_price'] for q, tc in x['purchases'])\n    allowed = x['std_qty'] * x['good_units']\n    usage = (x['used'] - allowed) * x['std_price']\n    lab = lambda v: 'U' if v >= 0 else 'F'\n    return {'ppv': ppv, 'ppv_label': lab(ppv), 'usage': usage, 'usage_label': lab(usage), 'allowed': allowed}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['unfavorable price', {'std_price': 200, 'std_qty': 3, 'good_units': 10, 'scrap_units': 1, 'purchases': [[40, 8401]], 'used': 33}, {'ppv': 401, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 30}], ['favorable usage', {'std_price': 150, 'std_qty': 2, 'good_units': 21, 'scrap_units': 0, 'purchases': [[50, 7000]], 'used': 40}, {'ppv': -500, 'ppv_label': 'F', 'usage': -300, 'usage_label': 'F', 'allowed': 42}], ['two purchases', {'std_price': 100, 'std_qty': 4, 'good_units': 5, 'scrap_units': 2, 'purchases': [[10, 900], [10, 1301]], 'used': 26}, {'ppv': 201, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 20}], ['exact standard', {'std_price': 75, 'std_qty': 1, 'good_units': 8, 'scrap_units': 0, 'purchases': [[8, 600]], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 8}], ['scrap heavy', {'std_price': 50, 'std_qty': 5, 'good_units': 6, 'scrap_units': 4, 'purchases': [[60, 3300], [5, 200]], 'used': 45}, {'ppv': 250, 'ppv_label': 'U', 'usage': 750, 'usage_label': 'U', 'allowed': 30}], ['no purchases', {'std_price': 90, 'std_qty': 2, 'good_units': 3, 'scrap_units': 1, 'purchases': [], 'used': 6}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 6}], ['mixed signs', {'std_price': 120, 'std_qty': 3, 'good_units': 4, 'scrap_units': 1, 'purchases': [[20, 2110], [5, 700]], 'used': 11}, {'ppv': -190, 'ppv_label': 'F', 'usage': -120, 'usage_label': 'F', 'allowed': 12}]], [['unfavorable price', {'std_price': 200, 'std_qty': 3, 'good_units': 10, 'scrap_units': 1, 'purchases': [[40, 8402]], 'used': 33}, {'ppv': 402, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 30}], ['favorable usage', {'std_price': 150, 'std_qty': 2, 'good_units': 22, 'scrap_units': 0, 'purchases': [[50, 7000]], 'used': 42}, {'ppv': -500, 'ppv_label': 'F', 'usage': -300, 'usage_label': 'F', 'allowed': 44}], ['two purchases', {'std_price': 100, 'std_qty': 4, 'good_units': 5, 'scrap_units': 2, 'purchases': [[10, 900], [10, 1302]], 'used': 26}, {'ppv': 202, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 20}], ['exact standard', {'std_price': 75, 'std_qty': 1, 'good_units': 8, 'scrap_units': 0, 'purchases': [[8, 600]], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 8}], ['scrap heavy', {'std_price': 50, 'std_qty': 5, 'good_units': 6, 'scrap_units': 5, 'purchases': [[60, 3300], [5, 200]], 'used': 45}, {'ppv': 250, 'ppv_label': 'U', 'usage': 750, 'usage_label': 'U', 'allowed': 30}], ['no purchases', {'std_price': 90, 'std_qty': 2, 'good_units': 3, 'scrap_units': 1, 'purchases': [], 'used': 7}, {'ppv': 0, 'ppv_label': '-', 'usage': 90, 'usage_label': 'U', 'allowed': 6}], ['mixed signs', {'std_price': 120, 'std_qty': 3, 'good_units': 4, 'scrap_units': 1, 'purchases': [[20, 2120], [5, 700]], 'used': 11}, {'ppv': -180, 'ppv_label': 'F', 'usage': -120, 'usage_label': 'F', 'allowed': 12}]], [['unfavorable price', {'std_price': 200, 'std_qty': 3, 'good_units': 10, 'scrap_units': 1, 'purchases': [[40, 8403]], 'used': 33}, {'ppv': 403, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 30}], ['favorable usage', {'std_price': 150, 'std_qty': 2, 'good_units': 23, 'scrap_units': 0, 'purchases': [[50, 7000]], 'used': 44}, {'ppv': -500, 'ppv_label': 'F', 'usage': -300, 'usage_label': 'F', 'allowed': 46}], ['two purchases', {'std_price': 100, 'std_qty': 4, 'good_units': 5, 'scrap_units': 2, 'purchases': [[10, 900], [10, 1303]], 'used': 26}, {'ppv': 203, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 20}], ['exact standard', {'std_price': 75, 'std_qty': 1, 'good_units': 8, 'scrap_units': 0, 'purchases': [[8, 600]], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 8}], ['scrap heavy', {'std_price': 50, 'std_qty': 5, 'good_units': 6, 'scrap_units': 6, 'purchases': [[60, 3300], [5, 200]], 'used': 45}, {'ppv': 250, 'ppv_label': 'U', 'usage': 750, 'usage_label': 'U', 'allowed': 30}], ['no purchases', {'std_price': 90, 'std_qty': 2, 'good_units': 3, 'scrap_units': 1, 'purchases': [], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 180, 'usage_label': 'U', 'allowed': 6}], ['mixed signs', {'std_price': 120, 'std_qty': 3, 'good_units': 4, 'scrap_units': 1, 'purchases': [[20, 2130], [5, 700]], 'used': 11}, {'ppv': -170, 'ppv_label': 'F', 'usage': -120, 'usage_label': 'F', 'allowed': 12}]], [['unfavorable price', {'std_price': 200, 'std_qty': 3, 'good_units': 10, 'scrap_units': 1, 'purchases': [[40, 8404]], 'used': 33}, {'ppv': 404, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 30}], ['favorable usage', {'std_price': 150, 'std_qty': 2, 'good_units': 24, 'scrap_units': 0, 'purchases': [[50, 7000]], 'used': 46}, {'ppv': -500, 'ppv_label': 'F', 'usage': -300, 'usage_label': 'F', 'allowed': 48}], ['two purchases', {'std_price': 100, 'std_qty': 4, 'good_units': 5, 'scrap_units': 2, 'purchases': [[10, 900], [10, 1304]], 'used': 26}, {'ppv': 204, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 20}], ['exact standard', {'std_price': 75, 'std_qty': 1, 'good_units': 8, 'scrap_units': 0, 'purchases': [[8, 600]], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 8}], ['scrap heavy', {'std_price': 50, 'std_qty': 5, 'good_units': 6, 'scrap_units': 7, 'purchases': [[60, 3300], [5, 200]], 'used': 45}, {'ppv': 250, 'ppv_label': 'U', 'usage': 750, 'usage_label': 'U', 'allowed': 30}], ['no purchases', {'std_price': 90, 'std_qty': 2, 'good_units': 3, 'scrap_units': 1, 'purchases': [], 'used': 9}, {'ppv': 0, 'ppv_label': '-', 'usage': 270, 'usage_label': 'U', 'allowed': 6}], ['mixed signs', {'std_price': 120, 'std_qty': 3, 'good_units': 4, 'scrap_units': 1, 'purchases': [[20, 2140], [5, 700]], 'used': 11}, {'ppv': -160, 'ppv_label': 'F', 'usage': -120, 'usage_label': 'F', 'allowed': 12}]], [['unfavorable price', {'std_price': 200, 'std_qty': 3, 'good_units': 10, 'scrap_units': 1, 'purchases': [[40, 8405]], 'used': 33}, {'ppv': 405, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 30}], ['favorable usage', {'std_price': 150, 'std_qty': 2, 'good_units': 25, 'scrap_units': 0, 'purchases': [[50, 7000]], 'used': 48}, {'ppv': -500, 'ppv_label': 'F', 'usage': -300, 'usage_label': 'F', 'allowed': 50}], ['two purchases', {'std_price': 100, 'std_qty': 4, 'good_units': 5, 'scrap_units': 2, 'purchases': [[10, 900], [10, 1305]], 'used': 26}, {'ppv': 205, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 20}], ['exact standard', {'std_price': 75, 'std_qty': 1, 'good_units': 8, 'scrap_units': 0, 'purchases': [[8, 600]], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 8}], ['scrap heavy', {'std_price': 50, 'std_qty': 5, 'good_units': 6, 'scrap_units': 8, 'purchases': [[60, 3300], [5, 200]], 'used': 45}, {'ppv': 250, 'ppv_label': 'U', 'usage': 750, 'usage_label': 'U', 'allowed': 30}], ['no purchases', {'std_price': 90, 'std_qty': 2, 'good_units': 3, 'scrap_units': 1, 'purchases': [], 'used': 10}, {'ppv': 0, 'ppv_label': '-', 'usage': 360, 'usage_label': 'U', 'allowed': 6}], ['mixed signs', {'std_price': 120, 'std_qty': 3, 'good_units': 4, 'scrap_units': 1, 'purchases': [[20, 2150], [5, 700]], 'used': 11}, {'ppv': -150, 'ppv_label': 'F', 'usage': -120, 'usage_label': 'F', 'allowed': 12}]]]\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":"8a558d1f9f927d39bf72a22098f39712a55ef4d0ea493447667cfd650e59d78f","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    ppv = sum(tc - q * x['std_price'] for q, tc in x['purchases'])\n    allowed = x['std_qty'] * x['good_units']\n    usage = (x['used'] - allowed) * x['std_price']\n    lab = lambda v: 'U' if v > 0 else ('F' if v < 0 else '-')\n    return {'ppv': ppv, 'ppv_label': lab(ppv), 'usage': usage, 'usage_label': lab(usage), 'allowed': allowed}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['unfavorable price', {'std_price': 200, 'std_qty': 3, 'good_units': 10, 'scrap_units': 1, 'purchases': [[40, 8401]], 'used': 33}, {'ppv': 401, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 30}], ['favorable usage', {'std_price': 150, 'std_qty': 2, 'good_units': 21, 'scrap_units': 0, 'purchases': [[50, 7000]], 'used': 40}, {'ppv': -500, 'ppv_label': 'F', 'usage': -300, 'usage_label': 'F', 'allowed': 42}], ['two purchases', {'std_price': 100, 'std_qty': 4, 'good_units': 5, 'scrap_units': 2, 'purchases': [[10, 900], [10, 1301]], 'used': 26}, {'ppv': 201, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 20}], ['exact standard', {'std_price': 75, 'std_qty': 1, 'good_units': 8, 'scrap_units': 0, 'purchases': [[8, 600]], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 8}], ['scrap heavy', {'std_price': 50, 'std_qty': 5, 'good_units': 6, 'scrap_units': 4, 'purchases': [[60, 3300], [5, 200]], 'used': 45}, {'ppv': 250, 'ppv_label': 'U', 'usage': 750, 'usage_label': 'U', 'allowed': 30}], ['no purchases', {'std_price': 90, 'std_qty': 2, 'good_units': 3, 'scrap_units': 1, 'purchases': [], 'used': 6}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 6}], ['mixed signs', {'std_price': 120, 'std_qty': 3, 'good_units': 4, 'scrap_units': 1, 'purchases': [[20, 2110], [5, 700]], 'used': 11}, {'ppv': -190, 'ppv_label': 'F', 'usage': -120, 'usage_label': 'F', 'allowed': 12}]], [['unfavorable price', {'std_price': 200, 'std_qty': 3, 'good_units': 10, 'scrap_units': 1, 'purchases': [[40, 8402]], 'used': 33}, {'ppv': 402, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 30}], ['favorable usage', {'std_price': 150, 'std_qty': 2, 'good_units': 22, 'scrap_units': 0, 'purchases': [[50, 7000]], 'used': 42}, {'ppv': -500, 'ppv_label': 'F', 'usage': -300, 'usage_label': 'F', 'allowed': 44}], ['two purchases', {'std_price': 100, 'std_qty': 4, 'good_units': 5, 'scrap_units': 2, 'purchases': [[10, 900], [10, 1302]], 'used': 26}, {'ppv': 202, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 20}], ['exact standard', {'std_price': 75, 'std_qty': 1, 'good_units': 8, 'scrap_units': 0, 'purchases': [[8, 600]], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 8}], ['scrap heavy', {'std_price': 50, 'std_qty': 5, 'good_units': 6, 'scrap_units': 5, 'purchases': [[60, 3300], [5, 200]], 'used': 45}, {'ppv': 250, 'ppv_label': 'U', 'usage': 750, 'usage_label': 'U', 'allowed': 30}], ['no purchases', {'std_price': 90, 'std_qty': 2, 'good_units': 3, 'scrap_units': 1, 'purchases': [], 'used': 7}, {'ppv': 0, 'ppv_label': '-', 'usage': 90, 'usage_label': 'U', 'allowed': 6}], ['mixed signs', {'std_price': 120, 'std_qty': 3, 'good_units': 4, 'scrap_units': 1, 'purchases': [[20, 2120], [5, 700]], 'used': 11}, {'ppv': -180, 'ppv_label': 'F', 'usage': -120, 'usage_label': 'F', 'allowed': 12}]], [['unfavorable price', {'std_price': 200, 'std_qty': 3, 'good_units': 10, 'scrap_units': 1, 'purchases': [[40, 8403]], 'used': 33}, {'ppv': 403, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 30}], ['favorable usage', {'std_price': 150, 'std_qty': 2, 'good_units': 23, 'scrap_units': 0, 'purchases': [[50, 7000]], 'used': 44}, {'ppv': -500, 'ppv_label': 'F', 'usage': -300, 'usage_label': 'F', 'allowed': 46}], ['two purchases', {'std_price': 100, 'std_qty': 4, 'good_units': 5, 'scrap_units': 2, 'purchases': [[10, 900], [10, 1303]], 'used': 26}, {'ppv': 203, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 20}], ['exact standard', {'std_price': 75, 'std_qty': 1, 'good_units': 8, 'scrap_units': 0, 'purchases': [[8, 600]], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 8}], ['scrap heavy', {'std_price': 50, 'std_qty': 5, 'good_units': 6, 'scrap_units': 6, 'purchases': [[60, 3300], [5, 200]], 'used': 45}, {'ppv': 250, 'ppv_label': 'U', 'usage': 750, 'usage_label': 'U', 'allowed': 30}], ['no purchases', {'std_price': 90, 'std_qty': 2, 'good_units': 3, 'scrap_units': 1, 'purchases': [], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 180, 'usage_label': 'U', 'allowed': 6}], ['mixed signs', {'std_price': 120, 'std_qty': 3, 'good_units': 4, 'scrap_units': 1, 'purchases': [[20, 2130], [5, 700]], 'used': 11}, {'ppv': -170, 'ppv_label': 'F', 'usage': -120, 'usage_label': 'F', 'allowed': 12}]], [['unfavorable price', {'std_price': 200, 'std_qty': 3, 'good_units': 10, 'scrap_units': 1, 'purchases': [[40, 8404]], 'used': 33}, {'ppv': 404, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 30}], ['favorable usage', {'std_price': 150, 'std_qty': 2, 'good_units': 24, 'scrap_units': 0, 'purchases': [[50, 7000]], 'used': 46}, {'ppv': -500, 'ppv_label': 'F', 'usage': -300, 'usage_label': 'F', 'allowed': 48}], ['two purchases', {'std_price': 100, 'std_qty': 4, 'good_units': 5, 'scrap_units': 2, 'purchases': [[10, 900], [10, 1304]], 'used': 26}, {'ppv': 204, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 20}], ['exact standard', {'std_price': 75, 'std_qty': 1, 'good_units': 8, 'scrap_units': 0, 'purchases': [[8, 600]], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 8}], ['scrap heavy', {'std_price': 50, 'std_qty': 5, 'good_units': 6, 'scrap_units': 7, 'purchases': [[60, 3300], [5, 200]], 'used': 45}, {'ppv': 250, 'ppv_label': 'U', 'usage': 750, 'usage_label': 'U', 'allowed': 30}], ['no purchases', {'std_price': 90, 'std_qty': 2, 'good_units': 3, 'scrap_units': 1, 'purchases': [], 'used': 9}, {'ppv': 0, 'ppv_label': '-', 'usage': 270, 'usage_label': 'U', 'allowed': 6}], ['mixed signs', {'std_price': 120, 'std_qty': 3, 'good_units': 4, 'scrap_units': 1, 'purchases': [[20, 2140], [5, 700]], 'used': 11}, {'ppv': -160, 'ppv_label': 'F', 'usage': -120, 'usage_label': 'F', 'allowed': 12}]], [['unfavorable price', {'std_price': 200, 'std_qty': 3, 'good_units': 10, 'scrap_units': 1, 'purchases': [[40, 8405]], 'used': 33}, {'ppv': 405, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 30}], ['favorable usage', {'std_price': 150, 'std_qty': 2, 'good_units': 25, 'scrap_units': 0, 'purchases': [[50, 7000]], 'used': 48}, {'ppv': -500, 'ppv_label': 'F', 'usage': -300, 'usage_label': 'F', 'allowed': 50}], ['two purchases', {'std_price': 100, 'std_qty': 4, 'good_units': 5, 'scrap_units': 2, 'purchases': [[10, 900], [10, 1305]], 'used': 26}, {'ppv': 205, 'ppv_label': 'U', 'usage': 600, 'usage_label': 'U', 'allowed': 20}], ['exact standard', {'std_price': 75, 'std_qty': 1, 'good_units': 8, 'scrap_units': 0, 'purchases': [[8, 600]], 'used': 8}, {'ppv': 0, 'ppv_label': '-', 'usage': 0, 'usage_label': '-', 'allowed': 8}], ['scrap heavy', {'std_price': 50, 'std_qty': 5, 'good_units': 6, 'scrap_units': 8, 'purchases': [[60, 3300], [5, 200]], 'used': 45}, {'ppv': 250, 'ppv_label': 'U', 'usage': 750, 'usage_label': 'U', 'allowed': 30}], ['no purchases', {'std_price': 90, 'std_qty': 2, 'good_units': 3, 'scrap_units': 1, 'purchases': [], 'used': 10}, {'ppv': 0, 'ppv_label': '-', 'usage': 360, 'usage_label': 'U', 'allowed': 6}], ['mixed signs', {'std_price': 120, 'std_qty': 3, 'good_units': 4, 'scrap_units': 1, 'purchases': [[20, 2150], [5, 700]], 'used': 11}, {'ppv': -150, 'ppv_label': 'F', 'usage': -120, 'usage_label': 'F', 'allowed': 12}]]]\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":"Stipulated bounded teaching model with explicit toy rules; not an accounting-standard implementation. 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-inventory-cost-layering-standard-cost-variances-zero-variance-label","generated_at":"2026-09-29T14:46:42.632607+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Inventory valuation and cost-of-goods decisions depend on this rule.","repair":"Report \"-\" for a zero variance.","root_cause":"The label treats zero as unfavorable because it tests v >= 0.","sha256":"9092088f2a664ea4827355a342cb3bd0f9648935f7c7e81841e882c0000c06cd","title":"Standard cost material variances: zero variance label · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":38.458,"exit_code":1,"observations":[{"actual":{"allowed":30,"ppv":401,"ppv_label":"U","usage":600,"usage_label":"U"},"check":"unfavorable price","expected":{"allowed":30,"ppv":401,"ppv_label":"U","usage":600,"usage_label":"U"},"passed":true},{"actual":{"allowed":42,"ppv":-500,"ppv_label":"F","usage":-300,"usage_label":"F"},"check":"favorable usage","expected":{"allowed":42,"ppv":-500,"ppv_label":"F","usage":-300,"usage_label":"F"},"passed":true},{"actual":{"allowed":20,"ppv":201,"ppv_label":"U","usage":600,"usage_label":"U"},"check":"two purchases","expected":{"allowed":20,"ppv":201,"ppv_label":"U","usage":600,"usage_label":"U"},"passed":true},{"actual":{"allowed":8,"ppv":0,"ppv_label":"F","usage":0,"usage_label":"F"},"check":"exact standard","expected":{"allowed":8,"ppv":0,"ppv_label":"-","usage":0,"usage_label":"-"},"passed":false},{"actual":{"allowed":30,"ppv":250,"ppv_label":"U","usage":750,"usage_label":"U"},"check":"scrap heavy","expected":{"allowed":30,"ppv":250,"ppv_label":"U","usage":750,"usage_label":"U"},"passed":true},{"actual":{"allowed":6,"ppv":0,"ppv_label":"F","usage":0,"usage_label":"F"},"check":"no purchases","expected":{"allowed":6,"ppv":0,"ppv_label":"-","usage":0,"usage_label":"-"},"passed":false},{"actual":{"allowed":12,"ppv":-190,"ppv_label":"F","usage":-120,"usage_label":"F"},"check":"mixed signs","expected":{"allowed":12,"ppv":-190,"ppv_label":"F","usage":-120,"usage_label":"F"},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"unfavorable price\", \"actual\": {\"ppv\": 401, \"ppv_label\": \"U\", \"usage\": 600, \"usage_label\": \"U\", \"allowed\": 30}, \"expected\": {\"ppv\": 401, \"ppv_label\": \"U\", \"usage\": 600, \"usage_label\": \"U\", \"allowed\": 30}, \"passed\": true}, {\"check\": \"favorable usage\", \"actual\": {\"ppv\": -500, \"ppv_label\": \"F\", \"usage\": -300, \"usage_label\": \"F\", \"allowed\": 42}, \"expected\": {\"ppv\": -500, \"ppv_label\": \"F\", \"usage\": -300, \"usage_label\": \"F\", \"allowed\": 42}, \"passed\": true}, {\"check\": \"two purchases\", \"actual\": {\"ppv\": 201, \"ppv_label\": \"U\", \"usage\": 600, \"usage_label\": \"U\", \"allowed\": 20}, \"expected\": {\"ppv\": 201, \"ppv_label\": \"U\", \"usage\": 600, \"usage_label\": \"U\", \"allowed\": 20}, \"passed\": true}, {\"check\": \"exact standard\", \"actual\": {\"ppv\": 0, \"ppv_label\": \"F\", \"usage\": 0, \"usage_label\": \"F\", \"allowed\": 8}, \"expected\": {\"ppv\": 0, \"ppv_label\": \"-\", \"usage\": 0, \"usage_label\": \"-\", \"allowed\": 8}, \"passed\": false}, {\"check\": \"scrap heavy\", \"actual\": {\"ppv\": 250, \"ppv_label\": \"U\", \"usage\": 750, \"usage_label\": \"U\", \"allowed\": 30}, \"expected\": {\"ppv\": 250, \"ppv_label\": \"U\", \"usage\": 750, \"usage_label\": \"U\", \"allowed\": 30}, \"passed\": true}, {\"check\": \"no purchases\", \"actual\": {\"ppv\": 0, \"ppv_label\": \"F\", \"usage\": 0, \"usage_label\": \"F\", \"allowed\": 6}, \"expected\": {\"ppv\": 0, \"ppv_label\": \"-\", \"usage\": 0, \"usage_label\": \"-\", \"allowed\": 6}, \"passed\": false}, {\"check\": \"mixed signs\", \"actual\": {\"ppv\": -190, \"ppv_label\": \"F\", \"usage\": -120, \"usage_label\": \"F\", \"allowed\": 12}, \"expected\": {\"ppv\": -190, \"ppv_label\": \"F\", \"usage\": -120, \"usage_label\": \"F\", \"allowed\": 12}, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.052,"exit_code":1,"observations":[{"actual":{"allowed":30,"ppv":401,"ppv_label":"U","usage":600,"usage_label":"U"},"check":"unfavorable price","expected":{"allowed":30,"ppv":401,"ppv_label":"U","usage":600,"usage_label":"U"},"passed":true},{"actual":{"allowed":42,"ppv":-500,"ppv_label":"F","usage":-300,"usage_label":"F"},"check":"favorable usage","expected":{"allowed":42,"ppv":-500,"ppv_label":"F","usage":-300,"usage_label":"F"},"passed":true},{"actual":{"allowed":20,"ppv":201,"ppv_label":"U","usage":600,"usage_label":"U"},"check":"two purchases","expected":{"allowed":20,"ppv":201,"ppv_label":"U","usage":600,"usage_label":"U"},"passed":true},{"actual":{"allowed":8,"ppv":0,"ppv_label":"U","usage":0,"usage_label":"U"},"check":"exact standard","expected":{"allowed":8,"ppv":0,"ppv_label":"-","usage":0,"usage_label":"-"},"passed":false},{"actual":{"allowed":30,"ppv":250,"ppv_label":"U","usage":750,"usage_label":"U"},"check":"scrap heavy","expected":{"allowed":30,"ppv":250,"ppv_label":"U","usage":750,"usage_label":"U"},"passed":true},{"actual":{"allowed":6,"ppv":0,"ppv_label":"U","usage":0,"usage_label":"U"},"check":"no purchases","expected":{"allowed":6,"ppv":0,"ppv_label":"-","usage":0,"usage_label":"-"},"passed":false},{"actual":{"allowed":12,"ppv":-190,"ppv_label":"F","usage":-120,"usage_label":"F"},"check":"mixed signs","expected":{"allowed":12,"ppv":-190,"ppv_label":"F","usage":-120,"usage_label":"F"},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"unfavorable price\", \"actual\": {\"ppv\": 401, \"ppv_label\": \"U\", \"usage\": 600, \"usage_label\": \"U\", \"allowed\": 30}, \"expected\": {\"ppv\": 401, \"ppv_label\": \"U\", \"usage\": 600, \"usage_label\": \"U\", \"allowed\": 30}, \"passed\": true}, {\"check\": \"favorable usage\", \"actual\": {\"ppv\": -500, \"ppv_label\": \"F\", \"usage\": -300, \"usage_label\": \"F\", \"allowed\": 42}, \"expected\": {\"ppv\": -500, \"ppv_label\": \"F\", \"usage\": -300, \"usage_label\": \"F\", \"allowed\": 42}, \"passed\": true}, {\"check\": \"two purchases\", \"actual\": {\"ppv\": 201, \"ppv_label\": \"U\", \"usage\": 600, \"usage_label\": \"U\", \"allowed\": 20}, \"expected\": {\"ppv\": 201, \"ppv_label\": \"U\", \"usage\": 600, \"usage_label\": \"U\", \"allowed\": 20}, \"passed\": true}, {\"check\": \"exact standard\", \"actual\": {\"ppv\": 0, \"ppv_label\": \"U\", \"usage\": 0, \"usage_label\": \"U\", \"allowed\": 8}, \"expected\": {\"ppv\": 0, \"ppv_label\": \"-\", \"usage\": 0, \"usage_label\": \"-\", \"allowed\": 8}, \"passed\": false}, {\"check\": \"scrap heavy\", \"actual\": {\"ppv\": 250, \"ppv_label\": \"U\", \"usage\": 750, \"usage_label\": \"U\", \"allowed\": 30}, \"expected\": {\"ppv\": 250, \"ppv_label\": \"U\", \"usage\": 750, \"usage_label\": \"U\", \"allowed\": 30}, \"passed\": true}, {\"check\": \"no purchases\", \"actual\": {\"ppv\": 0, \"ppv_label\": \"U\", \"usage\": 0, \"usage_label\": \"U\", \"allowed\": 6}, \"expected\": {\"ppv\": 0, \"ppv_label\": \"-\", \"usage\": 0, \"usage_label\": \"-\", \"allowed\": 6}, \"passed\": false}, {\"check\": \"mixed signs\", \"actual\": {\"ppv\": -190, \"ppv_label\": \"F\", \"usage\": -120, \"usage_label\": \"F\", \"allowed\": 12}, \"expected\": {\"ppv\": -190, \"ppv_label\": \"F\", \"usage\": -120, \"usage_label\": \"F\", \"allowed\": 12}, \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":40.673,"exit_code":0,"observations":[{"actual":{"allowed":30,"ppv":401,"ppv_label":"U","usage":600,"usage_label":"U"},"check":"unfavorable price","expected":{"allowed":30,"ppv":401,"ppv_label":"U","usage":600,"usage_label":"U"},"passed":true},{"actual":{"allowed":42,"ppv":-500,"ppv_label":"F","usage":-300,"usage_label":"F"},"check":"favorable usage","expected":{"allowed":42,"ppv":-500,"ppv_label":"F","usage":-300,"usage_label":"F"},"passed":true},{"actual":{"allowed":20,"ppv":201,"ppv_label":"U","usage":600,"usage_label":"U"},"check":"two purchases","expected":{"allowed":20,"ppv":201,"ppv_label":"U","usage":600,"usage_label":"U"},"passed":true},{"actual":{"allowed":8,"ppv":0,"ppv_label":"-","usage":0,"usage_label":"-"},"check":"exact standard","expected":{"allowed":8,"ppv":0,"ppv_label":"-","usage":0,"usage_label":"-"},"passed":true},{"actual":{"allowed":30,"ppv":250,"ppv_label":"U","usage":750,"usage_label":"U"},"check":"scrap heavy","expected":{"allowed":30,"ppv":250,"ppv_label":"U","usage":750,"usage_label":"U"},"passed":true},{"actual":{"allowed":6,"ppv":0,"ppv_label":"-","usage":0,"usage_label":"-"},"check":"no purchases","expected":{"allowed":6,"ppv":0,"ppv_label":"-","usage":0,"usage_label":"-"},"passed":true},{"actual":{"allowed":12,"ppv":-190,"ppv_label":"F","usage":-120,"usage_label":"F"},"check":"mixed signs","expected":{"allowed":12,"ppv":-190,"ppv_label":"F","usage":-120,"usage_label":"F"},"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"unfavorable price\", \"actual\": {\"ppv\": 401, \"ppv_label\": \"U\", \"usage\": 600, \"usage_label\": \"U\", \"allowed\": 30}, \"expected\": {\"ppv\": 401, \"ppv_label\": \"U\", \"usage\": 600, \"usage_label\": \"U\", \"allowed\": 30}, \"passed\": true}, {\"check\": \"favorable usage\", \"actual\": {\"ppv\": -500, \"ppv_label\": \"F\", \"usage\": -300, \"usage_label\": \"F\", \"allowed\": 42}, \"expected\": {\"ppv\": -500, \"ppv_label\": \"F\", \"usage\": -300, \"usage_label\": \"F\", \"allowed\": 42}, \"passed\": true}, {\"check\": \"two purchases\", \"actual\": {\"ppv\": 201, \"ppv_label\": \"U\", \"usage\": 600, \"usage_label\": \"U\", \"allowed\": 20}, \"expected\": {\"ppv\": 201, \"ppv_label\": \"U\", \"usage\": 600, \"usage_label\": \"U\", \"allowed\": 20}, \"passed\": true}, {\"check\": \"exact standard\", \"actual\": {\"ppv\": 0, \"ppv_label\": \"-\", \"usage\": 0, \"usage_label\": \"-\", \"allowed\": 8}, \"expected\": {\"ppv\": 0, \"ppv_label\": \"-\", \"usage\": 0, \"usage_label\": \"-\", \"allowed\": 8}, \"passed\": true}, {\"check\": \"scrap heavy\", \"actual\": {\"ppv\": 250, \"ppv_label\": \"U\", \"usage\": 750, \"usage_label\": \"U\", \"allowed\": 30}, \"expected\": {\"ppv\": 250, \"ppv_label\": \"U\", \"usage\": 750, \"usage_label\": \"U\", \"allowed\": 30}, \"passed\": true}, {\"check\": \"no purchases\", \"actual\": {\"ppv\": 0, \"ppv_label\": \"-\", \"usage\": 0, \"usage_label\": \"-\", \"allowed\": 6}, \"expected\": {\"ppv\": 0, \"ppv_label\": \"-\", \"usage\": 0, \"usage_label\": \"-\", \"allowed\": 6}, \"passed\": true}, {\"check\": \"mixed signs\", \"actual\": {\"ppv\": -190, \"ppv_label\": \"F\", \"usage\": -120, \"usage_label\": \"F\", \"allowed\": 12}, \"expected\": {\"ppv\": -190, \"ppv_label\": \"F\", \"usage\": -120, \"usage_label\": \"F\", \"allowed\": 12}, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}