Groovy script
  PsiElement(new line)('\n')
  Method
    Modifiers
      PsiElement(def)('def')
    PsiWhiteSpace(' ')
    PsiElement(identifier)('foo')
    PsiElement(()('(')
    Parameter list
      <empty list>
    PsiElement())(')')
    Throw clause
      <empty list>
    PsiWhiteSpace(' ')
    Open block
      PsiElement({)('{')
      PsiWhiteSpace('\n  ')
      Variable definitions
        Modifiers
          PsiElement(def)('def')
        PsiWhiteSpace(' ')
        Variable
          PsiElement(identifier)('cl')
          PsiWhiteSpace(' ')
          PsiElement(=)('=')
          PsiWhiteSpace(' ')
          Closable block
            PsiElement({)('{')
            PsiWhiteSpace('\n    ')
            Parameter list
              <empty list>
            WHILE statement
              PsiElement(while)('while')
              PsiWhiteSpace(' ')
              PsiElement(()('(')
              Method call
                Literal
                  PsiElement(true)('true')
                PsiWhiteSpace(' ')
                Arguments
                  <empty list>
                Closable block
                  PsiElement({)('{')
                  PsiWhiteSpace('\n      ')
                  PsiComment(line comment)('//')
                  PsiElement(new line)('\n    ')
                  Parameter list
                    <empty list>
                  PsiElement(})('}')
              PsiErrorElement:')' expected
                <empty list>
            PsiWhiteSpace('\n  ')
            PsiElement(})('}')
      PsiElement(new line)('\n')
      PsiElement(})('}')
---
Groovy script
  PsiElement(new line)('\n')
  Method
    Modifiers
      PsiElement(def)('def')
    PsiWhiteSpace(' ')
    PsiElement(identifier)('foo')
    PsiElement(()('(')
    Parameter list
      <empty list>
    PsiElement())(')')
    Throw clause
      <empty list>
    PsiWhiteSpace(' ')
    Open block
      PsiElement({)('{')
      PsiWhiteSpace('\n  ')
      Variable definitions
        Modifiers
          PsiElement(def)('def')
        PsiWhiteSpace(' ')
        Variable
          PsiElement(identifier)('cl')
          PsiWhiteSpace(' ')
          PsiElement(=)('=')
          PsiWhiteSpace(' ')
          Closable block
            PsiElement({)('{')
            PsiWhiteSpace('\n    ')
            Parameter list
              <empty list>
            WHILE statement
              PsiElement(while)('while')
              PsiWhiteSpace(' ')
              PsiElement(()('(')
              Literal
                PsiElement(true)('true')
              PsiErrorElement:')' expected
                <empty list>
            PsiElement(;)(';')
            PsiWhiteSpace(' ')
            Closable block
              PsiElement({)('{')
              PsiWhiteSpace('\n      ')
              PsiComment(line comment)('//')
              PsiElement(new line)('\n    ')
              Parameter list
                <empty list>
              PsiElement(})('}')
            PsiWhiteSpace('\n  ')
            PsiElement(})('}')
      PsiElement(new line)('\n')
      PsiElement(})('}')