| beginCompilationUnit(test) | 
 |   beginMetadataStar(test) | 
 |   endMetadataStar(0) | 
 |   beginTopLevelMember(test) | 
 |     beginTopLevelMethod(, null, null) | 
 |       handleNoType() | 
 |       handleIdentifier(test, topLevelFunctionDeclaration) | 
 |       handleNoTypeVariables(() | 
 |       beginFormalParameters((, MemberKind.TopLevelMethod) | 
 |         beginMetadataStar(dynamic) | 
 |         endMetadataStar(0) | 
 |         beginFormalParameter(dynamic, MemberKind.TopLevelMethod, null, null, null) | 
 |           handleIdentifier(dynamic, typeReference) | 
 |           handleNoTypeArguments(x) | 
 |           handleType(dynamic, null) | 
 |           handleIdentifier(x, formalParameterDeclaration) | 
 |           handleFormalParameterWithoutValue()) | 
 |         endFormalParameter(null, null, null, x, null, null, FormalParameterKind.requiredPositional, MemberKind.TopLevelMethod) | 
 |       endFormalParameters(1, (, ), MemberKind.TopLevelMethod) | 
 |       handleAsyncModifier(null, null) | 
 |       beginBlockFunctionBody({) | 
 |         beginSwitchStatement(switch) | 
 |           handleIdentifier(x, expression) | 
 |           handleNoTypeArguments()) | 
 |           handleNoArguments()) | 
 |           handleSend(x, )) | 
 |           handleParenthesizedCondition((, null, null) | 
 |           beginSwitchBlock({) | 
 |             beginCaseExpression(case) | 
 |               beginPattern(case) | 
 |                 beginConstantPattern(null) | 
 |                   handleIdentifier(a, expression) | 
 |                   handleNoTypeArguments(.) | 
 |                   handleNoArguments(.) | 
 |                   handleSend(a, .) | 
 |                   handleIdentifier(b, expressionContinuation) | 
 |                   handleNoTypeArguments(?) | 
 |                   handleNoArguments(?) | 
 |                   handleSend(b, ?) | 
 |                   handleEndingBinaryExpression(.) | 
 |                 endConstantPattern(null) | 
 |                 handleNullCheckPattern(?) | 
 |               endPattern(?) | 
 |               handleSwitchCaseNoWhenClause(?) | 
 |             endCaseExpression(case, null, :) | 
 |             beginSwitchCase(0, 1, case) | 
 |               handleBreakStatement(false, break, ;) | 
 |             endSwitchCase(0, 1, null, null, 1, case, }) | 
 |           endSwitchBlock(1, {, }) | 
 |         endSwitchStatement(switch, }) | 
 |       endBlockFunctionBody(1, {, }) | 
 |     endTopLevelMethod(test, null, }) | 
 |   endTopLevelDeclaration() | 
 | endCompilationUnit(1, ) |