PsiJavaFile:ForEach.java
  PsiForeachStatement
    PsiKeyword:for('for')
    PsiJavaToken:LPARENTH('(')
    PsiParameter:o
      PsiModifierList:
        <empty list>
      PsiTypeElement:Object
        PsiJavaCodeReferenceElement:Object
          PsiIdentifier:Object('Object')
          PsiReferenceParameterList
            <empty list>
      PsiWhiteSpace(' ')
      PsiIdentifier:o('o')
    PsiWhiteSpace(' ')
    PsiJavaToken:COLON(':')
    PsiWhiteSpace(' ')
    PsiMethodCallExpression:map.entrySet()
      PsiReferenceExpression:map.entrySet
        PsiReferenceExpression:map
          PsiReferenceParameterList
            <empty list>
          PsiIdentifier:map('map')
        PsiJavaToken:DOT('.')
        PsiReferenceParameterList
          <empty list>
        PsiIdentifier:entrySet('entrySet')
      PsiExpressionList
        PsiJavaToken:LPARENTH('(')
        PsiJavaToken:RPARENTH(')')
    PsiJavaToken:RPARENTH(')')
    PsiWhiteSpace(' ')
    PsiEmptyStatement
      PsiJavaToken:SEMICOLON(';')