{"abstract":"Private-placement numbers containing *, @ or # are reported malformed.","category":"Check-digit algorithms","checks":8,"contract":"CUSIP check: nine ASCII characters, the ninth a digit. Payload values: digits face value, A-Z 10-35, * 36, @ 37, # 38 (anything else \"malformed\"). Every second payload character (1-based even position) is doubled, and the decimal digits of each value are summed. Return [(10 - sum % 10) % 10, whether it equals the ninth digit].","evaluation_group":"w2-check_digit_algorithms-cusip","failed_approach":"Accepting the symbols with values 0-2 treats them as digits and computes wrong checks.","family":"w2-check_digit_algorithms-cusip-private-placement-symbols","id":"FA-72546","implementations":{"attempt":{"sha256":"0a25a45e73f7eda4d0a92b0922dac7ce025a680d320b22bb74ff5e1382d553ae","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(s):\n    if len(s) != 9 or not s.isascii() or not s[8].isdigit():\n        return 'malformed'\n    total = 0\n    for i, ch in enumerate(s[:8]):\n        if ch.isdigit():\n            v = int(ch)\n        elif 'A' <= ch <= 'Z':\n            v = ord(ch) - 55\n        elif ch in '*@#':\n            v = '*@#'.index(ch)\n        else:\n            return 'malformed'\n        if i % 2 == 1:\n            v *= 2\n        total += v // 10 + v % 10\n    check = (10 - total % 10) % 10\n    return [check, check == int(s[8])]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression [\"7WKYMG#Y7\"]', ['7WKYMG#Y7'], [3, False]], ['regression [\"123456*@0\"]', ['123456*@0'], [6, False]], ['control [\"595693682\"]', ['595693682'], [0, False]], ['control [\"317997MK3\"]', ['317997MK3'], [7, False]], ['control [\"445197417\"]', ['445197417'], [1, False]], ['control [\"624143L53\"]', ['624143L53'], [0, False]], ['control [\"7900294Q7\"]', ['7900294Q7'], [2, False]], ['control [\"161949AV8\"]', ['161949AV8'], [4, False]]], [['regression [\"123456*@0\"]', ['123456*@0'], [6, False]], ['regression [\"7WKYMG#Y7\"]', ['7WKYMG#Y7'], [3, False]], ['control [\"161949AV8\"]', ['161949AV8'], [4, False]], ['control [\"523003XR4\"]', ['523003XR4'], [7, False]], ['control [\"907215RM1\"]', ['907215RM1'], [1, True]], ['control [\"088857YN7\"]', ['088857YN7'], [1, False]], ['control [\"462107IA0\"]', ['462107IA0'], [3, False]], ['control [\"6OZ44LI17\"]', ['6OZ44LI17'], [5, False]]], [['regression [\"7WKYMG#Y7\"]', ['7WKYMG#Y7'], [3, False]], ['regression [\"123456*@0\"]', ['123456*@0'], [6, False]], ['control [\"6OZ44LI17\"]', ['6OZ44LI17'], [5, False]], ['control [\"V0SRK56U5\"]', ['V0SRK56U5'], [2, False]], ['control [\"U243EIXI1\"]', ['U243EIXI1'], [4, False]], ['control [\"6PI3M7KT7\"]', ['6PI3M7KT7'], [0, False]], ['control [\"8G0MH4QH6\"]', ['8G0MH4QH6'], [8, False]], ['control [\"KU9BYOL70\"]', ['KU9BYOL70'], [2, False]]], [['regression [\"123456*@0\"]', ['123456*@0'], [6, False]], ['regression [\"7WKYMG#Y7\"]', ['7WKYMG#Y7'], [3, False]], ['control [\"KU9BYOL70\"]', ['KU9BYOL70'], [2, False]], ['control [\"XIXEC2WW3\"]', ['XIXEC2WW3'], [7, False]], ['control [\"037833100\"]', ['037833100'], [0, True]], ['control [\"38259P508\"]', ['38259P508'], [8, True]], ['control [\"594918104\"]', ['594918104'], [4, True]], ['control [\"17275R102\"]', ['17275R102'], [2, True]]], [['regression [\"7WKYMG#Y7\"]', ['7WKYMG#Y7'], [3, False]], ['regression [\"123456*@0\"]', ['123456*@0'], [6, False]], ['control [\"17275R102\"]', ['17275R102'], [2, True]], ['control [\"68389X105\"]', ['68389X105'], [5, True]], ['control [\"037833101\"]', ['037833101'], [0, False]], ['control [\"03783310\"]', ['03783310'], 'malformed'], ['control [\"0378331a0\"]', ['0378331a0'], 'malformed'], ['control [\"ZZZZZZZZ0\"]', ['ZZZZZZZZ0'], [0, True]]]]\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":"fff6499073a8beac7172f3e306db86f8be852202957966a7d5de35f406cd8aaa","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(s):\n    if len(s) != 9 or not s.isascii() or not s[8].isdigit():\n        return 'malformed'\n    total = 0\n    for i, ch in enumerate(s[:8]):\n        if ch.isdigit():\n            v = int(ch)\n        elif 'A' <= ch <= 'Z':\n            v = ord(ch) - 55\n        elif ch in '':\n            v = 36 + '*@#'.index(ch)\n        else:\n            return 'malformed'\n        if i % 2 == 1:\n            v *= 2\n        total += v // 10 + v % 10\n    check = (10 - total % 10) % 10\n    return [check, check == int(s[8])]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression [\"7WKYMG#Y7\"]', ['7WKYMG#Y7'], [3, False]], ['regression [\"123456*@0\"]', ['123456*@0'], [6, False]], ['control [\"595693682\"]', ['595693682'], [0, False]], ['control [\"317997MK3\"]', ['317997MK3'], [7, False]], ['control [\"445197417\"]', ['445197417'], [1, False]], ['control [\"624143L53\"]', ['624143L53'], [0, False]], ['control [\"7900294Q7\"]', ['7900294Q7'], [2, False]], ['control [\"161949AV8\"]', ['161949AV8'], [4, False]]], [['regression [\"123456*@0\"]', ['123456*@0'], [6, False]], ['regression [\"7WKYMG#Y7\"]', ['7WKYMG#Y7'], [3, False]], ['control [\"161949AV8\"]', ['161949AV8'], [4, False]], ['control [\"523003XR4\"]', ['523003XR4'], [7, False]], ['control [\"907215RM1\"]', ['907215RM1'], [1, True]], ['control [\"088857YN7\"]', ['088857YN7'], [1, False]], ['control [\"462107IA0\"]', ['462107IA0'], [3, False]], ['control [\"6OZ44LI17\"]', ['6OZ44LI17'], [5, False]]], [['regression [\"7WKYMG#Y7\"]', ['7WKYMG#Y7'], [3, False]], ['regression [\"123456*@0\"]', ['123456*@0'], [6, False]], ['control [\"6OZ44LI17\"]', ['6OZ44LI17'], [5, False]], ['control [\"V0SRK56U5\"]', ['V0SRK56U5'], [2, False]], ['control [\"U243EIXI1\"]', ['U243EIXI1'], [4, False]], ['control [\"6PI3M7KT7\"]', ['6PI3M7KT7'], [0, False]], ['control [\"8G0MH4QH6\"]', ['8G0MH4QH6'], [8, False]], ['control [\"KU9BYOL70\"]', ['KU9BYOL70'], [2, False]]], [['regression [\"123456*@0\"]', ['123456*@0'], [6, False]], ['regression [\"7WKYMG#Y7\"]', ['7WKYMG#Y7'], [3, False]], ['control [\"KU9BYOL70\"]', ['KU9BYOL70'], [2, False]], ['control [\"XIXEC2WW3\"]', ['XIXEC2WW3'], [7, False]], ['control [\"037833100\"]', ['037833100'], [0, True]], ['control [\"38259P508\"]', ['38259P508'], [8, True]], ['control [\"594918104\"]', ['594918104'], [4, True]], ['control [\"17275R102\"]', ['17275R102'], [2, True]]], [['regression [\"7WKYMG#Y7\"]', ['7WKYMG#Y7'], [3, False]], ['regression [\"123456*@0\"]', ['123456*@0'], [6, False]], ['control [\"17275R102\"]', ['17275R102'], [2, True]], ['control [\"68389X105\"]', ['68389X105'], [5, True]], ['control [\"037833101\"]', ['037833101'], [0, False]], ['control [\"03783310\"]', ['03783310'], 'malformed'], ['control [\"0378331a0\"]', ['0378331a0'], 'malformed'], ['control [\"ZZZZZZZZ0\"]', ['ZZZZZZZZ0'], [0, True]]]]\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":"fac9035477adda0a4289963cc429131bedcb6373f48c6444266aab4ff424e104","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(s):\n    if len(s) != 9 or not s.isascii() or not s[8].isdigit():\n        return 'malformed'\n    total = 0\n    for i, ch in enumerate(s[:8]):\n        if ch.isdigit():\n            v = int(ch)\n        elif 'A' <= ch <= 'Z':\n            v = ord(ch) - 55\n        elif ch in '*@#':\n            v = 36 + '*@#'.index(ch)\n        else:\n            return 'malformed'\n        if i % 2 == 1:\n            v *= 2\n        total += v // 10 + v % 10\n    check = (10 - total % 10) % 10\n    return [check, check == int(s[8])]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression [\"7WKYMG#Y7\"]', ['7WKYMG#Y7'], [3, False]], ['regression [\"123456*@0\"]', ['123456*@0'], [6, False]], ['control [\"595693682\"]', ['595693682'], [0, False]], ['control [\"317997MK3\"]', ['317997MK3'], [7, False]], ['control [\"445197417\"]', ['445197417'], [1, False]], ['control [\"624143L53\"]', ['624143L53'], [0, False]], ['control [\"7900294Q7\"]', ['7900294Q7'], [2, False]], ['control [\"161949AV8\"]', ['161949AV8'], [4, False]]], [['regression [\"123456*@0\"]', ['123456*@0'], [6, False]], ['regression [\"7WKYMG#Y7\"]', ['7WKYMG#Y7'], [3, False]], ['control [\"161949AV8\"]', ['161949AV8'], [4, False]], ['control [\"523003XR4\"]', ['523003XR4'], [7, False]], ['control [\"907215RM1\"]', ['907215RM1'], [1, True]], ['control [\"088857YN7\"]', ['088857YN7'], [1, False]], ['control [\"462107IA0\"]', ['462107IA0'], [3, False]], ['control [\"6OZ44LI17\"]', ['6OZ44LI17'], [5, False]]], [['regression [\"7WKYMG#Y7\"]', ['7WKYMG#Y7'], [3, False]], ['regression [\"123456*@0\"]', ['123456*@0'], [6, False]], ['control [\"6OZ44LI17\"]', ['6OZ44LI17'], [5, False]], ['control [\"V0SRK56U5\"]', ['V0SRK56U5'], [2, False]], ['control [\"U243EIXI1\"]', ['U243EIXI1'], [4, False]], ['control [\"6PI3M7KT7\"]', ['6PI3M7KT7'], [0, False]], ['control [\"8G0MH4QH6\"]', ['8G0MH4QH6'], [8, False]], ['control [\"KU9BYOL70\"]', ['KU9BYOL70'], [2, False]]], [['regression [\"123456*@0\"]', ['123456*@0'], [6, False]], ['regression [\"7WKYMG#Y7\"]', ['7WKYMG#Y7'], [3, False]], ['control [\"KU9BYOL70\"]', ['KU9BYOL70'], [2, False]], ['control [\"XIXEC2WW3\"]', ['XIXEC2WW3'], [7, False]], ['control [\"037833100\"]', ['037833100'], [0, True]], ['control [\"38259P508\"]', ['38259P508'], [8, True]], ['control [\"594918104\"]', ['594918104'], [4, True]], ['control [\"17275R102\"]', ['17275R102'], [2, True]]], [['regression [\"7WKYMG#Y7\"]', ['7WKYMG#Y7'], [3, False]], ['regression [\"123456*@0\"]', ['123456*@0'], [6, False]], ['control [\"17275R102\"]', ['17275R102'], [2, True]], ['control [\"68389X105\"]', ['68389X105'], [5, True]], ['control [\"037833101\"]', ['037833101'], [0, False]], ['control [\"03783310\"]', ['03783310'], 'malformed'], ['control [\"0378331a0\"]', ['0378331a0'], 'malformed'], ['control [\"ZZZZZZZZ0\"]', ['ZZZZZZZZ0'], [0, True]]]]\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 the named scheme under the stated contract; not a certified validator. 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-check_digit_algorithms-cusip-private-placement-symbols","generated_at":"2026-09-29T14:48:39.492690+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Clearing and custody systems validate North American security identifiers.","repair":"Accept *, @ and # with values 36, 37 and 38.","root_cause":"The payload alphabet omits the three symbols that take values 36-38.","sha256":"b38e314e7ed23d4bb466bff9d9e68135c40d6b575f7af0f8d35c9350ed0486ee","title":"CUSIP rejects private-placement symbols · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":41.586,"exit_code":1,"observations":[{"actual":[2,false],"check":"regression [\"7WKYMG#Y7\"]","expected":[3,false],"passed":false},{"actual":[4,false],"check":"regression [\"123456*@0\"]","expected":[6,false],"passed":false},{"actual":[0,false],"check":"control [\"595693682\"]","expected":[0,false],"passed":true},{"actual":[7,false],"check":"control [\"317997MK3\"]","expected":[7,false],"passed":true},{"actual":[1,false],"check":"control [\"445197417\"]","expected":[1,false],"passed":true},{"actual":[0,false],"check":"control [\"624143L53\"]","expected":[0,false],"passed":true},{"actual":[2,false],"check":"control [\"7900294Q7\"]","expected":[2,false],"passed":true},{"actual":[4,false],"check":"control [\"161949AV8\"]","expected":[4,false],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression [\\\"7WKYMG#Y7\\\"]\", \"actual\": [2, false], \"expected\": [3, false], \"passed\": false}, {\"check\": \"regression [\\\"123456*@0\\\"]\", \"actual\": [4, false], \"expected\": [6, false], \"passed\": false}, {\"check\": \"control [\\\"595693682\\\"]\", \"actual\": [0, false], \"expected\": [0, false], \"passed\": true}, {\"check\": \"control [\\\"317997MK3\\\"]\", \"actual\": [7, false], \"expected\": [7, false], \"passed\": true}, {\"check\": \"control [\\\"445197417\\\"]\", \"actual\": [1, false], \"expected\": [1, false], \"passed\": true}, {\"check\": \"control [\\\"624143L53\\\"]\", \"actual\": [0, false], \"expected\": [0, false], \"passed\": true}, {\"check\": \"control [\\\"7900294Q7\\\"]\", \"actual\": [2, false], \"expected\": [2, false], \"passed\": true}, {\"check\": \"control [\\\"161949AV8\\\"]\", \"actual\": [4, false], \"expected\": [4, false], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":39.927,"exit_code":1,"observations":[{"actual":"malformed","check":"regression [\"7WKYMG#Y7\"]","expected":[3,false],"passed":false},{"actual":"malformed","check":"regression [\"123456*@0\"]","expected":[6,false],"passed":false},{"actual":[0,false],"check":"control [\"595693682\"]","expected":[0,false],"passed":true},{"actual":[7,false],"check":"control [\"317997MK3\"]","expected":[7,false],"passed":true},{"actual":[1,false],"check":"control [\"445197417\"]","expected":[1,false],"passed":true},{"actual":[0,false],"check":"control [\"624143L53\"]","expected":[0,false],"passed":true},{"actual":[2,false],"check":"control [\"7900294Q7\"]","expected":[2,false],"passed":true},{"actual":[4,false],"check":"control [\"161949AV8\"]","expected":[4,false],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression [\\\"7WKYMG#Y7\\\"]\", \"actual\": \"malformed\", \"expected\": [3, false], \"passed\": false}, {\"check\": \"regression [\\\"123456*@0\\\"]\", \"actual\": \"malformed\", \"expected\": [6, false], \"passed\": false}, {\"check\": \"control [\\\"595693682\\\"]\", \"actual\": [0, false], \"expected\": [0, false], \"passed\": true}, {\"check\": \"control [\\\"317997MK3\\\"]\", \"actual\": [7, false], \"expected\": [7, false], \"passed\": true}, {\"check\": \"control [\\\"445197417\\\"]\", \"actual\": [1, false], \"expected\": [1, false], \"passed\": true}, {\"check\": \"control [\\\"624143L53\\\"]\", \"actual\": [0, false], \"expected\": [0, false], \"passed\": true}, {\"check\": \"control [\\\"7900294Q7\\\"]\", \"actual\": [2, false], \"expected\": [2, false], \"passed\": true}, {\"check\": \"control [\\\"161949AV8\\\"]\", \"actual\": [4, false], \"expected\": [4, false], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":38.4,"exit_code":0,"observations":[{"actual":[3,false],"check":"regression [\"7WKYMG#Y7\"]","expected":[3,false],"passed":true},{"actual":[6,false],"check":"regression [\"123456*@0\"]","expected":[6,false],"passed":true},{"actual":[0,false],"check":"control [\"595693682\"]","expected":[0,false],"passed":true},{"actual":[7,false],"check":"control [\"317997MK3\"]","expected":[7,false],"passed":true},{"actual":[1,false],"check":"control [\"445197417\"]","expected":[1,false],"passed":true},{"actual":[0,false],"check":"control [\"624143L53\"]","expected":[0,false],"passed":true},{"actual":[2,false],"check":"control [\"7900294Q7\"]","expected":[2,false],"passed":true},{"actual":[4,false],"check":"control [\"161949AV8\"]","expected":[4,false],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression [\\\"7WKYMG#Y7\\\"]\", \"actual\": [3, false], \"expected\": [3, false], \"passed\": true}, {\"check\": \"regression [\\\"123456*@0\\\"]\", \"actual\": [6, false], \"expected\": [6, false], \"passed\": true}, {\"check\": \"control [\\\"595693682\\\"]\", \"actual\": [0, false], \"expected\": [0, false], \"passed\": true}, {\"check\": \"control [\\\"317997MK3\\\"]\", \"actual\": [7, false], \"expected\": [7, false], \"passed\": true}, {\"check\": \"control [\\\"445197417\\\"]\", \"actual\": [1, false], \"expected\": [1, false], \"passed\": true}, {\"check\": \"control [\\\"624143L53\\\"]\", \"actual\": [0, false], \"expected\": [0, false], \"passed\": true}, {\"check\": \"control [\\\"7900294Q7\\\"]\", \"actual\": [2, false], \"expected\": [2, false], \"passed\": true}, {\"check\": \"control [\\\"161949AV8\\\"]\", \"actual\": [4, false], \"expected\": [4, false], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}