JetFile: TupleTypes_ERR.jet
  NAMESPACE
    CLASS
      PsiElement(class)('class')
      PsiWhiteSpace(' ')
      PsiElement(IDENTIFIER)('F')
      TYPE_PARAMETER_LIST
        <empty list>
      VALUE_PARAMETER_LIST
        PsiElement(LPAR)('(')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(IDENTIFIER)('a')
          PsiWhiteSpace(' ')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            TUPLE_TYPE
              PsiElement(LPAR)('(')
              PsiElement(RPAR)(')')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(IDENTIFIER)('x')
          PsiWhiteSpace(' ')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            TUPLE_TYPE
              PsiElement(LPAR)('(')
              TYPE_REFERENCE
                USER_TYPE
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('X')
              PsiElement(RPAR)(')')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(IDENTIFIER)('b')
          PsiWhiteSpace(' ')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            TUPLE_TYPE
              PsiElement(LPAR)('(')
              TYPE_REFERENCE
                USER_TYPE
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('A')
              PsiElement(COMMA)(',')
              PsiErrorElement:Type expected
                <empty list>
              PsiWhiteSpace(' ')
              PsiElement(RPAR)(')')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(IDENTIFIER)('c')
          PsiWhiteSpace(' ')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            TUPLE_TYPE
              PsiElement(LPAR)('(')
              LABELED_TUPLE_TYPE_ENTRY
                PsiElement(IDENTIFIER)('x')
                PsiWhiteSpace(' ')
                PsiElement(COLON)(':')
                PsiWhiteSpace(' ')
                TYPE_REFERENCE
                  PsiErrorElement:Type expected
                    <empty list>
              PsiElement(COMMA)(',')
              PsiWhiteSpace('  ')
              PsiErrorElement:Expecting a name for tuple entry
                PsiElement(COLON)(':')
              PsiWhiteSpace(' ')
              TYPE_REFERENCE
                USER_TYPE
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('Int')
              PsiElement(RPAR)(')')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(IDENTIFIER)('a')
          PsiWhiteSpace(' ')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            ANNOTATION
              PsiElement(LBRACKET)('[')
              ANNOTATION_ENTRY
                CONSTRUCTOR_CALLEE
                  TYPE_REFERENCE
                    USER_TYPE
                      REFERENCE_EXPRESSION
                        PsiElement(IDENTIFIER)('x')
              PsiElement(RBRACKET)(']')
            PsiWhiteSpace(' ')
            TUPLE_TYPE
              PsiElement(LPAR)('(')
              PsiElement(RPAR)(')')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(IDENTIFIER)('x')
          PsiWhiteSpace(' ')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            ANNOTATION
              PsiElement(LBRACKET)('[')
              ANNOTATION_ENTRY
                CONSTRUCTOR_CALLEE
                  TYPE_REFERENCE
                    USER_TYPE
                      REFERENCE_EXPRESSION
                        PsiElement(IDENTIFIER)('x')
              PsiElement(RBRACKET)(']')
            TUPLE_TYPE
              PsiElement(LPAR)('(')
              TYPE_REFERENCE
                ANNOTATION
                  PsiElement(LBRACKET)('[')
                  ANNOTATION_ENTRY
                    CONSTRUCTOR_CALLEE
                      TYPE_REFERENCE
                        USER_TYPE
                          REFERENCE_EXPRESSION
                            PsiElement(IDENTIFIER)('x')
                  PsiWhiteSpace(' ')
                  ANNOTATION_ENTRY
                    CONSTRUCTOR_CALLEE
                      TYPE_REFERENCE
                        USER_TYPE
                          REFERENCE_EXPRESSION
                            PsiElement(IDENTIFIER)('X')
                  PsiErrorElement:Expecting ']' to close an attribute annotation
                    <empty list>
              PsiElement(RPAR)(')')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(IDENTIFIER)('b')
          PsiWhiteSpace(' ')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            ANNOTATION
              PsiElement(LBRACKET)('[')
              ANNOTATION_ENTRY
                CONSTRUCTOR_CALLEE
                  TYPE_REFERENCE
                    USER_TYPE
                      REFERENCE_EXPRESSION
                        PsiElement(IDENTIFIER)('x')
              PsiElement(RBRACKET)(']')
            PsiWhiteSpace(' ')
            TUPLE_TYPE
              PsiElement(LPAR)('(')
              TYPE_REFERENCE
                ANNOTATION
                  PsiElement(LBRACKET)('[')
                  ANNOTATION_ENTRY
                    CONSTRUCTOR_CALLEE
                      TYPE_REFERENCE
                        USER_TYPE
                          REFERENCE_EXPRESSION
                            PsiElement(IDENTIFIER)('x')
                  PsiElement(RBRACKET)(']')
                PsiWhiteSpace(' ')
                USER_TYPE
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('A')
              PsiElement(COMMA)(',')
              PsiWhiteSpace(' ')
              TYPE_REFERENCE
                ANNOTATION
                  PsiElement(LBRACKET)('[')
                  ANNOTATION_ENTRY
                    CONSTRUCTOR_CALLEE
                      TYPE_REFERENCE
                        USER_TYPE
                          REFERENCE_EXPRESSION
                            PsiElement(IDENTIFIER)('x')
                  PsiElement(RBRACKET)(']')
                USER_TYPE
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('B')
              PsiElement(RPAR)(')')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(IDENTIFIER)('c')
          PsiWhiteSpace(' ')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            ANNOTATION
              PsiElement(LBRACKET)('[')
              ANNOTATION_ENTRY
                CONSTRUCTOR_CALLEE
                  TYPE_REFERENCE
                    USER_TYPE
                      REFERENCE_EXPRESSION
                        PsiElement(IDENTIFIER)('x')
              PsiElement(RBRACKET)(']')
            PsiWhiteSpace(' ')
            TUPLE_TYPE
              PsiElement(LPAR)('(')
              LABELED_TUPLE_TYPE_ENTRY
                PsiElement(IDENTIFIER)('x')
                PsiWhiteSpace(' ')
                PsiElement(COLON)(':')
                PsiWhiteSpace(' ')
                TYPE_REFERENCE
                  ANNOTATION
                    PsiElement(LBRACKET)('[')
                    ANNOTATION_ENTRY
                      CONSTRUCTOR_CALLEE
                        TYPE_REFERENCE
                          USER_TYPE
                            REFERENCE_EXPRESSION
                              PsiElement(IDENTIFIER)('x')
                    PsiElement(RBRACKET)(']')
                  PsiWhiteSpace(' ')
                  USER_TYPE
                    REFERENCE_EXPRESSION
                      PsiElement(IDENTIFIER)('Int')
              PsiElement(COMMA)(',')
              PsiWhiteSpace(' ')
              LABELED_TUPLE_TYPE_ENTRY
                PsiElement(IDENTIFIER)('y')
                PsiWhiteSpace(' ')
                PsiElement(COLON)(':')
                PsiWhiteSpace(' ')
                TYPE_REFERENCE
                  ANNOTATION
                    PsiElement(LBRACKET)('[')
                    ANNOTATION_ENTRY
                      CONSTRUCTOR_CALLEE
                        TYPE_REFERENCE
                          USER_TYPE
                            REFERENCE_EXPRESSION
                              PsiElement(IDENTIFIER)('x')
                    PsiElement(RBRACKET)(']')
                  PsiWhiteSpace(' ')
                  USER_TYPE
                    REFERENCE_EXPRESSION
                      PsiElement(IDENTIFIER)('Int')
              PsiElement(RPAR)(')')
        PsiWhiteSpace('\n    ')
        PsiElement(RPAR)(')')