| beginCompilationUnit(f) | 
 |   beginMetadataStar(f) | 
 |   endMetadataStar(0) | 
 |   beginTopLevelMember(f) | 
 |     beginTopLevelMethod(, null, null) | 
 |       handleNoType() | 
 |       handleIdentifier(f, topLevelFunctionDeclaration) | 
 |       handleNoTypeVariables(() | 
 |       beginFormalParameters((, MemberKind.TopLevelMethod) | 
 |       endFormalParameters(0, (, ), MemberKind.TopLevelMethod) | 
 |       handleAsyncModifier(null, null) | 
 |       beginBlockFunctionBody({) | 
 |         beginMetadataStar(var) | 
 |         endMetadataStar(0) | 
 |         handleNoType(var) | 
 |         beginVariablesDeclaration(a, null, var) | 
 |           handleIdentifier(a, localVariableDeclaration) | 
 |           beginInitializedIdentifier(a) | 
 |             handleNoVariableInitializer(a) | 
 |           endInitializedIdentifier(a) | 
 |           handleIdentifier(b, localVariableDeclaration) | 
 |           beginInitializedIdentifier(b) | 
 |             handleNoVariableInitializer(b) | 
 |           endInitializedIdentifier(b) | 
 |           handleIdentifier(c, localVariableDeclaration) | 
 |           beginInitializedIdentifier(c) | 
 |             handleNoVariableInitializer(c) | 
 |           endInitializedIdentifier(c) | 
 |         endVariablesDeclaration(3, ;) | 
 |         handleIdentifier(a, expression) | 
 |         handleNoTypeArguments(?) | 
 |         handleNoArguments(?) | 
 |         handleSend(a, a) | 
 |         beginConditionalExpression(?) | 
 |           handleNoTypeArguments([) | 
 |           handleIdentifier(b, expression) | 
 |           handleNoTypeArguments(]) | 
 |           handleNoArguments(]) | 
 |           handleSend(b, b) | 
 |           handleLiteralList(1, [, null, ]) | 
 |           handleConditionalExpressionColon() | 
 |           handleIdentifier(c, expression) | 
 |           handleNoTypeArguments(;) | 
 |           handleNoArguments(;) | 
 |           handleSend(c, c) | 
 |         endConditionalExpression(?, :, c) | 
 |         handleExpressionStatement(a, ;) | 
 |         handleIdentifier(a, expression) | 
 |         handleNoTypeArguments(?) | 
 |         handleNoArguments(?) | 
 |         handleSend(a, a) | 
 |         beginConditionalExpression(?) | 
 |           handleNoTypeArguments([) | 
 |           handleIdentifier(b, expression) | 
 |           handleNoTypeArguments(]) | 
 |           handleNoArguments(]) | 
 |           handleSend(b, b) | 
 |           handleLiteralList(1, [, null, ]) | 
 |           handleConditionalExpressionColon() | 
 |           handleIdentifier(c, expression) | 
 |           handleNoTypeArguments(;) | 
 |           handleNoArguments(;) | 
 |           handleSend(c, c) | 
 |         endConditionalExpression(?, :, c) | 
 |         handleExpressionStatement(a, ;) | 
 |         handleIdentifier(a, expression) | 
 |         handleNoTypeArguments(?) | 
 |         handleNoArguments(?) | 
 |         handleSend(a, a) | 
 |         beginConditionalExpression(?) | 
 |           handleNoTypeArguments([) | 
 |           handleIdentifier(b, expression) | 
 |           handleNoTypeArguments(]) | 
 |           handleNoArguments(]) | 
 |           handleSend(b, b) | 
 |           handleLiteralList(1, [, null, ]) | 
 |           handleIdentifier(toString, expressionContinuation) | 
 |           handleNoTypeArguments(() | 
 |           beginArguments(() | 
 |           endArguments(0, (, )) | 
 |           handleSend(toString, )) | 
 |           handleEndingBinaryExpression(., )) | 
 |           handleConditionalExpressionColon() | 
 |           handleIdentifier(c, expression) | 
 |           handleNoTypeArguments(;) | 
 |           handleNoArguments(;) | 
 |           handleSend(c, c) | 
 |         endConditionalExpression(?, :, c) | 
 |         handleExpressionStatement(a, ;) | 
 |         handleIdentifier(a, expression) | 
 |         handleNoTypeArguments(?) | 
 |         handleNoArguments(?) | 
 |         handleSend(a, a) | 
 |         beginConditionalExpression(?) | 
 |           handleNoTypeArguments([) | 
 |           handleIdentifier(b, expression) | 
 |           handleNoTypeArguments(]) | 
 |           handleNoArguments(]) | 
 |           handleSend(b, b) | 
 |           handleLiteralList(1, [, null, ]) | 
 |           handleIdentifier(toString, expressionContinuation) | 
 |           handleNoTypeArguments(() | 
 |           beginArguments(() | 
 |           endArguments(0, (, )) | 
 |           handleSend(toString, )) | 
 |           handleEndingBinaryExpression(., )) | 
 |           handleConditionalExpressionColon() | 
 |           handleIdentifier(c, expression) | 
 |           handleNoTypeArguments(;) | 
 |           handleNoArguments(;) | 
 |           handleSend(c, c) | 
 |         endConditionalExpression(?, :, c) | 
 |         handleExpressionStatement(a, ;) | 
 |         handleIdentifier(a, expression) | 
 |         handleNoTypeArguments(?) | 
 |         handleNoArguments(?) | 
 |         handleSend(a, a) | 
 |         beginConditionalExpression(?) | 
 |           beginTypeArguments(<) | 
 |             handleIdentifier(dynamic, typeReference) | 
 |             handleNoTypeArguments(>) | 
 |             handleType(dynamic, null) | 
 |           endTypeArguments(1, <, >) | 
 |           handleIdentifier(b, expression) | 
 |           handleNoTypeArguments(]) | 
 |           handleNoArguments(]) | 
 |           handleSend(b, b) | 
 |           handleLiteralList(1, [, null, ]) | 
 |           handleConditionalExpressionColon() | 
 |           beginTypeArguments(<) | 
 |             handleIdentifier(dynamic, typeReference) | 
 |             handleNoTypeArguments(>) | 
 |             handleType(dynamic, null) | 
 |           endTypeArguments(1, <, >) | 
 |           handleIdentifier(c, expression) | 
 |           handleNoTypeArguments(]) | 
 |           handleNoArguments(]) | 
 |           handleSend(c, c) | 
 |           handleLiteralList(1, [, null, ]) | 
 |         endConditionalExpression(?, :, ]) | 
 |         handleExpressionStatement(a, ;) | 
 |         handleIdentifier(a, expression) | 
 |         handleNoTypeArguments(?) | 
 |         handleNoArguments(?) | 
 |         handleSend(a, a) | 
 |         beginConditionalExpression(?) | 
 |           beginParenthesizedExpressionOrRecordLiteral(() | 
 |             handleNoTypeArguments([) | 
 |             handleIdentifier(b, expression) | 
 |             handleNoTypeArguments(]) | 
 |             handleNoArguments(]) | 
 |             handleSend(b, b) | 
 |             handleLiteralList(1, [, null, ]) | 
 |           endParenthesizedExpression(() | 
 |           handleConditionalExpressionColon() | 
 |           beginParenthesizedExpressionOrRecordLiteral(() | 
 |             handleNoTypeArguments([) | 
 |             handleIdentifier(c, expression) | 
 |             handleNoTypeArguments(]) | 
 |             handleNoArguments(]) | 
 |             handleSend(c, c) | 
 |             handleLiteralList(1, [, null, ]) | 
 |           endParenthesizedExpression(() | 
 |         endConditionalExpression(?, :, )) | 
 |         handleExpressionStatement(a, ;) | 
 |       endBlockFunctionBody(7, {, }) | 
 |     endTopLevelMethod(f, null, }) | 
 |   endTopLevelDeclaration(}) | 
 | endCompilationUnit(1, ) |