{"abstract":"The announcement trace violates the stated interrupt-resumption contract.","category":"Assistive announcements","checks":8,"contract":"Speech jobs are [id,words,cursor]. Start queues a new job when one is active. Urgent pushes the current job on a LIFO suspended stack and begins fresh. Step speaks one word and finishes only after its last word; suspended jobs resume before queued normal work. Cancel ID removes it from every location and promotes next available job. Clear discards all jobs without speech. Report emitted [id,word] and current/suspended/waiting IDs with cursors.","evaluation_group":"s3-announcement-interrupt-resumption","failed_approach":"The attempted repair substitutes waiting=[] and still violates a regression oracle.","family":"s3-assistive-announcements-interrupt-resumption-cancel-waiting","id":"FA-20916","implementations":{"attempt":{"sha256":"3bfc3d006a55f68d3a58a7ec2281c01099c596ad71224be0d4b629e30c96c293","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(events):\n    current=None; suspended=[]; waiting=[]; spoken=[]\n    for e in events:\n        if e[0] in ('start','urgent'):\n            job=[e[1],list(e[2]),0]\n            if e[0]=='urgent':\n                if current is not None: suspended.append(current)\n                current=job\n            elif current is None: current=job\n            else: waiting.append(job)\n        elif e[0]=='cancel':\n            if current is not None and current[0]==e[1]: current=None\n            suspended=[x for x in suspended if x[0]!=e[1]]\n            waiting=[]\n        elif e[0]=='clear': current=None; suspended=[]; waiting=[]\n        elif e[0]=='step' and current is not None:\n            if current[2]<len(current[1]):\n                spoken.append([current[0],current[1][current[2]]])\n                current[2]+=1\n            if current[2]>=len(current[1]): current=None\n        if current is None:\n            if suspended: current=suspended.pop()\n            elif waiting: current=waiting.pop(0)\n    return [spoken,None if current is None else [current[0],current[2]],[[x[0],x[2]] for x in suspended],[[x[0],x[2]] for x in waiting]]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [\"[['start','a',['a']*(N+2)],['step'],['urgent','b',['b']],['urgent','c',['c']],['step'],['step'],['step']]\", \"[['start','a',['a']*N],['start','b',['b']],['start','c',['c']]]+[['step']]*(N+2)\", \"[['start','a',['a']*N],['urgent','b',['b']],['start','c',['c']],['cancel','a'],['step'],['step']]\", \"[['start','a',['a']*N],['start','b',['beta']],['start','c',['gamma']],['cancel','b']]\", \"[['start','a',['a']*N],['urgent','b',['b']],['start','c',['c']],['clear']]\", \"[['start','a',['a']*N],['urgent','b',['b']],['urgent','c',['c']],['cancel','a']]\", \"[['start','a',[]],['step']]\", \"[['start','a',['a']*N],['cancel','a']]\"]\nexpected = {1: [[[['a', 'a'], ['c', 'c'], ['b', 'b'], ['a', 'a']], ['a', 2], [], []], [[['a', 'a'], ['b', 'b'], ['c', 'c']], None, [], []], [[['b', 'b'], ['c', 'c']], None, [], []], [[], ['a', 0], [], [['c', 0]]], [[], None, [], []], [[], ['c', 0], [['b', 0]], []], [[], None, [], []], [[], None, [], []]], 2: [[[['a', 'a'], ['c', 'c'], ['b', 'b'], ['a', 'a']], ['a', 2], [], []], [[['a', 'a'], ['a', 'a'], ['b', 'b'], ['c', 'c']], None, [], []], [[['b', 'b'], ['c', 'c']], None, [], []], [[], ['a', 0], [], [['c', 0]]], [[], None, [], []], [[], ['c', 0], [['b', 0]], []], [[], None, [], []], [[], None, [], []]], 3: [[[['a', 'a'], ['c', 'c'], ['b', 'b'], ['a', 'a']], ['a', 2], [], []], [[['a', 'a'], ['a', 'a'], ['a', 'a'], ['b', 'b'], ['c', 'c']], None, [], []], [[['b', 'b'], ['c', 'c']], None, [], []], [[], ['a', 0], [], [['c', 0]]], [[], None, [], []], [[], ['c', 0], [['b', 0]], []], [[], None, [], []], [[], None, [], []]], 4: [[[['a', 'a'], ['c', 'c'], ['b', 'b'], ['a', 'a']], ['a', 2], [], []], [[['a', 'a'], ['a', 'a'], ['a', 'a'], ['a', 'a'], ['b', 'b'], ['c', 'c']], None, [], []], [[['b', 'b'], ['c', 'c']], None, [], []], [[], ['a', 0], [], [['c', 0]]], [[], None, [], []], [[], ['c', 0], [['b', 0]], []], [[], None, [], []], [[], None, [], []]], 5: [[[['a', 'a'], ['c', 'c'], ['b', 'b'], ['a', 'a']], ['a', 2], [], []], [[['a', 'a'], ['a', 'a'], ['a', 'a'], ['a', 'a'], ['a', 'a'], ['b', 'b'], ['c', 'c']], None, [], []], [[['b', 'b'], ['c', 'c']], None, [], []], [[], ['a', 0], [], [['c', 0]]], [[], None, [], []], [[], ['c', 0], [['b', 0]], []], [[], None, [], []], [[], None, [], []]]}[N]\nfor i, expression in enumerate(fixtures):\n    check(\"trace-\"+str(i+1), solve(eval(expression)), expected[i])\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":"81a442c78149bb2a42be377278e697922cfb06778eee060f396f9dc3dca04f76","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(events):\n    current=None; suspended=[]; waiting=[]; spoken=[]\n    for e in events:\n        if e[0] in ('start','urgent'):\n            job=[e[1],list(e[2]),0]\n            if e[0]=='urgent':\n                if current is not None: suspended.append(current)\n                current=job\n            elif current is None: current=job\n            else: waiting.append(job)\n        elif e[0]=='cancel':\n            if current is not None and current[0]==e[1]: current=None\n            suspended=[x for x in suspended if x[0]!=e[1]]\n            waiting=[x for x in waiting if e[1] not in x[1]]\n        elif e[0]=='clear': current=None; suspended=[]; waiting=[]\n        elif e[0]=='step' and current is not None:\n            if current[2]<len(current[1]):\n                spoken.append([current[0],current[1][current[2]]])\n                current[2]+=1\n            if current[2]>=len(current[1]): current=None\n        if current is None:\n            if suspended: current=suspended.pop()\n            elif waiting: current=waiting.pop(0)\n    return [spoken,None if current is None else [current[0],current[2]],[[x[0],x[2]] for x in suspended],[[x[0],x[2]] for x in waiting]]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [\"[['start','a',['a']*(N+2)],['step'],['urgent','b',['b']],['urgent','c',['c']],['step'],['step'],['step']]\", \"[['start','a',['a']*N],['start','b',['b']],['start','c',['c']]]+[['step']]*(N+2)\", \"[['start','a',['a']*N],['urgent','b',['b']],['start','c',['c']],['cancel','a'],['step'],['step']]\", \"[['start','a',['a']*N],['start','b',['beta']],['start','c',['gamma']],['cancel','b']]\", \"[['start','a',['a']*N],['urgent','b',['b']],['start','c',['c']],['clear']]\", \"[['start','a',['a']*N],['urgent','b',['b']],['urgent','c',['c']],['cancel','a']]\", \"[['start','a',[]],['step']]\", \"[['start','a',['a']*N],['cancel','a']]\"]\nexpected = {1: [[[['a', 'a'], ['c', 'c'], ['b', 'b'], ['a', 'a']], ['a', 2], [], []], [[['a', 'a'], ['b', 'b'], ['c', 'c']], None, [], []], [[['b', 'b'], ['c', 'c']], None, [], []], [[], ['a', 0], [], [['c', 0]]], [[], None, [], []], [[], ['c', 0], [['b', 0]], []], [[], None, [], []], [[], None, [], []]], 2: [[[['a', 'a'], ['c', 'c'], ['b', 'b'], ['a', 'a']], ['a', 2], [], []], [[['a', 'a'], ['a', 'a'], ['b', 'b'], ['c', 'c']], None, [], []], [[['b', 'b'], ['c', 'c']], None, [], []], [[], ['a', 0], [], [['c', 0]]], [[], None, [], []], [[], ['c', 0], [['b', 0]], []], [[], None, [], []], [[], None, [], []]], 3: [[[['a', 'a'], ['c', 'c'], ['b', 'b'], ['a', 'a']], ['a', 2], [], []], [[['a', 'a'], ['a', 'a'], ['a', 'a'], ['b', 'b'], ['c', 'c']], None, [], []], [[['b', 'b'], ['c', 'c']], None, [], []], [[], ['a', 0], [], [['c', 0]]], [[], None, [], []], [[], ['c', 0], [['b', 0]], []], [[], None, [], []], [[], None, [], []]], 4: [[[['a', 'a'], ['c', 'c'], ['b', 'b'], ['a', 'a']], ['a', 2], [], []], [[['a', 'a'], ['a', 'a'], ['a', 'a'], ['a', 'a'], ['b', 'b'], ['c', 'c']], None, [], []], [[['b', 'b'], ['c', 'c']], None, [], []], [[], ['a', 0], [], [['c', 0]]], [[], None, [], []], [[], ['c', 0], [['b', 0]], []], [[], None, [], []], [[], None, [], []]], 5: [[[['a', 'a'], ['c', 'c'], ['b', 'b'], ['a', 'a']], ['a', 2], [], []], [[['a', 'a'], ['a', 'a'], ['a', 'a'], ['a', 'a'], ['a', 'a'], ['b', 'b'], ['c', 'c']], None, [], []], [[['b', 'b'], ['c', 'c']], None, [], []], [[], ['a', 0], [], [['c', 0]]], [[], None, [], []], [[], ['c', 0], [['b', 0]], []], [[], None, [], []], [[], None, [], []]]}[N]\nfor i, expression in enumerate(fixtures):\n    check(\"trace-\"+str(i+1), solve(eval(expression)), expected[i])\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":"5e832a3e83061f1ee0093431e9d549659342050e125ab0deee199556dd419aae","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(events):\n    current=None; suspended=[]; waiting=[]; spoken=[]\n    for e in events:\n        if e[0] in ('start','urgent'):\n            job=[e[1],list(e[2]),0]\n            if e[0]=='urgent':\n                if current is not None: suspended.append(current)\n                current=job\n            elif current is None: current=job\n            else: waiting.append(job)\n        elif e[0]=='cancel':\n            if current is not None and current[0]==e[1]: current=None\n            suspended=[x for x in suspended if x[0]!=e[1]]\n            waiting=[x for x in waiting if x[0]!=e[1]]\n        elif e[0]=='clear': current=None; suspended=[]; waiting=[]\n        elif e[0]=='step' and current is not None:\n            if current[2]<len(current[1]):\n                spoken.append([current[0],current[1][current[2]]])\n                current[2]+=1\n            if current[2]>=len(current[1]): current=None\n        if current is None:\n            if suspended: current=suspended.pop()\n            elif waiting: current=waiting.pop(0)\n    return [spoken,None if current is None else [current[0],current[2]],[[x[0],x[2]] for x in suspended],[[x[0],x[2]] for x in waiting]]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [\"[['start','a',['a']*(N+2)],['step'],['urgent','b',['b']],['urgent','c',['c']],['step'],['step'],['step']]\", \"[['start','a',['a']*N],['start','b',['b']],['start','c',['c']]]+[['step']]*(N+2)\", \"[['start','a',['a']*N],['urgent','b',['b']],['start','c',['c']],['cancel','a'],['step'],['step']]\", \"[['start','a',['a']*N],['start','b',['beta']],['start','c',['gamma']],['cancel','b']]\", \"[['start','a',['a']*N],['urgent','b',['b']],['start','c',['c']],['clear']]\", \"[['start','a',['a']*N],['urgent','b',['b']],['urgent','c',['c']],['cancel','a']]\", \"[['start','a',[]],['step']]\", \"[['start','a',['a']*N],['cancel','a']]\"]\nexpected = {1: [[[['a', 'a'], ['c', 'c'], ['b', 'b'], ['a', 'a']], ['a', 2], [], []], [[['a', 'a'], ['b', 'b'], ['c', 'c']], None, [], []], [[['b', 'b'], ['c', 'c']], None, [], []], [[], ['a', 0], [], [['c', 0]]], [[], None, [], []], [[], ['c', 0], [['b', 0]], []], [[], None, [], []], [[], None, [], []]], 2: [[[['a', 'a'], ['c', 'c'], ['b', 'b'], ['a', 'a']], ['a', 2], [], []], [[['a', 'a'], ['a', 'a'], ['b', 'b'], ['c', 'c']], None, [], []], [[['b', 'b'], ['c', 'c']], None, [], []], [[], ['a', 0], [], [['c', 0]]], [[], None, [], []], [[], ['c', 0], [['b', 0]], []], [[], None, [], []], [[], None, [], []]], 3: [[[['a', 'a'], ['c', 'c'], ['b', 'b'], ['a', 'a']], ['a', 2], [], []], [[['a', 'a'], ['a', 'a'], ['a', 'a'], ['b', 'b'], ['c', 'c']], None, [], []], [[['b', 'b'], ['c', 'c']], None, [], []], [[], ['a', 0], [], [['c', 0]]], [[], None, [], []], [[], ['c', 0], [['b', 0]], []], [[], None, [], []], [[], None, [], []]], 4: [[[['a', 'a'], ['c', 'c'], ['b', 'b'], ['a', 'a']], ['a', 2], [], []], [[['a', 'a'], ['a', 'a'], ['a', 'a'], ['a', 'a'], ['b', 'b'], ['c', 'c']], None, [], []], [[['b', 'b'], ['c', 'c']], None, [], []], [[], ['a', 0], [], [['c', 0]]], [[], None, [], []], [[], ['c', 0], [['b', 0]], []], [[], None, [], []], [[], None, [], []]], 5: [[[['a', 'a'], ['c', 'c'], ['b', 'b'], ['a', 'a']], ['a', 2], [], []], [[['a', 'a'], ['a', 'a'], ['a', 'a'], ['a', 'a'], ['a', 'a'], ['b', 'b'], ['c', 'c']], None, [], []], [[['b', 'b'], ['c', 'c']], None, [], []], [[], ['a', 0], [], [['c', 0]]], [[], None, [], []], [[], ['c', 0], [['b', 0]], []], [[], None, [], []], [[], None, [], []]]}[N]\nfor i, expression in enumerate(fixtures):\n    check(\"trace-\"+str(i+1), solve(eval(expression)), expected[i])\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 policy, not a browser, speech engine, platform API, or standards conformance claim. 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":"s3-assistive-announcements-interrupt-resumption-cancel-waiting","generated_at":"2026-09-29T14:40:23.566139+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Deterministic controlled model of assistive announcement delivery.","repair":"Restore the stated transition: waiting=[x for x in waiting if x[0]!=e[1]]","root_cause":"Fault site: waiting=[x for x in waiting if x[0]!=e[1]] is implemented as waiting=[x for x in waiting if e[1] not in x[1]]","sha256":"844093108c2bd37c64d01529a40b3241155c78410bdb57e28b07cab319a8c83f","title":"Canceling waiting speech compares text instead of ID · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":42.208,"exit_code":1,"observations":[{"actual":[[["a","a"],["c","c"],["b","b"],["a","a"]],["a",2],[],[]],"check":"trace-1","expected":[[["a","a"],["c","c"],["b","b"],["a","a"]],["a",2],[],[]],"passed":true},{"actual":[[["a","a"],["b","b"],["c","c"]],null,[],[]],"check":"trace-2","expected":[[["a","a"],["b","b"],["c","c"]],null,[],[]],"passed":true},{"actual":[[["b","b"]],null,[],[]],"check":"trace-3","expected":[[["b","b"],["c","c"]],null,[],[]],"passed":false},{"actual":[[],["a",0],[],[]],"check":"trace-4","expected":[[],["a",0],[],[["c",0]]],"passed":false},{"actual":[[],null,[],[]],"check":"trace-5","expected":[[],null,[],[]],"passed":true},{"actual":[[],["c",0],[["b",0]],[]],"check":"trace-6","expected":[[],["c",0],[["b",0]],[]],"passed":true},{"actual":[[],null,[],[]],"check":"trace-7","expected":[[],null,[],[]],"passed":true},{"actual":[[],null,[],[]],"check":"trace-8","expected":[[],null,[],[]],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"trace-1\", \"actual\": [[[\"a\", \"a\"], [\"c\", \"c\"], [\"b\", \"b\"], [\"a\", \"a\"]], [\"a\", 2], [], []], \"expected\": [[[\"a\", \"a\"], [\"c\", \"c\"], [\"b\", \"b\"], [\"a\", \"a\"]], [\"a\", 2], [], []], \"passed\": true}, {\"check\": \"trace-2\", \"actual\": [[[\"a\", \"a\"], [\"b\", \"b\"], [\"c\", \"c\"]], null, [], []], \"expected\": [[[\"a\", \"a\"], [\"b\", \"b\"], [\"c\", \"c\"]], null, [], []], \"passed\": true}, {\"check\": \"trace-3\", \"actual\": [[[\"b\", \"b\"]], null, [], []], \"expected\": [[[\"b\", \"b\"], [\"c\", \"c\"]], null, [], []], \"passed\": false}, {\"check\": \"trace-4\", \"actual\": [[], [\"a\", 0], [], []], \"expected\": [[], [\"a\", 0], [], [[\"c\", 0]]], \"passed\": false}, {\"check\": \"trace-5\", \"actual\": [[], null, [], []], \"expected\": [[], null, [], []], \"passed\": true}, {\"check\": \"trace-6\", \"actual\": [[], [\"c\", 0], [[\"b\", 0]], []], \"expected\": [[], [\"c\", 0], [[\"b\", 0]], []], \"passed\": true}, {\"check\": \"trace-7\", \"actual\": [[], null, [], []], \"expected\": [[], null, [], []], \"passed\": true}, {\"check\": \"trace-8\", \"actual\": [[], null, [], []], \"expected\": [[], null, [], []], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":40.512,"exit_code":1,"observations":[{"actual":[[["a","a"],["c","c"],["b","b"],["a","a"]],["a",2],[],[]],"check":"trace-1","expected":[[["a","a"],["c","c"],["b","b"],["a","a"]],["a",2],[],[]],"passed":true},{"actual":[[["a","a"],["b","b"],["c","c"]],null,[],[]],"check":"trace-2","expected":[[["a","a"],["b","b"],["c","c"]],null,[],[]],"passed":true},{"actual":[[["b","b"],["c","c"]],null,[],[]],"check":"trace-3","expected":[[["b","b"],["c","c"]],null,[],[]],"passed":true},{"actual":[[],["a",0],[],[["b",0],["c",0]]],"check":"trace-4","expected":[[],["a",0],[],[["c",0]]],"passed":false},{"actual":[[],null,[],[]],"check":"trace-5","expected":[[],null,[],[]],"passed":true},{"actual":[[],["c",0],[["b",0]],[]],"check":"trace-6","expected":[[],["c",0],[["b",0]],[]],"passed":true},{"actual":[[],null,[],[]],"check":"trace-7","expected":[[],null,[],[]],"passed":true},{"actual":[[],null,[],[]],"check":"trace-8","expected":[[],null,[],[]],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"trace-1\", \"actual\": [[[\"a\", \"a\"], [\"c\", \"c\"], [\"b\", \"b\"], [\"a\", \"a\"]], [\"a\", 2], [], []], \"expected\": [[[\"a\", \"a\"], [\"c\", \"c\"], [\"b\", \"b\"], [\"a\", \"a\"]], [\"a\", 2], [], []], \"passed\": true}, {\"check\": \"trace-2\", \"actual\": [[[\"a\", \"a\"], [\"b\", \"b\"], [\"c\", \"c\"]], null, [], []], \"expected\": [[[\"a\", \"a\"], [\"b\", \"b\"], [\"c\", \"c\"]], null, [], []], \"passed\": true}, {\"check\": \"trace-3\", \"actual\": [[[\"b\", \"b\"], [\"c\", \"c\"]], null, [], []], \"expected\": [[[\"b\", \"b\"], [\"c\", \"c\"]], null, [], []], \"passed\": true}, {\"check\": \"trace-4\", \"actual\": [[], [\"a\", 0], [], [[\"b\", 0], [\"c\", 0]]], \"expected\": [[], [\"a\", 0], [], [[\"c\", 0]]], \"passed\": false}, {\"check\": \"trace-5\", \"actual\": [[], null, [], []], \"expected\": [[], null, [], []], \"passed\": true}, {\"check\": \"trace-6\", \"actual\": [[], [\"c\", 0], [[\"b\", 0]], []], \"expected\": [[], [\"c\", 0], [[\"b\", 0]], []], \"passed\": true}, {\"check\": \"trace-7\", \"actual\": [[], null, [], []], \"expected\": [[], null, [], []], \"passed\": true}, {\"check\": \"trace-8\", \"actual\": [[], null, [], []], \"expected\": [[], null, [], []], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":45.698,"exit_code":0,"observations":[{"actual":[[["a","a"],["c","c"],["b","b"],["a","a"]],["a",2],[],[]],"check":"trace-1","expected":[[["a","a"],["c","c"],["b","b"],["a","a"]],["a",2],[],[]],"passed":true},{"actual":[[["a","a"],["b","b"],["c","c"]],null,[],[]],"check":"trace-2","expected":[[["a","a"],["b","b"],["c","c"]],null,[],[]],"passed":true},{"actual":[[["b","b"],["c","c"]],null,[],[]],"check":"trace-3","expected":[[["b","b"],["c","c"]],null,[],[]],"passed":true},{"actual":[[],["a",0],[],[["c",0]]],"check":"trace-4","expected":[[],["a",0],[],[["c",0]]],"passed":true},{"actual":[[],null,[],[]],"check":"trace-5","expected":[[],null,[],[]],"passed":true},{"actual":[[],["c",0],[["b",0]],[]],"check":"trace-6","expected":[[],["c",0],[["b",0]],[]],"passed":true},{"actual":[[],null,[],[]],"check":"trace-7","expected":[[],null,[],[]],"passed":true},{"actual":[[],null,[],[]],"check":"trace-8","expected":[[],null,[],[]],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"trace-1\", \"actual\": [[[\"a\", \"a\"], [\"c\", \"c\"], [\"b\", \"b\"], [\"a\", \"a\"]], [\"a\", 2], [], []], \"expected\": [[[\"a\", \"a\"], [\"c\", \"c\"], [\"b\", \"b\"], [\"a\", \"a\"]], [\"a\", 2], [], []], \"passed\": true}, {\"check\": \"trace-2\", \"actual\": [[[\"a\", \"a\"], [\"b\", \"b\"], [\"c\", \"c\"]], null, [], []], \"expected\": [[[\"a\", \"a\"], [\"b\", \"b\"], [\"c\", \"c\"]], null, [], []], \"passed\": true}, {\"check\": \"trace-3\", \"actual\": [[[\"b\", \"b\"], [\"c\", \"c\"]], null, [], []], \"expected\": [[[\"b\", \"b\"], [\"c\", \"c\"]], null, [], []], \"passed\": true}, {\"check\": \"trace-4\", \"actual\": [[], [\"a\", 0], [], [[\"c\", 0]]], \"expected\": [[], [\"a\", 0], [], [[\"c\", 0]]], \"passed\": true}, {\"check\": \"trace-5\", \"actual\": [[], null, [], []], \"expected\": [[], null, [], []], \"passed\": true}, {\"check\": \"trace-6\", \"actual\": [[], [\"c\", 0], [[\"b\", 0]], []], \"expected\": [[], [\"c\", 0], [[\"b\", 0]], []], \"passed\": true}, {\"check\": \"trace-7\", \"actual\": [[], null, [], []], \"expected\": [[], null, [], []], \"passed\": true}, {\"check\": \"trace-8\", \"actual\": [[], null, [], []], \"expected\": [[], null, [], []], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}