|  | beginCompilationUnit(void) | 
|  | beginMetadataStar(void) | 
|  | endMetadataStar(0) | 
|  | beginTopLevelMember(void) | 
|  | beginTopLevelMethod(, null, null) | 
|  | handleVoidKeyword(void) | 
|  | handleIdentifier(f, topLevelFunctionDeclaration) | 
|  | handleNoTypeVariables(() | 
|  | beginFormalParameters((, MemberKind.TopLevelMethod) | 
|  | beginMetadataStar(x) | 
|  | endMetadataStar(0) | 
|  | beginFormalParameter(x, MemberKind.TopLevelMethod, null, null, null) | 
|  | handleNoType(() | 
|  | 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, x) | 
|  | handleParenthesizedCondition((, null, null) | 
|  | beginSwitchBlock({) | 
|  | beginCaseExpression(case) | 
|  | beginPattern(case) | 
|  | beginConstantPattern(null) | 
|  | handleLiteralInt(0) | 
|  | endConstantPattern(null) | 
|  | endPattern(0) | 
|  | beginSwitchCaseWhenClause(when) | 
|  | handleLiteralBool(true) | 
|  | endSwitchCaseWhenClause(true) | 
|  | endCaseExpression(case, when, :) | 
|  | beginSwitchCase(0, 1, case) | 
|  | handleBreakStatement(false, break, ;) | 
|  | endSwitchCase(0, 1, null, null, 1, case, ;) | 
|  | endSwitchBlock(1, {, }) | 
|  | endSwitchStatement(switch, }) | 
|  | endBlockFunctionBody(1, {, }) | 
|  | endTopLevelMethod(void, null, }) | 
|  | endTopLevelDeclaration(}) | 
|  | endCompilationUnit(1, ) |