{"abstract":"Premiums with a fractional cent of one half or more come out one cent low.","category":"Insurance premium rating","checks":15,"contract":"Input dict base, territory (A/B/C factors 1.00/1.15/1.30, else 'invalid territory'), age (<16 'invalid age'; 16-24 factor 1.50; 25-64 1.00; 65+ 1.20), symbol s with factor 1+0.05*(s-1), cars (>=2 gives 10% discount), fee. Rated premium = base*factors*discount rounded half-up to a cent once, then a 30000-cent minimum, then the fee is added.","contract_signature":"x","evaluation_group":"w2-insurance_premium_rating-auto-multiplicative","failed_approach":"Ceiling rounds every fractional cent up, overcharging values below one half.","family":"w2-insurance_premium_rating-auto-multiplicative-premium-rounding","id":"FA-62856","implementations":{"attempt":{"sha256":"6d4d1549d1068bcad8967931ba1c2a23dd7795c0c9186305fa6a1297c045977d","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nfrom fractions import Fraction\nN = 1\nobservations = []\ndef solve(x):\n    T={'A':Fraction(1),'B':Fraction(115,100),'C':Fraction(130,100)}\n    if x['territory'] not in T: return 'invalid territory'\n    age=x['age']\n    if age<16: return 'invalid age'\n    if age<25: af=Fraction(150,100)\n    elif age<65: af=Fraction(1)\n    else: af=Fraction(120,100)\n    sf=1+Fraction(5,100)*(x['symbol']-1)\n    disc=Fraction(90,100) if x['cars']>=2 else Fraction(1)\n    rated=x['base']*T[x['territory']]*af*sf\n    rated=rated*disc\n    rated=math.ceil(rated)\n    rated=max(rated,30000)\n    return rated+x['fee']\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['youthful band ends at 24', {'base': 54520, 'territory': 'B', 'age': 24, 'symbol': 10, 'cars': 1, 'fee': 0}, 136368], ['age 25 leaves youthful band', {'base': 48271, 'territory': 'A', 'age': 25, 'symbol': 2, 'cars': 1, 'fee': 1500}, 52185], ['senior boundary 65', {'base': 31490, 'territory': 'A', 'age': 65, 'symbol': 8, 'cars': 2, 'fee': 0}, 45912], ['two cars earn multi-car discount', {'base': 53546, 'territory': 'A', 'age': 55, 'symbol': 8, 'cars': 2, 'fee': 0}, 65058], ['single car control', {'base': 41604, 'territory': 'A', 'age': 56, 'symbol': 9, 'cars': 1, 'fee': 0}, 58246], ['discounted policy below minimum', {'base': 30977, 'territory': 'A', 'age': 39, 'symbol': 1, 'cars': 3, 'fee': 0}, 30000], ['unknown territory rejected', {'base': 78746, 'territory': 'Z', 'age': 40, 'symbol': 10, 'cars': 1, 'fee': 0}, 'invalid territory'], ['under-age applicant rejected', {'base': 84653, 'territory': 'C', 'age': 15, 'symbol': 2, 'cars': 1, 'fee': 2500}, 'invalid age'], ['random rating 0', {'base': 34126, 'territory': 'C', 'age': 33, 'symbol': 6, 'cars': 3, 'fee': 0}, 49909], ['random rating 1', {'base': 62350, 'territory': 'A', 'age': 16, 'symbol': 1, 'cars': 3, 'fee': 1500}, 85673], ['random rating 2', {'base': 95267, 'territory': 'A', 'age': 16, 'symbol': 6, 'cars': 2, 'fee': 2500}, 163263], ['random rating 3', {'base': 65141, 'territory': 'A', 'age': 16, 'symbol': 5, 'cars': 2, 'fee': 1500}, 107028], ['top symbol relativity', {'base': 50001, 'territory': 'B', 'age': 40, 'symbol': 10, 'cars': 1, 'fee': 2500}, 85877], ['half-cent rounds up', {'base': 60003, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 2500}, 71503], ['sub-half cent rounds down', {'base': 40011, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 2500}, 48513]], [['youthful band ends at 24', {'base': 65596, 'territory': 'B', 'age': 24, 'symbol': 4, 'cars': 1, 'fee': 1500}, 131626], ['age 25 leaves youthful band', {'base': 53332, 'territory': 'C', 'age': 25, 'symbol': 6, 'cars': 1, 'fee': 1500}, 88165], ['senior boundary 65', {'base': 72267, 'territory': 'B', 'age': 65, 'symbol': 9, 'cars': 2, 'fee': 0}, 125658], ['two cars earn multi-car discount', {'base': 46182, 'territory': 'A', 'age': 53, 'symbol': 1, 'cars': 2, 'fee': 2500}, 44064], ['single car control', {'base': 42325, 'territory': 'C', 'age': 57, 'symbol': 4, 'cars': 1, 'fee': 2500}, 65776], ['discounted policy below minimum', {'base': 31359, 'territory': 'A', 'age': 40, 'symbol': 1, 'cars': 3, 'fee': 1500}, 31500], ['unknown territory rejected', {'base': 70758, 'territory': 'Z', 'age': 40, 'symbol': 3, 'cars': 1, 'fee': 0}, 'invalid territory'], ['under-age applicant rejected', {'base': 74254, 'territory': 'B', 'age': 15, 'symbol': 2, 'cars': 1, 'fee': 0}, 'invalid age'], ['random rating 0', {'base': 35490, 'territory': 'C', 'age': 47, 'symbol': 10, 'cars': 1, 'fee': 0}, 66899], ['random rating 1', {'base': 93585, 'territory': 'B', 'age': 47, 'symbol': 2, 'cars': 1, 'fee': 0}, 113004], ['random rating 2', {'base': 54005, 'territory': 'C', 'age': 47, 'symbol': 8, 'cars': 1, 'fee': 0}, 94779], ['random rating 3', {'base': 35309, 'territory': 'C', 'age': 20, 'symbol': 6, 'cars': 2, 'fee': 1500}, 78959], ['top symbol relativity', {'base': 50002, 'territory': 'B', 'age': 40, 'symbol': 10, 'cars': 1, 'fee': 1500}, 84878], ['half-cent rounds up', {'base': 60007, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 0}, 69008], ['sub-half cent rounds down', {'base': 40031, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 0}, 46036]], [['youthful band ends at 24', {'base': 33706, 'territory': 'B', 'age': 24, 'symbol': 1, 'cars': 1, 'fee': 1500}, 59643], ['age 25 leaves youthful band', {'base': 47580, 'territory': 'C', 'age': 25, 'symbol': 4, 'cars': 1, 'fee': 1500}, 72632], ['senior boundary 65', {'base': 45782, 'territory': 'A', 'age': 65, 'symbol': 7, 'cars': 2, 'fee': 1500}, 65778], ['two cars earn multi-car discount', {'base': 69933, 'territory': 'C', 'age': 45, 'symbol': 3, 'cars': 2, 'fee': 2500}, 92504], ['single car control', {'base': 81532, 'territory': 'A', 'age': 57, 'symbol': 10, 'cars': 1, 'fee': 1500}, 119721], ['discounted policy below minimum', {'base': 31838, 'territory': 'A', 'age': 49, 'symbol': 1, 'cars': 3, 'fee': 1500}, 31500], ['unknown territory rejected', {'base': 23484, 'territory': 'Z', 'age': 40, 'symbol': 5, 'cars': 1, 'fee': 0}, 'invalid territory'], ['under-age applicant rejected', {'base': 20672, 'territory': 'A', 'age': 15, 'symbol': 8, 'cars': 1, 'fee': 1500}, 'invalid age'], ['random rating 0', {'base': 54283, 'territory': 'B', 'age': 16, 'symbol': 7, 'cars': 2, 'fee': 0}, 109557], ['random rating 1', {'base': 85283, 'territory': 'B', 'age': 33, 'symbol': 7, 'cars': 3, 'fee': 1500}, 116248], ['random rating 2', {'base': 97243, 'territory': 'A', 'age': 47, 'symbol': 10, 'cars': 2, 'fee': 1500}, 128402], ['random rating 3', {'base': 47342, 'territory': 'B', 'age': 70, 'symbol': 9, 'cars': 3, 'fee': 1500}, 83818], ['top symbol relativity', {'base': 50003, 'territory': 'B', 'age': 40, 'symbol': 10, 'cars': 1, 'fee': 2500}, 85880], ['half-cent rounds up', {'base': 60011, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 0}, 69013], ['sub-half cent rounds down', {'base': 40051, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 0}, 46059]], [['youthful band ends at 24', {'base': 49705, 'territory': 'B', 'age': 24, 'symbol': 10, 'cars': 1, 'fee': 0}, 124325], ['age 25 leaves youthful band', {'base': 77136, 'territory': 'B', 'age': 25, 'symbol': 9, 'cars': 1, 'fee': 2500}, 126689], ['senior boundary 65', {'base': 48566, 'territory': 'C', 'age': 65, 'symbol': 7, 'cars': 1, 'fee': 2500}, 100992], ['two cars earn multi-car discount', {'base': 86089, 'territory': 'C', 'age': 58, 'symbol': 4, 'cars': 2, 'fee': 2500}, 118333], ['single car control', {'base': 65782, 'territory': 'C', 'age': 60, 'symbol': 5, 'cars': 1, 'fee': 0}, 102620], ['discounted policy below minimum', {'base': 30193, 'territory': 'A', 'age': 34, 'symbol': 1, 'cars': 3, 'fee': 2500}, 32500], ['unknown territory rejected', {'base': 37853, 'territory': 'Z', 'age': 40, 'symbol': 5, 'cars': 1, 'fee': 2500}, 'invalid territory'], ['under-age applicant rejected', {'base': 85063, 'territory': 'C', 'age': 15, 'symbol': 9, 'cars': 1, 'fee': 1500}, 'invalid age'], ['random rating 0', {'base': 81605, 'territory': 'C', 'age': 70, 'symbol': 3, 'cars': 1, 'fee': 2500}, 142534], ['random rating 1', {'base': 50741, 'territory': 'C', 'age': 16, 'symbol': 9, 'cars': 1, 'fee': 0}, 138523], ['random rating 2', {'base': 88025, 'territory': 'B', 'age': 33, 'symbol': 5, 'cars': 1, 'fee': 0}, 121475], ['random rating 3', {'base': 60769, 'territory': 'C', 'age': 47, 'symbol': 8, 'cars': 3, 'fee': 1500}, 97485], ['top symbol relativity', {'base': 50004, 'territory': 'B', 'age': 40, 'symbol': 10, 'cars': 1, 'fee': 2500}, 85882], ['half-cent rounds up', {'base': 60015, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 0}, 69017], ['sub-half cent rounds down', {'base': 40071, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 2500}, 48582]], [['youthful band ends at 24', {'base': 83462, 'territory': 'C', 'age': 24, 'symbol': 4, 'cars': 1, 'fee': 0}, 187164], ['age 25 leaves youthful band', {'base': 23842, 'territory': 'A', 'age': 25, 'symbol': 10, 'cars': 1, 'fee': 2500}, 37071], ['senior boundary 65', {'base': 43695, 'territory': 'C', 'age': 65, 'symbol': 10, 'cars': 2, 'fee': 1500}, 90454], ['two cars earn multi-car discount', {'base': 87356, 'territory': 'A', 'age': 42, 'symbol': 8, 'cars': 2, 'fee': 2500}, 108638], ['single car control', {'base': 73244, 'territory': 'B', 'age': 41, 'symbol': 8, 'cars': 1, 'fee': 0}, 113711], ['discounted policy below minimum', {'base': 30044, 'territory': 'A', 'age': 31, 'symbol': 1, 'cars': 3, 'fee': 0}, 30000], ['unknown territory rejected', {'base': 50727, 'territory': 'Z', 'age': 40, 'symbol': 6, 'cars': 1, 'fee': 0}, 'invalid territory'], ['under-age applicant rejected', {'base': 35931, 'territory': 'A', 'age': 15, 'symbol': 3, 'cars': 1, 'fee': 1500}, 'invalid age'], ['random rating 0', {'base': 90411, 'territory': 'C', 'age': 70, 'symbol': 10, 'cars': 3, 'fee': 2500}, 186559], ['random rating 1', {'base': 60039, 'territory': 'C', 'age': 33, 'symbol': 10, 'cars': 2, 'fee': 2500}, 104356], ['random rating 2', {'base': 58926, 'territory': 'A', 'age': 47, 'symbol': 9, 'cars': 2, 'fee': 1500}, 75747], ['random rating 3', {'base': 56741, 'territory': 'B', 'age': 16, 'symbol': 6, 'cars': 1, 'fee': 2500}, 124848], ['top symbol relativity', {'base': 50005, 'territory': 'B', 'age': 40, 'symbol': 10, 'cars': 1, 'fee': 2500}, 85883], ['half-cent rounds up', {'base': 60019, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 0}, 69022], ['sub-half cent rounds down', {'base': 40091, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 2500}, 48605]]]\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":"b41c5225e016fa0630655ea36a3d57918dd7e6b2d0d6bd583740b24a89af3b84","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nfrom fractions import Fraction\nN = 1\nobservations = []\ndef solve(x):\n    T={'A':Fraction(1),'B':Fraction(115,100),'C':Fraction(130,100)}\n    if x['territory'] not in T: return 'invalid territory'\n    age=x['age']\n    if age<16: return 'invalid age'\n    if age<25: af=Fraction(150,100)\n    elif age<65: af=Fraction(1)\n    else: af=Fraction(120,100)\n    sf=1+Fraction(5,100)*(x['symbol']-1)\n    disc=Fraction(90,100) if x['cars']>=2 else Fraction(1)\n    rated=x['base']*T[x['territory']]*af*sf\n    rated=rated*disc\n    rated=int(rated)\n    rated=max(rated,30000)\n    return rated+x['fee']\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['youthful band ends at 24', {'base': 54520, 'territory': 'B', 'age': 24, 'symbol': 10, 'cars': 1, 'fee': 0}, 136368], ['age 25 leaves youthful band', {'base': 48271, 'territory': 'A', 'age': 25, 'symbol': 2, 'cars': 1, 'fee': 1500}, 52185], ['senior boundary 65', {'base': 31490, 'territory': 'A', 'age': 65, 'symbol': 8, 'cars': 2, 'fee': 0}, 45912], ['two cars earn multi-car discount', {'base': 53546, 'territory': 'A', 'age': 55, 'symbol': 8, 'cars': 2, 'fee': 0}, 65058], ['single car control', {'base': 41604, 'territory': 'A', 'age': 56, 'symbol': 9, 'cars': 1, 'fee': 0}, 58246], ['discounted policy below minimum', {'base': 30977, 'territory': 'A', 'age': 39, 'symbol': 1, 'cars': 3, 'fee': 0}, 30000], ['unknown territory rejected', {'base': 78746, 'territory': 'Z', 'age': 40, 'symbol': 10, 'cars': 1, 'fee': 0}, 'invalid territory'], ['under-age applicant rejected', {'base': 84653, 'territory': 'C', 'age': 15, 'symbol': 2, 'cars': 1, 'fee': 2500}, 'invalid age'], ['random rating 0', {'base': 34126, 'territory': 'C', 'age': 33, 'symbol': 6, 'cars': 3, 'fee': 0}, 49909], ['random rating 1', {'base': 62350, 'territory': 'A', 'age': 16, 'symbol': 1, 'cars': 3, 'fee': 1500}, 85673], ['random rating 2', {'base': 95267, 'territory': 'A', 'age': 16, 'symbol': 6, 'cars': 2, 'fee': 2500}, 163263], ['random rating 3', {'base': 65141, 'territory': 'A', 'age': 16, 'symbol': 5, 'cars': 2, 'fee': 1500}, 107028], ['top symbol relativity', {'base': 50001, 'territory': 'B', 'age': 40, 'symbol': 10, 'cars': 1, 'fee': 2500}, 85877], ['half-cent rounds up', {'base': 60003, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 2500}, 71503], ['sub-half cent rounds down', {'base': 40011, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 2500}, 48513]], [['youthful band ends at 24', {'base': 65596, 'territory': 'B', 'age': 24, 'symbol': 4, 'cars': 1, 'fee': 1500}, 131626], ['age 25 leaves youthful band', {'base': 53332, 'territory': 'C', 'age': 25, 'symbol': 6, 'cars': 1, 'fee': 1500}, 88165], ['senior boundary 65', {'base': 72267, 'territory': 'B', 'age': 65, 'symbol': 9, 'cars': 2, 'fee': 0}, 125658], ['two cars earn multi-car discount', {'base': 46182, 'territory': 'A', 'age': 53, 'symbol': 1, 'cars': 2, 'fee': 2500}, 44064], ['single car control', {'base': 42325, 'territory': 'C', 'age': 57, 'symbol': 4, 'cars': 1, 'fee': 2500}, 65776], ['discounted policy below minimum', {'base': 31359, 'territory': 'A', 'age': 40, 'symbol': 1, 'cars': 3, 'fee': 1500}, 31500], ['unknown territory rejected', {'base': 70758, 'territory': 'Z', 'age': 40, 'symbol': 3, 'cars': 1, 'fee': 0}, 'invalid territory'], ['under-age applicant rejected', {'base': 74254, 'territory': 'B', 'age': 15, 'symbol': 2, 'cars': 1, 'fee': 0}, 'invalid age'], ['random rating 0', {'base': 35490, 'territory': 'C', 'age': 47, 'symbol': 10, 'cars': 1, 'fee': 0}, 66899], ['random rating 1', {'base': 93585, 'territory': 'B', 'age': 47, 'symbol': 2, 'cars': 1, 'fee': 0}, 113004], ['random rating 2', {'base': 54005, 'territory': 'C', 'age': 47, 'symbol': 8, 'cars': 1, 'fee': 0}, 94779], ['random rating 3', {'base': 35309, 'territory': 'C', 'age': 20, 'symbol': 6, 'cars': 2, 'fee': 1500}, 78959], ['top symbol relativity', {'base': 50002, 'territory': 'B', 'age': 40, 'symbol': 10, 'cars': 1, 'fee': 1500}, 84878], ['half-cent rounds up', {'base': 60007, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 0}, 69008], ['sub-half cent rounds down', {'base': 40031, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 0}, 46036]], [['youthful band ends at 24', {'base': 33706, 'territory': 'B', 'age': 24, 'symbol': 1, 'cars': 1, 'fee': 1500}, 59643], ['age 25 leaves youthful band', {'base': 47580, 'territory': 'C', 'age': 25, 'symbol': 4, 'cars': 1, 'fee': 1500}, 72632], ['senior boundary 65', {'base': 45782, 'territory': 'A', 'age': 65, 'symbol': 7, 'cars': 2, 'fee': 1500}, 65778], ['two cars earn multi-car discount', {'base': 69933, 'territory': 'C', 'age': 45, 'symbol': 3, 'cars': 2, 'fee': 2500}, 92504], ['single car control', {'base': 81532, 'territory': 'A', 'age': 57, 'symbol': 10, 'cars': 1, 'fee': 1500}, 119721], ['discounted policy below minimum', {'base': 31838, 'territory': 'A', 'age': 49, 'symbol': 1, 'cars': 3, 'fee': 1500}, 31500], ['unknown territory rejected', {'base': 23484, 'territory': 'Z', 'age': 40, 'symbol': 5, 'cars': 1, 'fee': 0}, 'invalid territory'], ['under-age applicant rejected', {'base': 20672, 'territory': 'A', 'age': 15, 'symbol': 8, 'cars': 1, 'fee': 1500}, 'invalid age'], ['random rating 0', {'base': 54283, 'territory': 'B', 'age': 16, 'symbol': 7, 'cars': 2, 'fee': 0}, 109557], ['random rating 1', {'base': 85283, 'territory': 'B', 'age': 33, 'symbol': 7, 'cars': 3, 'fee': 1500}, 116248], ['random rating 2', {'base': 97243, 'territory': 'A', 'age': 47, 'symbol': 10, 'cars': 2, 'fee': 1500}, 128402], ['random rating 3', {'base': 47342, 'territory': 'B', 'age': 70, 'symbol': 9, 'cars': 3, 'fee': 1500}, 83818], ['top symbol relativity', {'base': 50003, 'territory': 'B', 'age': 40, 'symbol': 10, 'cars': 1, 'fee': 2500}, 85880], ['half-cent rounds up', {'base': 60011, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 0}, 69013], ['sub-half cent rounds down', {'base': 40051, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 0}, 46059]], [['youthful band ends at 24', {'base': 49705, 'territory': 'B', 'age': 24, 'symbol': 10, 'cars': 1, 'fee': 0}, 124325], ['age 25 leaves youthful band', {'base': 77136, 'territory': 'B', 'age': 25, 'symbol': 9, 'cars': 1, 'fee': 2500}, 126689], ['senior boundary 65', {'base': 48566, 'territory': 'C', 'age': 65, 'symbol': 7, 'cars': 1, 'fee': 2500}, 100992], ['two cars earn multi-car discount', {'base': 86089, 'territory': 'C', 'age': 58, 'symbol': 4, 'cars': 2, 'fee': 2500}, 118333], ['single car control', {'base': 65782, 'territory': 'C', 'age': 60, 'symbol': 5, 'cars': 1, 'fee': 0}, 102620], ['discounted policy below minimum', {'base': 30193, 'territory': 'A', 'age': 34, 'symbol': 1, 'cars': 3, 'fee': 2500}, 32500], ['unknown territory rejected', {'base': 37853, 'territory': 'Z', 'age': 40, 'symbol': 5, 'cars': 1, 'fee': 2500}, 'invalid territory'], ['under-age applicant rejected', {'base': 85063, 'territory': 'C', 'age': 15, 'symbol': 9, 'cars': 1, 'fee': 1500}, 'invalid age'], ['random rating 0', {'base': 81605, 'territory': 'C', 'age': 70, 'symbol': 3, 'cars': 1, 'fee': 2500}, 142534], ['random rating 1', {'base': 50741, 'territory': 'C', 'age': 16, 'symbol': 9, 'cars': 1, 'fee': 0}, 138523], ['random rating 2', {'base': 88025, 'territory': 'B', 'age': 33, 'symbol': 5, 'cars': 1, 'fee': 0}, 121475], ['random rating 3', {'base': 60769, 'territory': 'C', 'age': 47, 'symbol': 8, 'cars': 3, 'fee': 1500}, 97485], ['top symbol relativity', {'base': 50004, 'territory': 'B', 'age': 40, 'symbol': 10, 'cars': 1, 'fee': 2500}, 85882], ['half-cent rounds up', {'base': 60015, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 0}, 69017], ['sub-half cent rounds down', {'base': 40071, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 2500}, 48582]], [['youthful band ends at 24', {'base': 83462, 'territory': 'C', 'age': 24, 'symbol': 4, 'cars': 1, 'fee': 0}, 187164], ['age 25 leaves youthful band', {'base': 23842, 'territory': 'A', 'age': 25, 'symbol': 10, 'cars': 1, 'fee': 2500}, 37071], ['senior boundary 65', {'base': 43695, 'territory': 'C', 'age': 65, 'symbol': 10, 'cars': 2, 'fee': 1500}, 90454], ['two cars earn multi-car discount', {'base': 87356, 'territory': 'A', 'age': 42, 'symbol': 8, 'cars': 2, 'fee': 2500}, 108638], ['single car control', {'base': 73244, 'territory': 'B', 'age': 41, 'symbol': 8, 'cars': 1, 'fee': 0}, 113711], ['discounted policy below minimum', {'base': 30044, 'territory': 'A', 'age': 31, 'symbol': 1, 'cars': 3, 'fee': 0}, 30000], ['unknown territory rejected', {'base': 50727, 'territory': 'Z', 'age': 40, 'symbol': 6, 'cars': 1, 'fee': 0}, 'invalid territory'], ['under-age applicant rejected', {'base': 35931, 'territory': 'A', 'age': 15, 'symbol': 3, 'cars': 1, 'fee': 1500}, 'invalid age'], ['random rating 0', {'base': 90411, 'territory': 'C', 'age': 70, 'symbol': 10, 'cars': 3, 'fee': 2500}, 186559], ['random rating 1', {'base': 60039, 'territory': 'C', 'age': 33, 'symbol': 10, 'cars': 2, 'fee': 2500}, 104356], ['random rating 2', {'base': 58926, 'territory': 'A', 'age': 47, 'symbol': 9, 'cars': 2, 'fee': 1500}, 75747], ['random rating 3', {'base': 56741, 'territory': 'B', 'age': 16, 'symbol': 6, 'cars': 1, 'fee': 2500}, 124848], ['top symbol relativity', {'base': 50005, 'territory': 'B', 'age': 40, 'symbol': 10, 'cars': 1, 'fee': 2500}, 85883], ['half-cent rounds up', {'base': 60019, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 0}, 69022], ['sub-half cent rounds down', {'base': 40091, 'territory': 'B', 'age': 40, 'symbol': 1, 'cars': 1, 'fee': 2500}, 48605]]]\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 bounded teaching model of a stipulated toy rating contract. Amounts are integer cents and factors exact rationals; it makes no claim of conformance with any filed rating plan, bureau manual or jurisdiction. 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-insurance_premium_rating-auto-multiplicative-premium-rounding","generated_at":"2026-09-29T14:47:08.759766+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Premium rating engines apply ordered tabular rules where one misplaced boundary or step silently misprices policies.","root_cause":"The single rounding step truncates the exact rated premium.","sha256":"df4143bb1822fa790d2d789012021eafa1aa8b70f409b70afbf66f365e6a0879","title":"Personal auto multiplicative rating: Rated premium is truncated instead of rounded half-up · 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":44.853,"exit_code":1,"observations":[{"actual":136369,"check":"youthful band ends at 24","expected":136368,"passed":false},{"actual":52185,"check":"age 25 leaves youthful band","expected":52185,"passed":true},{"actual":45913,"check":"senior boundary 65","expected":45912,"passed":false},{"actual":65059,"check":"two cars earn multi-car discount","expected":65058,"passed":false},{"actual":58246,"check":"single car control","expected":58246,"passed":true},{"actual":30000,"check":"discounted policy below minimum","expected":30000,"passed":true},{"actual":"invalid territory","check":"unknown territory rejected","expected":"invalid territory","passed":true},{"actual":"invalid age","check":"under-age applicant rejected","expected":"invalid age","passed":true},{"actual":49910,"check":"random rating 0","expected":49909,"passed":false},{"actual":85673,"check":"random rating 1","expected":85673,"passed":true},{"actual":163264,"check":"random rating 2","expected":163263,"passed":false},{"actual":107029,"check":"random rating 3","expected":107028,"passed":false},{"actual":85877,"check":"top symbol relativity","expected":85877,"passed":true},{"actual":71504,"check":"half-cent rounds up","expected":71503,"passed":false},{"actual":48513,"check":"sub-half cent rounds down","expected":48513,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"youthful band ends at 24\", \"actual\": 136369, \"expected\": 136368, \"passed\": false}, {\"check\": \"age 25 leaves youthful band\", \"actual\": 52185, \"expected\": 52185, \"passed\": true}, {\"check\": \"senior boundary 65\", \"actual\": 45913, \"expected\": 45912, \"passed\": false}, {\"check\": \"two cars earn multi-car discount\", \"actual\": 65059, \"expected\": 65058, \"passed\": false}, {\"check\": \"single car control\", \"actual\": 58246, \"expected\": 58246, \"passed\": true}, {\"check\": \"discounted policy below minimum\", \"actual\": 30000, \"expected\": 30000, \"passed\": true}, {\"check\": \"unknown territory rejected\", \"actual\": \"invalid territory\", \"expected\": \"invalid territory\", \"passed\": true}, {\"check\": \"under-age applicant rejected\", \"actual\": \"invalid age\", \"expected\": \"invalid age\", \"passed\": true}, {\"check\": \"random rating 0\", \"actual\": 49910, \"expected\": 49909, \"passed\": false}, {\"check\": \"random rating 1\", \"actual\": 85673, \"expected\": 85673, \"passed\": true}, {\"check\": \"random rating 2\", \"actual\": 163264, \"expected\": 163263, \"passed\": false}, {\"check\": \"random rating 3\", \"actual\": 107029, \"expected\": 107028, \"passed\": false}, {\"check\": \"top symbol relativity\", \"actual\": 85877, \"expected\": 85877, \"passed\": true}, {\"check\": \"half-cent rounds up\", \"actual\": 71504, \"expected\": 71503, \"passed\": false}, {\"check\": \"sub-half cent rounds down\", \"actual\": 48513, \"expected\": 48513, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":45.118,"exit_code":1,"observations":[{"actual":136368,"check":"youthful band ends at 24","expected":136368,"passed":true},{"actual":52184,"check":"age 25 leaves youthful band","expected":52185,"passed":false},{"actual":45912,"check":"senior boundary 65","expected":45912,"passed":true},{"actual":65058,"check":"two cars earn multi-car discount","expected":65058,"passed":true},{"actual":58245,"check":"single car control","expected":58246,"passed":false},{"actual":30000,"check":"discounted policy below minimum","expected":30000,"passed":true},{"actual":"invalid territory","check":"unknown territory rejected","expected":"invalid territory","passed":true},{"actual":"invalid age","check":"under-age applicant rejected","expected":"invalid age","passed":true},{"actual":49909,"check":"random rating 0","expected":49909,"passed":true},{"actual":85672,"check":"random rating 1","expected":85673,"passed":false},{"actual":163263,"check":"random rating 2","expected":163263,"passed":true},{"actual":107028,"check":"random rating 3","expected":107028,"passed":true},{"actual":85876,"check":"top symbol relativity","expected":85877,"passed":false},{"actual":71503,"check":"half-cent rounds up","expected":71503,"passed":true},{"actual":48512,"check":"sub-half cent rounds down","expected":48513,"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"youthful band ends at 24\", \"actual\": 136368, \"expected\": 136368, \"passed\": true}, {\"check\": \"age 25 leaves youthful band\", \"actual\": 52184, \"expected\": 52185, \"passed\": false}, {\"check\": \"senior boundary 65\", \"actual\": 45912, \"expected\": 45912, \"passed\": true}, {\"check\": \"two cars earn multi-car discount\", \"actual\": 65058, \"expected\": 65058, \"passed\": true}, {\"check\": \"single car control\", \"actual\": 58245, \"expected\": 58246, \"passed\": false}, {\"check\": \"discounted policy below minimum\", \"actual\": 30000, \"expected\": 30000, \"passed\": true}, {\"check\": \"unknown territory rejected\", \"actual\": \"invalid territory\", \"expected\": \"invalid territory\", \"passed\": true}, {\"check\": \"under-age applicant rejected\", \"actual\": \"invalid age\", \"expected\": \"invalid age\", \"passed\": true}, {\"check\": \"random rating 0\", \"actual\": 49909, \"expected\": 49909, \"passed\": true}, {\"check\": \"random rating 1\", \"actual\": 85672, \"expected\": 85673, \"passed\": false}, {\"check\": \"random rating 2\", \"actual\": 163263, \"expected\": 163263, \"passed\": true}, {\"check\": \"random rating 3\", \"actual\": 107028, \"expected\": 107028, \"passed\": true}, {\"check\": \"top symbol relativity\", \"actual\": 85876, \"expected\": 85877, \"passed\": false}, {\"check\": \"half-cent rounds up\", \"actual\": 71503, \"expected\": 71503, \"passed\": true}, {\"check\": \"sub-half cent rounds down\", \"actual\": 48512, \"expected\": 48513, \"passed\": false}], \"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."}}