| beginCompilationUnit(main) | 
 |   beginMetadataStar(main) | 
 |   endMetadataStar(0) | 
 |   beginTopLevelMember(main) | 
 |     beginTopLevelMethod(, null) | 
 |       handleNoType() | 
 |       handleIdentifier(main, topLevelFunctionDeclaration) | 
 |       handleNoTypeVariables(() | 
 |       beginFormalParameters((, MemberKind.TopLevelMethod) | 
 |       endFormalParameters(0, (, ), MemberKind.TopLevelMethod) | 
 |       handleAsyncModifier(null, null) | 
 |       beginBlockFunctionBody({) | 
 |         handleIdentifier(a, expression) | 
 |         handleNoTypeArguments(() | 
 |         beginArguments(() | 
 |           handleIdentifier(b, expression) | 
 |           handleNoTypeArguments(<) | 
 |           handleNoArguments(<) | 
 |           handleSend(b, <) | 
 |           beginBinaryExpression(<) | 
 |             handleIdentifier(c, expression) | 
 |             handleNoTypeArguments(,) | 
 |             handleNoArguments(,) | 
 |             handleSend(c, ,) | 
 |           endBinaryExpression(<) | 
 |           handleIdentifier(as, expression) | 
 |           handleNoTypeArguments(>) | 
 |           handleNoArguments(>) | 
 |           handleSend(as, >) | 
 |           beginBinaryExpression(>) | 
 |             handleLiteralInt(1) | 
 |             handleParenthesizedExpression(() | 
 |           endBinaryExpression(>) | 
 |         endArguments(2, (, )) | 
 |         handleSend(a, ;) | 
 |         handleExpressionStatement(;) | 
 |       endBlockFunctionBody(1, {, }) | 
 |     endTopLevelMethod(main, null, }) | 
 |   endTopLevelDeclaration() | 
 | endCompilationUnit(1, ) |