FILE fqName:<root> fileName:/kt44814.kt
  CLASS CLASS name:ASTNode modality:FINAL visibility:public superTypes:[kotlin.Any]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.ASTNode
    CONSTRUCTOR visibility:public returnType:<root>.ASTNode [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:ASTNode modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Any
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Any
  CLASS CLASS name:FirLightSourceElement modality:FINAL visibility:public superTypes:[<root>.FirSourceElement]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.FirLightSourceElement
    PROPERTY name:lighterASTNode visibility:public modality:OPEN [val]
      overridden:
        public abstract lighterASTNode: <root>.LighterASTNode declared in <root>.FirSourceElement
      FIELD PROPERTY_BACKING_FIELD name:lighterASTNode type:<root>.LighterASTNode visibility:private [final]
        EXPRESSION_BODY
          GET_VAR 'lighterASTNode: <root>.LighterASTNode declared in <root>.FirLightSourceElement.<init>' type=<root>.LighterASTNode origin=INITIALIZE_PROPERTY_FROM_PARAMETER
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-lighterASTNode> visibility:public modality:OPEN returnType:<root>.LighterASTNode
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirLightSourceElement
        correspondingProperty: PROPERTY name:lighterASTNode visibility:public modality:OPEN [val]
        overridden:
          public abstract fun <get-lighterASTNode> (): <root>.LighterASTNode declared in <root>.FirSourceElement
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-lighterASTNode> (): <root>.LighterASTNode declared in <root>.FirLightSourceElement'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:lighterASTNode type:<root>.LighterASTNode visibility:private [final]' type=<root>.LighterASTNode origin=null
              receiver: GET_VAR '<this>: <root>.FirLightSourceElement declared in <root>.FirLightSourceElement.<get-lighterASTNode>' type=<root>.FirLightSourceElement origin=null
    PROPERTY name:treeStructure visibility:public modality:OPEN [val]
      overridden:
        public abstract treeStructure: <root>.FlyweightCapableTreeStructure declared in <root>.FirSourceElement
      FIELD PROPERTY_BACKING_FIELD name:treeStructure type:<root>.FlyweightCapableTreeStructure visibility:private [final]
        EXPRESSION_BODY
          GET_VAR 'treeStructure: <root>.FlyweightCapableTreeStructure declared in <root>.FirLightSourceElement.<init>' type=<root>.FlyweightCapableTreeStructure origin=INITIALIZE_PROPERTY_FROM_PARAMETER
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-treeStructure> visibility:public modality:OPEN returnType:<root>.FlyweightCapableTreeStructure
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirLightSourceElement
        correspondingProperty: PROPERTY name:treeStructure visibility:public modality:OPEN [val]
        overridden:
          public abstract fun <get-treeStructure> (): <root>.FlyweightCapableTreeStructure declared in <root>.FirSourceElement
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-treeStructure> (): <root>.FlyweightCapableTreeStructure declared in <root>.FirLightSourceElement'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:treeStructure type:<root>.FlyweightCapableTreeStructure visibility:private [final]' type=<root>.FlyweightCapableTreeStructure origin=null
              receiver: GET_VAR '<this>: <root>.FirLightSourceElement declared in <root>.FirLightSourceElement.<get-treeStructure>' type=<root>.FirLightSourceElement origin=null
    CONSTRUCTOR visibility:public returnType:<root>.FirLightSourceElement [primary]
      VALUE_PARAMETER kind:Regular name:lighterASTNode index:0 type:<root>.LighterASTNode
      VALUE_PARAMETER kind:Regular name:treeStructure index:1 type:<root>.FlyweightCapableTreeStructure
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'protected constructor <init> () declared in <root>.FirSourceElement'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:FirLightSourceElement modality:FINAL visibility:public superTypes:[<root>.FirSourceElement]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.FirSourceElement
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in <root>.FirSourceElement
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in <root>.FirSourceElement
  CLASS CLASS name:FirModifier modality:SEALED visibility:internal superTypes:[kotlin.Any]
    sealedSubclasses:
      CLASS CLASS name:FirLightModifier modality:FINAL visibility:public superTypes:[<root>.FirModifier<<root>.LighterASTNode>]
      CLASS CLASS name:FirPsiModifier modality:FINAL visibility:public superTypes:[<root>.FirModifier<<root>.ASTNode>]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.FirModifier<Node of <root>.FirModifier>
    TYPE_PARAMETER name:Node index:0 variance: superTypes:[kotlin.Any] reified:false
    PROPERTY name:node visibility:public modality:FINAL [val]
      FIELD PROPERTY_BACKING_FIELD name:node type:Node of <root>.FirModifier visibility:private [final]
        EXPRESSION_BODY
          GET_VAR 'node: Node of <root>.FirModifier declared in <root>.FirModifier.<init>' type=Node of <root>.FirModifier origin=INITIALIZE_PROPERTY_FROM_PARAMETER
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-node> visibility:public modality:FINAL returnType:Node of <root>.FirModifier
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirModifier<Node of <root>.FirModifier>
        correspondingProperty: PROPERTY name:node visibility:public modality:FINAL [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public final fun <get-node> (): Node of <root>.FirModifier declared in <root>.FirModifier'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:node type:Node of <root>.FirModifier visibility:private [final]' type=Node of <root>.FirModifier origin=null
              receiver: GET_VAR '<this>: <root>.FirModifier<Node of <root>.FirModifier> declared in <root>.FirModifier.<get-node>' type=<root>.FirModifier<Node of <root>.FirModifier> origin=null
    PROPERTY name:token visibility:public modality:FINAL [val]
      FIELD PROPERTY_BACKING_FIELD name:token type:<root>.KtModifierKeywordToken visibility:private [final]
        EXPRESSION_BODY
          GET_VAR 'token: <root>.KtModifierKeywordToken declared in <root>.FirModifier.<init>' type=<root>.KtModifierKeywordToken origin=INITIALIZE_PROPERTY_FROM_PARAMETER
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-token> visibility:public modality:FINAL returnType:<root>.KtModifierKeywordToken
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirModifier<Node of <root>.FirModifier>
        correspondingProperty: PROPERTY name:token visibility:public modality:FINAL [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public final fun <get-token> (): <root>.KtModifierKeywordToken declared in <root>.FirModifier'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:token type:<root>.KtModifierKeywordToken visibility:private [final]' type=<root>.KtModifierKeywordToken origin=null
              receiver: GET_VAR '<this>: <root>.FirModifier<Node of <root>.FirModifier> declared in <root>.FirModifier.<get-token>' type=<root>.FirModifier<Node of <root>.FirModifier> origin=null
    CLASS CLASS name:FirLightModifier modality:FINAL visibility:public superTypes:[<root>.FirModifier<<root>.LighterASTNode>]
      thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.FirModifier.FirLightModifier
      PROPERTY name:tree visibility:public modality:FINAL [val]
        FIELD PROPERTY_BACKING_FIELD name:tree type:<root>.FlyweightCapableTreeStructure visibility:private [final]
          EXPRESSION_BODY
            GET_VAR 'tree: <root>.FlyweightCapableTreeStructure declared in <root>.FirModifier.FirLightModifier.<init>' type=<root>.FlyweightCapableTreeStructure origin=INITIALIZE_PROPERTY_FROM_PARAMETER
        FUN DEFAULT_PROPERTY_ACCESSOR name:<get-tree> visibility:public modality:FINAL returnType:<root>.FlyweightCapableTreeStructure
          VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirModifier.FirLightModifier
          correspondingProperty: PROPERTY name:tree visibility:public modality:FINAL [val]
          BLOCK_BODY
            RETURN type=kotlin.Nothing from='public final fun <get-tree> (): <root>.FlyweightCapableTreeStructure declared in <root>.FirModifier.FirLightModifier'
              GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:tree type:<root>.FlyweightCapableTreeStructure visibility:private [final]' type=<root>.FlyweightCapableTreeStructure origin=null
                receiver: GET_VAR '<this>: <root>.FirModifier.FirLightModifier declared in <root>.FirModifier.FirLightModifier.<get-tree>' type=<root>.FirModifier.FirLightModifier origin=null
      CONSTRUCTOR visibility:public returnType:<root>.FirModifier.FirLightModifier [primary]
        VALUE_PARAMETER kind:Regular name:node index:0 type:<root>.LighterASTNode
        VALUE_PARAMETER kind:Regular name:token index:1 type:<root>.KtModifierKeywordToken
        VALUE_PARAMETER kind:Regular name:tree index:2 type:<root>.FlyweightCapableTreeStructure
        BLOCK_BODY
          DELEGATING_CONSTRUCTOR_CALL 'protected constructor <init> (node: Node of <root>.FirModifier, token: <root>.KtModifierKeywordToken) declared in <root>.FirModifier'
            TYPE_ARG Node: <root>.LighterASTNode
            ARG node: GET_VAR 'node: <root>.LighterASTNode declared in <root>.FirModifier.FirLightModifier.<init>' type=<root>.LighterASTNode origin=null
            ARG token: GET_VAR 'token: <root>.KtModifierKeywordToken declared in <root>.FirModifier.FirLightModifier.<init>' type=<root>.KtModifierKeywordToken origin=null
          INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:FirLightModifier modality:FINAL visibility:public superTypes:[<root>.FirModifier<<root>.LighterASTNode>]' type=kotlin.Unit
      FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
        overridden:
          public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.FirModifier
      FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        overridden:
          public open fun hashCode (): kotlin.Int declared in <root>.FirModifier
      FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        overridden:
          public open fun toString (): kotlin.String declared in <root>.FirModifier
      PROPERTY FAKE_OVERRIDE name:node visibility:public modality:FINAL [fake_override,val]
        overridden:
          public final node: Node of <root>.FirModifier declared in <root>.FirModifier
        FUN FAKE_OVERRIDE name:<get-node> visibility:public modality:FINAL returnType:<root>.LighterASTNode [fake_override]
          VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirModifier<<root>.LighterASTNode>
          correspondingProperty: PROPERTY FAKE_OVERRIDE name:node visibility:public modality:FINAL [fake_override,val]
          overridden:
            public final fun <get-node> (): Node of <root>.FirModifier declared in <root>.FirModifier
      PROPERTY FAKE_OVERRIDE name:token visibility:public modality:FINAL [fake_override,val]
        overridden:
          public final token: <root>.KtModifierKeywordToken declared in <root>.FirModifier
        FUN FAKE_OVERRIDE name:<get-token> visibility:public modality:FINAL returnType:<root>.KtModifierKeywordToken [fake_override]
          VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirModifier<<root>.LighterASTNode>
          correspondingProperty: PROPERTY FAKE_OVERRIDE name:token visibility:public modality:FINAL [fake_override,val]
          overridden:
            public final fun <get-token> (): <root>.KtModifierKeywordToken declared in <root>.FirModifier
    CLASS CLASS name:FirPsiModifier modality:FINAL visibility:public superTypes:[<root>.FirModifier<<root>.ASTNode>]
      thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.FirModifier.FirPsiModifier
      CONSTRUCTOR visibility:public returnType:<root>.FirModifier.FirPsiModifier [primary]
        VALUE_PARAMETER kind:Regular name:node index:0 type:<root>.ASTNode
        VALUE_PARAMETER kind:Regular name:token index:1 type:<root>.KtModifierKeywordToken
        BLOCK_BODY
          DELEGATING_CONSTRUCTOR_CALL 'protected constructor <init> (node: Node of <root>.FirModifier, token: <root>.KtModifierKeywordToken) declared in <root>.FirModifier'
            TYPE_ARG Node: <root>.ASTNode
            ARG node: GET_VAR 'node: <root>.ASTNode declared in <root>.FirModifier.FirPsiModifier.<init>' type=<root>.ASTNode origin=null
            ARG token: GET_VAR 'token: <root>.KtModifierKeywordToken declared in <root>.FirModifier.FirPsiModifier.<init>' type=<root>.KtModifierKeywordToken origin=null
          INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:FirPsiModifier modality:FINAL visibility:public superTypes:[<root>.FirModifier<<root>.ASTNode>]' type=kotlin.Unit
      FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
        overridden:
          public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.FirModifier
      FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        overridden:
          public open fun hashCode (): kotlin.Int declared in <root>.FirModifier
      FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        overridden:
          public open fun toString (): kotlin.String declared in <root>.FirModifier
      PROPERTY FAKE_OVERRIDE name:node visibility:public modality:FINAL [fake_override,val]
        overridden:
          public final node: Node of <root>.FirModifier declared in <root>.FirModifier
        FUN FAKE_OVERRIDE name:<get-node> visibility:public modality:FINAL returnType:<root>.ASTNode [fake_override]
          VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirModifier<<root>.ASTNode>
          correspondingProperty: PROPERTY FAKE_OVERRIDE name:node visibility:public modality:FINAL [fake_override,val]
          overridden:
            public final fun <get-node> (): Node of <root>.FirModifier declared in <root>.FirModifier
      PROPERTY FAKE_OVERRIDE name:token visibility:public modality:FINAL [fake_override,val]
        overridden:
          public final token: <root>.KtModifierKeywordToken declared in <root>.FirModifier
        FUN FAKE_OVERRIDE name:<get-token> visibility:public modality:FINAL returnType:<root>.KtModifierKeywordToken [fake_override]
          VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirModifier<<root>.ASTNode>
          correspondingProperty: PROPERTY FAKE_OVERRIDE name:token visibility:public modality:FINAL [fake_override,val]
          overridden:
            public final fun <get-token> (): <root>.KtModifierKeywordToken declared in <root>.FirModifier
    CONSTRUCTOR visibility:protected returnType:<root>.FirModifier<Node of <root>.FirModifier> [primary]
      VALUE_PARAMETER kind:Regular name:node index:0 type:Node of <root>.FirModifier
      VALUE_PARAMETER kind:Regular name:token index:1 type:<root>.KtModifierKeywordToken
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:FirModifier modality:SEALED visibility:internal superTypes:[kotlin.Any]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Any
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Any
  CLASS CLASS name:FirModifierList modality:SEALED visibility:internal superTypes:[kotlin.Any]
    sealedSubclasses:
      CLASS CLASS name:FirLightModifierList modality:FINAL visibility:public superTypes:[<root>.FirModifierList]
      CLASS CLASS name:FirPsiModifierList modality:FINAL visibility:public superTypes:[<root>.FirModifierList]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.FirModifierList
    PROPERTY name:modifiers visibility:public modality:FINAL [val]
      FIELD PROPERTY_BACKING_FIELD name:modifiers type:kotlin.collections.List<<root>.FirModifier<*>> visibility:private [final]
        EXPRESSION_BODY
          CALL 'public final fun emptyList <T> (): kotlin.collections.List<T of kotlin.collections.emptyList> declared in kotlin.collections' type=kotlin.collections.List<<root>.FirModifier<*>> origin=null
            TYPE_ARG T: <root>.FirModifier<*>
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-modifiers> visibility:public modality:FINAL returnType:kotlin.collections.List<<root>.FirModifier<*>>
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirModifierList
        correspondingProperty: PROPERTY name:modifiers visibility:public modality:FINAL [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public final fun <get-modifiers> (): kotlin.collections.List<<root>.FirModifier<*>> declared in <root>.FirModifierList'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:modifiers type:kotlin.collections.List<<root>.FirModifier<*>> visibility:private [final]' type=kotlin.collections.List<<root>.FirModifier<*>> origin=null
              receiver: GET_VAR '<this>: <root>.FirModifierList declared in <root>.FirModifierList.<get-modifiers>' type=<root>.FirModifierList origin=null
    CLASS CLASS name:FirLightModifierList modality:FINAL visibility:public superTypes:[<root>.FirModifierList]
      thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.FirModifierList.FirLightModifierList
      PROPERTY name:modifierList visibility:public modality:FINAL [val]
        FIELD PROPERTY_BACKING_FIELD name:modifierList type:<root>.LighterASTNode visibility:private [final]
          EXPRESSION_BODY
            GET_VAR 'modifierList: <root>.LighterASTNode declared in <root>.FirModifierList.FirLightModifierList.<init>' type=<root>.LighterASTNode origin=INITIALIZE_PROPERTY_FROM_PARAMETER
        FUN DEFAULT_PROPERTY_ACCESSOR name:<get-modifierList> visibility:public modality:FINAL returnType:<root>.LighterASTNode
          VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirModifierList.FirLightModifierList
          correspondingProperty: PROPERTY name:modifierList visibility:public modality:FINAL [val]
          BLOCK_BODY
            RETURN type=kotlin.Nothing from='public final fun <get-modifierList> (): <root>.LighterASTNode declared in <root>.FirModifierList.FirLightModifierList'
              GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:modifierList type:<root>.LighterASTNode visibility:private [final]' type=<root>.LighterASTNode origin=null
                receiver: GET_VAR '<this>: <root>.FirModifierList.FirLightModifierList declared in <root>.FirModifierList.FirLightModifierList.<get-modifierList>' type=<root>.FirModifierList.FirLightModifierList origin=null
      PROPERTY name:tree visibility:public modality:FINAL [val]
        FIELD PROPERTY_BACKING_FIELD name:tree type:<root>.FlyweightCapableTreeStructure visibility:private [final]
          EXPRESSION_BODY
            GET_VAR 'tree: <root>.FlyweightCapableTreeStructure declared in <root>.FirModifierList.FirLightModifierList.<init>' type=<root>.FlyweightCapableTreeStructure origin=INITIALIZE_PROPERTY_FROM_PARAMETER
        FUN DEFAULT_PROPERTY_ACCESSOR name:<get-tree> visibility:public modality:FINAL returnType:<root>.FlyweightCapableTreeStructure
          VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirModifierList.FirLightModifierList
          correspondingProperty: PROPERTY name:tree visibility:public modality:FINAL [val]
          BLOCK_BODY
            RETURN type=kotlin.Nothing from='public final fun <get-tree> (): <root>.FlyweightCapableTreeStructure declared in <root>.FirModifierList.FirLightModifierList'
              GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:tree type:<root>.FlyweightCapableTreeStructure visibility:private [final]' type=<root>.FlyweightCapableTreeStructure origin=null
                receiver: GET_VAR '<this>: <root>.FirModifierList.FirLightModifierList declared in <root>.FirModifierList.FirLightModifierList.<get-tree>' type=<root>.FirModifierList.FirLightModifierList origin=null
      CONSTRUCTOR visibility:public returnType:<root>.FirModifierList.FirLightModifierList [primary]
        VALUE_PARAMETER kind:Regular name:modifierList index:0 type:<root>.LighterASTNode
        VALUE_PARAMETER kind:Regular name:tree index:1 type:<root>.FlyweightCapableTreeStructure
        BLOCK_BODY
          DELEGATING_CONSTRUCTOR_CALL 'protected constructor <init> () declared in <root>.FirModifierList'
          INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:FirLightModifierList modality:FINAL visibility:public superTypes:[<root>.FirModifierList]' type=kotlin.Unit
      FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
        overridden:
          public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.FirModifierList
      FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        overridden:
          public open fun hashCode (): kotlin.Int declared in <root>.FirModifierList
      FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        overridden:
          public open fun toString (): kotlin.String declared in <root>.FirModifierList
      PROPERTY FAKE_OVERRIDE name:modifiers visibility:public modality:FINAL [fake_override,val]
        overridden:
          public final modifiers: kotlin.collections.List<<root>.FirModifier<*>> declared in <root>.FirModifierList
        FUN FAKE_OVERRIDE name:<get-modifiers> visibility:public modality:FINAL returnType:kotlin.collections.List<<root>.FirModifier<*>> [fake_override]
          VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirModifierList
          correspondingProperty: PROPERTY FAKE_OVERRIDE name:modifiers visibility:public modality:FINAL [fake_override,val]
          overridden:
            public final fun <get-modifiers> (): kotlin.collections.List<<root>.FirModifier<*>> declared in <root>.FirModifierList
    CLASS CLASS name:FirPsiModifierList modality:FINAL visibility:public superTypes:[<root>.FirModifierList]
      thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.FirModifierList.FirPsiModifierList
      PROPERTY name:modifierList visibility:public modality:FINAL [val]
        FIELD PROPERTY_BACKING_FIELD name:modifierList type:<root>.KtModifierList visibility:private [final]
          EXPRESSION_BODY
            GET_VAR 'modifierList: <root>.KtModifierList declared in <root>.FirModifierList.FirPsiModifierList.<init>' type=<root>.KtModifierList origin=INITIALIZE_PROPERTY_FROM_PARAMETER
        FUN DEFAULT_PROPERTY_ACCESSOR name:<get-modifierList> visibility:public modality:FINAL returnType:<root>.KtModifierList
          VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirModifierList.FirPsiModifierList
          correspondingProperty: PROPERTY name:modifierList visibility:public modality:FINAL [val]
          BLOCK_BODY
            RETURN type=kotlin.Nothing from='public final fun <get-modifierList> (): <root>.KtModifierList declared in <root>.FirModifierList.FirPsiModifierList'
              GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:modifierList type:<root>.KtModifierList visibility:private [final]' type=<root>.KtModifierList origin=null
                receiver: GET_VAR '<this>: <root>.FirModifierList.FirPsiModifierList declared in <root>.FirModifierList.FirPsiModifierList.<get-modifierList>' type=<root>.FirModifierList.FirPsiModifierList origin=null
      CONSTRUCTOR visibility:public returnType:<root>.FirModifierList.FirPsiModifierList [primary]
        VALUE_PARAMETER kind:Regular name:modifierList index:0 type:<root>.KtModifierList
        BLOCK_BODY
          DELEGATING_CONSTRUCTOR_CALL 'protected constructor <init> () declared in <root>.FirModifierList'
          INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:FirPsiModifierList modality:FINAL visibility:public superTypes:[<root>.FirModifierList]' type=kotlin.Unit
      FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
        overridden:
          public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.FirModifierList
      FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        overridden:
          public open fun hashCode (): kotlin.Int declared in <root>.FirModifierList
      FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        overridden:
          public open fun toString (): kotlin.String declared in <root>.FirModifierList
      PROPERTY FAKE_OVERRIDE name:modifiers visibility:public modality:FINAL [fake_override,val]
        overridden:
          public final modifiers: kotlin.collections.List<<root>.FirModifier<*>> declared in <root>.FirModifierList
        FUN FAKE_OVERRIDE name:<get-modifiers> visibility:public modality:FINAL returnType:kotlin.collections.List<<root>.FirModifier<*>> [fake_override]
          VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirModifierList
          correspondingProperty: PROPERTY FAKE_OVERRIDE name:modifiers visibility:public modality:FINAL [fake_override,val]
          overridden:
            public final fun <get-modifiers> (): kotlin.collections.List<<root>.FirModifier<*>> declared in <root>.FirModifierList
    CLASS OBJECT name:Companion modality:FINAL visibility:public [companion] superTypes:[kotlin.Any]
      thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.FirModifierList.Companion
      CONSTRUCTOR visibility:private returnType:<root>.FirModifierList.Companion [primary]
        BLOCK_BODY
          DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
          INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Companion modality:FINAL visibility:public [companion] superTypes:[kotlin.Any]' type=kotlin.Unit
      FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
        overridden:
          public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
      FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        overridden:
          public open fun hashCode (): kotlin.Int declared in kotlin.Any
      FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        overridden:
          public open fun toString (): kotlin.String declared in kotlin.Any
      FUN name:boxImpl visibility:public modality:FINAL returnType:kotlin.String
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirModifierList.Companion
        BLOCK_BODY
          VAR name:sourceElement type:<root>.FirSourceElement? [val]
            CONSTRUCTOR_CALL 'public constructor <init> (lighterASTNode: <root>.LighterASTNode, treeStructure: <root>.FlyweightCapableTreeStructure) declared in <root>.FirLightSourceElement' type=<root>.FirLightSourceElement origin=null
              ARG lighterASTNode: CONSTRUCTOR_CALL 'public constructor <init> (_children: kotlin.collections.List<<root>.LighterASTNode?>) declared in <root>.LighterASTNode' type=<root>.LighterASTNode origin=null
                ARG _children: CALL 'public final fun listOf <T> (element: T of kotlin.collections.listOf): kotlin.collections.List<T of kotlin.collections.listOf> declared in kotlin.collections' type=kotlin.collections.List<<root>.LighterASTNode> origin=null
                  TYPE_ARG T: <root>.LighterASTNode
                  ARG element: CONSTRUCTOR_CALL 'public constructor <init> (_children: kotlin.collections.List<<root>.LighterASTNode?>) declared in <root>.LighterASTNode' type=<root>.LighterASTNode origin=null
              ARG treeStructure: CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.FlyweightCapableTreeStructure' type=<root>.FlyweightCapableTreeStructure origin=null
          VAR name:result type:<root>.FirModifierList? [val]
            CALL 'public final fun getModifierList (<this>: <root>.FirSourceElement?): <root>.FirModifierList? declared in <root>.FirModifierList.Companion' type=<root>.FirModifierList? origin=null
              ARG <this>(index:0): GET_VAR '<this>: <root>.FirModifierList.Companion declared in <root>.FirModifierList.Companion.boxImpl' type=<root>.FirModifierList.Companion origin=IMPLICIT_ARGUMENT
              ARG <this>(index:1): GET_VAR 'val sourceElement: <root>.FirSourceElement? declared in <root>.FirModifierList.Companion.boxImpl' type=<root>.FirSourceElement? origin=null
          RETURN type=kotlin.Nothing from='public final fun boxImpl (): kotlin.String declared in <root>.FirModifierList.Companion'
            WHEN type=kotlin.String origin=IF
              BRANCH
                if: TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=<root>.FirModifierList.FirLightModifierList
                  GET_VAR 'val result: <root>.FirModifierList? declared in <root>.FirModifierList.Companion.boxImpl' type=<root>.FirModifierList? origin=null
                then: CONST String type=kotlin.String value="OK"
              BRANCH
                if: CONST Boolean type=kotlin.Boolean value=true
                then: CONST String type=kotlin.String value="Fail"
      FUN name:getModifierList visibility:public modality:FINAL returnType:<root>.FirModifierList?
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirModifierList.Companion
        VALUE_PARAMETER kind:ExtensionReceiver name:<this> index:1 type:<root>.FirSourceElement?
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public final fun getModifierList (<this>: <root>.FirSourceElement?): <root>.FirModifierList? declared in <root>.FirModifierList.Companion'
            BLOCK type=<root>.FirModifierList? origin=WHEN
              VAR IR_TEMPORARY_VARIABLE name:tmp_0 type:<root>.FirSourceElement? [val]
                GET_VAR '<this>(index:1): <root>.FirSourceElement? declared in <root>.FirModifierList.Companion.getModifierList' type=<root>.FirSourceElement? origin=null
              WHEN type=<root>.FirModifierList? origin=WHEN
                BRANCH
                  if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
                    ARG arg0: GET_VAR 'val tmp_0: <root>.FirSourceElement? declared in <root>.FirModifierList.Companion.getModifierList' type=<root>.FirSourceElement? origin=null
                    ARG arg1: CONST Null type=kotlin.Nothing? value=null
                  then: CONST Null type=kotlin.Nothing? value=null
                BRANCH
                  if: TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=<root>.FirPsiSourceElement
                    TYPE_OP type=<root>.FirSourceElement origin=IMPLICIT_CAST typeOperand=<root>.FirSourceElement
                      GET_VAR 'val tmp_0: <root>.FirSourceElement? declared in <root>.FirModifierList.Companion.getModifierList' type=<root>.FirSourceElement? origin=null
                  then: BLOCK type=<root>.FirModifierList.FirPsiModifierList? origin=SAFE_CALL
                    VAR IR_TEMPORARY_VARIABLE name:tmp_1 type:<root>.KtModifierList? [val]
                      BLOCK type=<root>.KtModifierList? origin=SAFE_CALL
                        VAR IR_TEMPORARY_VARIABLE name:tmp_2 type:<root>.KtModifierListOwner? [val]
                          TYPE_OP type=<root>.KtModifierListOwner? origin=SAFE_CAST typeOperand=<root>.KtModifierListOwner
                            CALL 'public final fun <get-psi> (): <root>.PsiElement declared in <root>.FirPsiSourceElement' type=<root>.PsiElement origin=GET_PROPERTY
                              ARG <this>: TYPE_OP type=<root>.FirPsiSourceElement origin=IMPLICIT_CAST typeOperand=<root>.FirPsiSourceElement
                                GET_VAR '<this>(index:1): <root>.FirSourceElement? declared in <root>.FirModifierList.Companion.getModifierList' type=<root>.FirSourceElement? origin=IMPLICIT_ARGUMENT
                        WHEN type=<root>.KtModifierList? origin=null
                          BRANCH
                            if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
                              ARG arg0: GET_VAR 'val tmp_2: <root>.KtModifierListOwner? declared in <root>.FirModifierList.Companion.getModifierList' type=<root>.KtModifierListOwner? origin=null
                              ARG arg1: CONST Null type=kotlin.Nothing? value=null
                            then: CONST Null type=kotlin.Nothing? value=null
                          BRANCH
                            if: CONST Boolean type=kotlin.Boolean value=true
                            then: CALL 'public final fun <get-modifierList> (): <root>.KtModifierList declared in <root>.KtModifierListOwner' type=<root>.KtModifierList origin=GET_PROPERTY
                              ARG <this>: TYPE_OP type=<root>.KtModifierListOwner origin=IMPLICIT_CAST typeOperand=<root>.KtModifierListOwner
                                GET_VAR 'val tmp_2: <root>.KtModifierListOwner? declared in <root>.FirModifierList.Companion.getModifierList' type=<root>.KtModifierListOwner? origin=null
                    WHEN type=<root>.FirModifierList.FirPsiModifierList? origin=null
                      BRANCH
                        if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
                          ARG arg0: GET_VAR 'val tmp_1: <root>.KtModifierList? declared in <root>.FirModifierList.Companion.getModifierList' type=<root>.KtModifierList? origin=null
                          ARG arg1: CONST Null type=kotlin.Nothing? value=null
                        then: CONST Null type=kotlin.Nothing? value=null
                      BRANCH
                        if: CONST Boolean type=kotlin.Boolean value=true
                        then: CALL 'public final fun let <T, R> (<this>: T of kotlin.let, block: kotlin.Function1<T of kotlin.let, R of kotlin.let>): R of kotlin.let declared in kotlin' type=<root>.FirModifierList.FirPsiModifierList origin=null
                          TYPE_ARG T: <root>.KtModifierList
                          TYPE_ARG R: <root>.FirModifierList.FirPsiModifierList
                          ARG <this>: TYPE_OP type=<root>.KtModifierList origin=IMPLICIT_CAST typeOperand=<root>.KtModifierList
                            GET_VAR 'val tmp_1: <root>.KtModifierList? declared in <root>.FirModifierList.Companion.getModifierList' type=<root>.KtModifierList? origin=null
                          ARG block: FUN_EXPR type=kotlin.Function1<<root>.KtModifierList, <root>.FirModifierList.FirPsiModifierList> origin=LAMBDA
                            FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL returnType:<root>.FirModifierList.FirPsiModifierList
                              VALUE_PARAMETER kind:Regular name:it index:0 type:<root>.KtModifierList
                              BLOCK_BODY
                                RETURN type=kotlin.Nothing from='local final fun <anonymous> (it: <root>.KtModifierList): <root>.FirModifierList.FirPsiModifierList declared in <root>.FirModifierList.Companion.getModifierList'
                                  CONSTRUCTOR_CALL 'public constructor <init> (modifierList: <root>.KtModifierList) declared in <root>.FirModifierList.FirPsiModifierList' type=<root>.FirModifierList.FirPsiModifierList origin=null
                                    ARG modifierList: GET_VAR 'it: <root>.KtModifierList declared in <root>.FirModifierList.Companion.getModifierList.<anonymous>' type=<root>.KtModifierList origin=null
                BRANCH
                  if: TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=<root>.FirLightSourceElement
                    TYPE_OP type=<root>.FirSourceElement origin=IMPLICIT_CAST typeOperand=<root>.FirSourceElement
                      GET_VAR 'val tmp_0: <root>.FirSourceElement? declared in <root>.FirModifierList.Companion.getModifierList' type=<root>.FirSourceElement? origin=null
                  then: BLOCK type=<root>.FirModifierList.FirLightModifierList origin=null
                    VAR name:modifierListNode type:<root>.LighterASTNode [val]
                      BLOCK type=<root>.LighterASTNode origin=ELVIS
                        VAR IR_TEMPORARY_VARIABLE name:tmp_3 type:<root>.LighterASTNode? [val]
                          CALL 'public final fun find <T> (<this>: kotlin.collections.Iterable<T of kotlin.collections.find>, predicate: kotlin.Function1<T of kotlin.collections.find, kotlin.Boolean>): T of kotlin.collections.find? declared in kotlin.collections' type=<root>.LighterASTNode? origin=null
                            TYPE_ARG T: <root>.LighterASTNode?
                            ARG <this>: CALL 'public final fun getChildren (treeStructure: <root>.FlyweightCapableTreeStructure): kotlin.collections.List<<root>.LighterASTNode?> declared in <root>.LighterASTNode' type=kotlin.collections.List<<root>.LighterASTNode?> origin=null
                              ARG <this>: CALL 'public open fun <get-lighterASTNode> (): <root>.LighterASTNode declared in <root>.FirLightSourceElement' type=<root>.LighterASTNode origin=GET_PROPERTY
                                ARG <this>: TYPE_OP type=<root>.FirLightSourceElement origin=IMPLICIT_CAST typeOperand=<root>.FirLightSourceElement
                                  GET_VAR '<this>(index:1): <root>.FirSourceElement? declared in <root>.FirModifierList.Companion.getModifierList' type=<root>.FirSourceElement? origin=IMPLICIT_ARGUMENT
                              ARG treeStructure: CALL 'public open fun <get-treeStructure> (): <root>.FlyweightCapableTreeStructure declared in <root>.FirLightSourceElement' type=<root>.FlyweightCapableTreeStructure origin=GET_PROPERTY
                                ARG <this>: TYPE_OP type=<root>.FirLightSourceElement origin=IMPLICIT_CAST typeOperand=<root>.FirLightSourceElement
                                  GET_VAR '<this>(index:1): <root>.FirSourceElement? declared in <root>.FirModifierList.Companion.getModifierList' type=<root>.FirSourceElement? origin=IMPLICIT_ARGUMENT
                            ARG predicate: FUN_EXPR type=kotlin.Function1<<root>.LighterASTNode?, kotlin.Boolean> origin=LAMBDA
                              FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL returnType:kotlin.Boolean
                                VALUE_PARAMETER kind:Regular name:it index:0 type:<root>.LighterASTNode?
                                BLOCK_BODY
                                  RETURN type=kotlin.Nothing from='local final fun <anonymous> (it: <root>.LighterASTNode?): kotlin.Boolean declared in <root>.FirModifierList.Companion.getModifierList'
                                    CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
                                      ARG arg0: BLOCK type=<root>.TokenType? origin=SAFE_CALL
                                        VAR IR_TEMPORARY_VARIABLE name:tmp_4 type:<root>.LighterASTNode? [val]
                                          GET_VAR 'it: <root>.LighterASTNode? declared in <root>.FirModifierList.Companion.getModifierList.<anonymous>' type=<root>.LighterASTNode? origin=null
                                        WHEN type=<root>.TokenType? origin=null
                                          BRANCH
                                            if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
                                              ARG arg0: GET_VAR 'val tmp_4: <root>.LighterASTNode? declared in <root>.FirModifierList.Companion.getModifierList.<anonymous>' type=<root>.LighterASTNode? origin=null
                                              ARG arg1: CONST Null type=kotlin.Nothing? value=null
                                            then: CONST Null type=kotlin.Nothing? value=null
                                          BRANCH
                                            if: CONST Boolean type=kotlin.Boolean value=true
                                            then: CALL 'public final fun <get-tokenType> (): <root>.TokenType declared in <root>.LighterASTNode' type=<root>.TokenType origin=GET_PROPERTY
                                              ARG <this>: TYPE_OP type=<root>.LighterASTNode origin=IMPLICIT_CAST typeOperand=<root>.LighterASTNode
                                                GET_VAR 'val tmp_4: <root>.LighterASTNode? declared in <root>.FirModifierList.Companion.getModifierList.<anonymous>' type=<root>.LighterASTNode? origin=null
                                      ARG arg1: CALL 'public final fun <get-MODIFIER_LIST> (): <root>.TokenType declared in <root>.TokenType.Companion' type=<root>.TokenType origin=GET_PROPERTY
                                        ARG <this>: GET_OBJECT 'CLASS OBJECT name:Companion modality:FINAL visibility:public [companion] superTypes:[kotlin.Any]' type=<root>.TokenType.Companion
                        WHEN type=<root>.LighterASTNode origin=null
                          BRANCH
                            if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
                              ARG arg0: GET_VAR 'val tmp_3: <root>.LighterASTNode? declared in <root>.FirModifierList.Companion.getModifierList' type=<root>.LighterASTNode? origin=null
                              ARG arg1: CONST Null type=kotlin.Nothing? value=null
                            then: RETURN type=kotlin.Nothing from='public final fun getModifierList (<this>: <root>.FirSourceElement?): <root>.FirModifierList? declared in <root>.FirModifierList.Companion'
                              CONST Null type=kotlin.Nothing? value=null
                          BRANCH
                            if: CONST Boolean type=kotlin.Boolean value=true
                            then: GET_VAR 'val tmp_3: <root>.LighterASTNode? declared in <root>.FirModifierList.Companion.getModifierList' type=<root>.LighterASTNode? origin=null
                    CONSTRUCTOR_CALL 'public constructor <init> (modifierList: <root>.LighterASTNode, tree: <root>.FlyweightCapableTreeStructure) declared in <root>.FirModifierList.FirLightModifierList' type=<root>.FirModifierList.FirLightModifierList origin=null
                      ARG modifierList: GET_VAR 'val modifierListNode: <root>.LighterASTNode declared in <root>.FirModifierList.Companion.getModifierList' type=<root>.LighterASTNode origin=null
                      ARG tree: CALL 'public open fun <get-treeStructure> (): <root>.FlyweightCapableTreeStructure declared in <root>.FirLightSourceElement' type=<root>.FlyweightCapableTreeStructure origin=GET_PROPERTY
                        ARG <this>: TYPE_OP type=<root>.FirLightSourceElement origin=IMPLICIT_CAST typeOperand=<root>.FirLightSourceElement
                          GET_VAR '<this>(index:1): <root>.FirSourceElement? declared in <root>.FirModifierList.Companion.getModifierList' type=<root>.FirSourceElement? origin=IMPLICIT_ARGUMENT
                BRANCH
                  if: CONST Boolean type=kotlin.Boolean value=true
                  then: CALL 'public final fun noWhenBranchMatchedException (): kotlin.Nothing declared in kotlin.internal.ir' type=kotlin.Nothing origin=null
    CONSTRUCTOR visibility:protected returnType:<root>.FirModifierList [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:FirModifierList modality:SEALED visibility:internal superTypes:[kotlin.Any]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Any
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Any
  CLASS CLASS name:FirPsiSourceElement modality:FINAL visibility:public superTypes:[<root>.FirSourceElement]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.FirPsiSourceElement
    PROPERTY name:psi visibility:public modality:FINAL [val]
      FIELD PROPERTY_BACKING_FIELD name:psi type:<root>.PsiElement visibility:private [final]
        EXPRESSION_BODY
          GET_VAR 'psi: <root>.PsiElement declared in <root>.FirPsiSourceElement.<init>' type=<root>.PsiElement origin=INITIALIZE_PROPERTY_FROM_PARAMETER
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-psi> visibility:public modality:FINAL returnType:<root>.PsiElement
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirPsiSourceElement
        correspondingProperty: PROPERTY name:psi visibility:public modality:FINAL [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public final fun <get-psi> (): <root>.PsiElement declared in <root>.FirPsiSourceElement'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:psi type:<root>.PsiElement visibility:private [final]' type=<root>.PsiElement origin=null
              receiver: GET_VAR '<this>: <root>.FirPsiSourceElement declared in <root>.FirPsiSourceElement.<get-psi>' type=<root>.FirPsiSourceElement origin=null
    PROPERTY name:lighterASTNode visibility:public modality:OPEN [val]
      overridden:
        public abstract lighterASTNode: <root>.LighterASTNode declared in <root>.FirSourceElement
      FIELD PROPERTY_BACKING_FIELD name:lighterASTNode type:<root>.LighterASTNode visibility:private [final]
        EXPRESSION_BODY
          GET_VAR 'lighterASTNode: <root>.LighterASTNode declared in <root>.FirPsiSourceElement.<init>' type=<root>.LighterASTNode origin=INITIALIZE_PROPERTY_FROM_PARAMETER
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-lighterASTNode> visibility:public modality:OPEN returnType:<root>.LighterASTNode
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirPsiSourceElement
        correspondingProperty: PROPERTY name:lighterASTNode visibility:public modality:OPEN [val]
        overridden:
          public abstract fun <get-lighterASTNode> (): <root>.LighterASTNode declared in <root>.FirSourceElement
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-lighterASTNode> (): <root>.LighterASTNode declared in <root>.FirPsiSourceElement'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:lighterASTNode type:<root>.LighterASTNode visibility:private [final]' type=<root>.LighterASTNode origin=null
              receiver: GET_VAR '<this>: <root>.FirPsiSourceElement declared in <root>.FirPsiSourceElement.<get-lighterASTNode>' type=<root>.FirPsiSourceElement origin=null
    PROPERTY name:treeStructure visibility:public modality:OPEN [val]
      overridden:
        public abstract treeStructure: <root>.FlyweightCapableTreeStructure declared in <root>.FirSourceElement
      FIELD PROPERTY_BACKING_FIELD name:treeStructure type:<root>.FlyweightCapableTreeStructure visibility:private [final]
        EXPRESSION_BODY
          GET_VAR 'treeStructure: <root>.FlyweightCapableTreeStructure declared in <root>.FirPsiSourceElement.<init>' type=<root>.FlyweightCapableTreeStructure origin=INITIALIZE_PROPERTY_FROM_PARAMETER
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-treeStructure> visibility:public modality:OPEN returnType:<root>.FlyweightCapableTreeStructure
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirPsiSourceElement
        correspondingProperty: PROPERTY name:treeStructure visibility:public modality:OPEN [val]
        overridden:
          public abstract fun <get-treeStructure> (): <root>.FlyweightCapableTreeStructure declared in <root>.FirSourceElement
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-treeStructure> (): <root>.FlyweightCapableTreeStructure declared in <root>.FirPsiSourceElement'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:treeStructure type:<root>.FlyweightCapableTreeStructure visibility:private [final]' type=<root>.FlyweightCapableTreeStructure origin=null
              receiver: GET_VAR '<this>: <root>.FirPsiSourceElement declared in <root>.FirPsiSourceElement.<get-treeStructure>' type=<root>.FirPsiSourceElement origin=null
    CONSTRUCTOR visibility:public returnType:<root>.FirPsiSourceElement [primary]
      VALUE_PARAMETER kind:Regular name:psi index:0 type:<root>.PsiElement
      VALUE_PARAMETER kind:Regular name:lighterASTNode index:1 type:<root>.LighterASTNode
      VALUE_PARAMETER kind:Regular name:treeStructure index:2 type:<root>.FlyweightCapableTreeStructure
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'protected constructor <init> () declared in <root>.FirSourceElement'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:FirPsiSourceElement modality:FINAL visibility:public superTypes:[<root>.FirSourceElement]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.FirSourceElement
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in <root>.FirSourceElement
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in <root>.FirSourceElement
  CLASS CLASS name:FirSourceElement modality:SEALED visibility:public superTypes:[kotlin.Any]
    sealedSubclasses:
      CLASS CLASS name:FirLightSourceElement modality:FINAL visibility:public superTypes:[<root>.FirSourceElement]
      CLASS CLASS name:FirPsiSourceElement modality:FINAL visibility:public superTypes:[<root>.FirSourceElement]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.FirSourceElement
    CONSTRUCTOR visibility:protected returnType:<root>.FirSourceElement [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:FirSourceElement modality:SEALED visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Any
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Any
    PROPERTY name:lighterASTNode visibility:public modality:ABSTRACT [val]
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-lighterASTNode> visibility:public modality:ABSTRACT returnType:<root>.LighterASTNode
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirSourceElement
        correspondingProperty: PROPERTY name:lighterASTNode visibility:public modality:ABSTRACT [val]
    PROPERTY name:treeStructure visibility:public modality:ABSTRACT [val]
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-treeStructure> visibility:public modality:ABSTRACT returnType:<root>.FlyweightCapableTreeStructure
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.FirSourceElement
        correspondingProperty: PROPERTY name:treeStructure visibility:public modality:ABSTRACT [val]
  CLASS CLASS name:FlyweightCapableTreeStructure modality:FINAL visibility:public superTypes:[kotlin.Any]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.FlyweightCapableTreeStructure
    CONSTRUCTOR visibility:public returnType:<root>.FlyweightCapableTreeStructure [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:FlyweightCapableTreeStructure modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Any
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Any
  CLASS CLASS name:KtModifierKeywordToken modality:FINAL visibility:public superTypes:[kotlin.Any]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.KtModifierKeywordToken
    CONSTRUCTOR visibility:public returnType:<root>.KtModifierKeywordToken [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:KtModifierKeywordToken modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Any
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Any
  CLASS CLASS name:KtModifierList modality:FINAL visibility:public superTypes:[<root>.PsiElement]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.KtModifierList
    CONSTRUCTOR visibility:public returnType:<root>.KtModifierList [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.PsiElement'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:KtModifierList modality:FINAL visibility:public superTypes:[<root>.PsiElement]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.PsiElement
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in <root>.PsiElement
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in <root>.PsiElement
  CLASS CLASS name:KtModifierListOwner modality:FINAL visibility:public superTypes:[<root>.PsiElement]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.KtModifierListOwner
    PROPERTY name:modifierList visibility:public modality:FINAL [val]
      FIELD PROPERTY_BACKING_FIELD name:modifierList type:<root>.KtModifierList visibility:private [final]
        EXPRESSION_BODY
          CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.KtModifierList' type=<root>.KtModifierList origin=null
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-modifierList> visibility:public modality:FINAL returnType:<root>.KtModifierList
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.KtModifierListOwner
        correspondingProperty: PROPERTY name:modifierList visibility:public modality:FINAL [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public final fun <get-modifierList> (): <root>.KtModifierList declared in <root>.KtModifierListOwner'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:modifierList type:<root>.KtModifierList visibility:private [final]' type=<root>.KtModifierList origin=null
              receiver: GET_VAR '<this>: <root>.KtModifierListOwner declared in <root>.KtModifierListOwner.<get-modifierList>' type=<root>.KtModifierListOwner origin=null
    CONSTRUCTOR visibility:public returnType:<root>.KtModifierListOwner [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.PsiElement'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:KtModifierListOwner modality:FINAL visibility:public superTypes:[<root>.PsiElement]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.PsiElement
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in <root>.PsiElement
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in <root>.PsiElement
  CLASS CLASS name:LighterASTNode modality:FINAL visibility:public superTypes:[kotlin.Any]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.LighterASTNode
    PROPERTY name:_children visibility:public modality:FINAL [val]
      FIELD PROPERTY_BACKING_FIELD name:_children type:kotlin.collections.List<<root>.LighterASTNode?> visibility:private [final]
        EXPRESSION_BODY
          GET_VAR '_children: kotlin.collections.List<<root>.LighterASTNode?> declared in <root>.LighterASTNode.<init>' type=kotlin.collections.List<<root>.LighterASTNode?> origin=INITIALIZE_PROPERTY_FROM_PARAMETER
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-_children> visibility:public modality:FINAL returnType:kotlin.collections.List<<root>.LighterASTNode?>
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.LighterASTNode
        correspondingProperty: PROPERTY name:_children visibility:public modality:FINAL [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public final fun <get-_children> (): kotlin.collections.List<<root>.LighterASTNode?> declared in <root>.LighterASTNode'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:_children type:kotlin.collections.List<<root>.LighterASTNode?> visibility:private [final]' type=kotlin.collections.List<<root>.LighterASTNode?> origin=null
              receiver: GET_VAR '<this>: <root>.LighterASTNode declared in <root>.LighterASTNode.<get-_children>' type=<root>.LighterASTNode origin=null
    PROPERTY name:tokenType visibility:public modality:FINAL [val]
      FIELD PROPERTY_BACKING_FIELD name:tokenType type:<root>.TokenType visibility:private [final]
        EXPRESSION_BODY
          CALL 'public final fun <get-MODIFIER_LIST> (): <root>.TokenType declared in <root>.TokenType.Companion' type=<root>.TokenType origin=GET_PROPERTY
            ARG <this>: GET_OBJECT 'CLASS OBJECT name:Companion modality:FINAL visibility:public [companion] superTypes:[kotlin.Any]' type=<root>.TokenType.Companion
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-tokenType> visibility:public modality:FINAL returnType:<root>.TokenType
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.LighterASTNode
        correspondingProperty: PROPERTY name:tokenType visibility:public modality:FINAL [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public final fun <get-tokenType> (): <root>.TokenType declared in <root>.LighterASTNode'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:tokenType type:<root>.TokenType visibility:private [final]' type=<root>.TokenType origin=null
              receiver: GET_VAR '<this>: <root>.LighterASTNode declared in <root>.LighterASTNode.<get-tokenType>' type=<root>.LighterASTNode origin=null
    CONSTRUCTOR visibility:public returnType:<root>.LighterASTNode [primary]
      VALUE_PARAMETER kind:Regular name:_children index:0 type:kotlin.collections.List<<root>.LighterASTNode?>
        EXPRESSION_BODY
          CALL 'public final fun emptyList <T> (): kotlin.collections.List<T of kotlin.collections.emptyList> declared in kotlin.collections' type=kotlin.collections.List<<root>.LighterASTNode?> origin=null
            TYPE_ARG T: <root>.LighterASTNode?
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:LighterASTNode modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Any
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Any
    FUN name:getChildren visibility:public modality:FINAL returnType:kotlin.collections.List<<root>.LighterASTNode?>
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.LighterASTNode
      VALUE_PARAMETER kind:Regular name:treeStructure index:1 type:<root>.FlyweightCapableTreeStructure
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public final fun getChildren (treeStructure: <root>.FlyweightCapableTreeStructure): kotlin.collections.List<<root>.LighterASTNode?> declared in <root>.LighterASTNode'
          CALL 'public final fun <get-_children> (): kotlin.collections.List<<root>.LighterASTNode?> declared in <root>.LighterASTNode' type=kotlin.collections.List<<root>.LighterASTNode?> origin=GET_PROPERTY
            ARG <this>: GET_VAR '<this>: <root>.LighterASTNode declared in <root>.LighterASTNode.getChildren' type=<root>.LighterASTNode origin=IMPLICIT_ARGUMENT
  CLASS CLASS name:PsiElement modality:OPEN visibility:public superTypes:[kotlin.Any]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.PsiElement
    CONSTRUCTOR visibility:public returnType:<root>.PsiElement [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:PsiElement modality:OPEN visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Any
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Any
  CLASS CLASS name:TokenType modality:FINAL visibility:public superTypes:[kotlin.Any]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.TokenType
    CLASS OBJECT name:Companion modality:FINAL visibility:public [companion] superTypes:[kotlin.Any]
      thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.TokenType.Companion
      PROPERTY name:MODIFIER_LIST visibility:public modality:FINAL [val]
        FIELD PROPERTY_BACKING_FIELD name:MODIFIER_LIST type:<root>.TokenType visibility:private [final]
          EXPRESSION_BODY
            CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.TokenType' type=<root>.TokenType origin=null
        FUN DEFAULT_PROPERTY_ACCESSOR name:<get-MODIFIER_LIST> visibility:public modality:FINAL returnType:<root>.TokenType
          VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.TokenType.Companion
          correspondingProperty: PROPERTY name:MODIFIER_LIST visibility:public modality:FINAL [val]
          BLOCK_BODY
            RETURN type=kotlin.Nothing from='public final fun <get-MODIFIER_LIST> (): <root>.TokenType declared in <root>.TokenType.Companion'
              GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:MODIFIER_LIST type:<root>.TokenType visibility:private [final]' type=<root>.TokenType origin=null
                receiver: GET_VAR '<this>: <root>.TokenType.Companion declared in <root>.TokenType.Companion.<get-MODIFIER_LIST>' type=<root>.TokenType.Companion origin=null
      CONSTRUCTOR visibility:private returnType:<root>.TokenType.Companion [primary]
        BLOCK_BODY
          DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
          INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Companion modality:FINAL visibility:public [companion] superTypes:[kotlin.Any]' type=kotlin.Unit
      FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
        overridden:
          public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
      FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        overridden:
          public open fun hashCode (): kotlin.Int declared in kotlin.Any
      FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
        overridden:
          public open fun toString (): kotlin.String declared in kotlin.Any
    CONSTRUCTOR visibility:public returnType:<root>.TokenType [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:TokenType modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Any
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Any
  FUN name:box visibility:public modality:FINAL returnType:kotlin.String
    BLOCK_BODY
      RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in <root>'
        CALL 'public final fun boxImpl (): kotlin.String declared in <root>.FirModifierList.Companion' type=kotlin.String origin=null
          ARG <this>: GET_OBJECT 'CLASS OBJECT name:Companion modality:FINAL visibility:public [companion] superTypes:[kotlin.Any]' type=<root>.FirModifierList.Companion
