| beginCompilationUnit(void) | 
 |   beginMetadataStar(void) | 
 |   endMetadataStar(0) | 
 |   beginTopLevelMember(void) | 
 |     beginTopLevelMethod(, null, null) | 
 |       handleVoidKeyword(void) | 
 |       handleIdentifier(f, topLevelFunctionDeclaration) | 
 |       handleNoTypeVariables(() | 
 |       beginFormalParameters((, MemberKind.TopLevelMethod) | 
 |         beginMetadataStar(dynamic) | 
 |         endMetadataStar(0) | 
 |         beginFormalParameter(dynamic, MemberKind.TopLevelMethod, null, null, null) | 
 |           handleIdentifier(dynamic, typeReference) | 
 |           handleNoTypeArguments(e) | 
 |           handleType(dynamic, null) | 
 |           handleIdentifier(e, formalParameterDeclaration) | 
 |           handleFormalParameterWithoutValue()) | 
 |         endFormalParameter(null, null, null, e, null, null, FormalParameterKind.requiredPositional, MemberKind.TopLevelMethod) | 
 |       endFormalParameters(1, (, ), MemberKind.TopLevelMethod) | 
 |       handleAsyncModifier(null, null) | 
 |       beginBlockFunctionBody({) | 
 |         beginParenthesizedExpressionOrRecordLiteral(() | 
 |           handleIdentifier(e, expression) | 
 |           handleNoTypeArguments(!) | 
 |           handleNoArguments(!) | 
 |           handleSend(e, e) | 
 |           handleNonNullAssertExpression(!) | 
 |           handleNoTypeArguments(() | 
 |           beginArguments(() | 
 |           endArguments(0, (, )) | 
 |           handleSend((, )) | 
 |         endParenthesizedExpression(() | 
 |         handleNonNullAssertExpression(!) | 
 |         beginTypeArguments(<) | 
 |           handleIdentifier(int, typeReference) | 
 |           handleNoTypeArguments(>) | 
 |           handleType(int, null) | 
 |         endTypeArguments(1, <, >) | 
 |         beginArguments(() | 
 |         endArguments(0, (, )) | 
 |         handleSend((, )) | 
 |         handleNonNullAssertExpression(!) | 
 |         handleExpressionStatement((, ;) | 
 |         beginParenthesizedExpressionOrRecordLiteral(() | 
 |           handleIdentifier(e, expression) | 
 |           handleNoTypeArguments(!) | 
 |           handleNoArguments(!) | 
 |           handleSend(e, e) | 
 |           handleNonNullAssertExpression(!) | 
 |           handleNoTypeArguments(() | 
 |           beginArguments(() | 
 |           endArguments(0, (, )) | 
 |           handleSend((, )) | 
 |           handleNonNullAssertExpression(!) | 
 |         endParenthesizedExpression(() | 
 |         beginTypeArguments(<) | 
 |           handleIdentifier(int, typeReference) | 
 |           handleNoTypeArguments(>) | 
 |           handleType(int, null) | 
 |         endTypeArguments(1, <, >) | 
 |         beginArguments(() | 
 |         endArguments(0, (, )) | 
 |         handleSend((, )) | 
 |         handleNonNullAssertExpression(!) | 
 |         handleExpressionStatement((, ;) | 
 |       endBlockFunctionBody(2, {, }) | 
 |     endTopLevelMethod(void, null, }) | 
 |   endTopLevelDeclaration(}) | 
 | endCompilationUnit(1, ) |