FILE fqName:<root> fileName:/varargListOfJsStatement.kt
  CLASS CLASS name:Bar modality:FINAL visibility:public superTypes:[<root>.SourceInfoAwareJsNode; <root>.SomeOtherInterface]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.Bar
    CONSTRUCTOR visibility:public returnType:<root>.Bar [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.SourceInfoAwareJsNode'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Bar modality:FINAL visibility:public superTypes:[<root>.SourceInfoAwareJsNode; <root>.SomeOtherInterface]' 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>.SourceInfoAwareJsNode
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.SomeOtherInterface
    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>.SourceInfoAwareJsNode
        public open fun hashCode (): kotlin.Int declared in <root>.SomeOtherInterface
    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>.SourceInfoAwareJsNode
        public open fun toString (): kotlin.String declared in <root>.SomeOtherInterface
  CLASS CLASS name:Foo modality:FINAL visibility:public superTypes:[<root>.SourceInfoAwareJsNode; <root>.SomeOtherInterface]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.Foo
    CONSTRUCTOR visibility:public returnType:<root>.Foo [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.SourceInfoAwareJsNode'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Foo modality:FINAL visibility:public superTypes:[<root>.SourceInfoAwareJsNode; <root>.SomeOtherInterface]' 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>.SourceInfoAwareJsNode
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.SomeOtherInterface
    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>.SourceInfoAwareJsNode
        public open fun hashCode (): kotlin.Int declared in <root>.SomeOtherInterface
    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>.SourceInfoAwareJsNode
        public open fun toString (): kotlin.String declared in <root>.SomeOtherInterface
  CLASS CLASS name:JsExport modality:FINAL visibility:public superTypes:[<root>.SourceInfoAwareJsNode; <root>.JsStatement]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.JsExport
    CONSTRUCTOR visibility:public returnType:<root>.JsExport [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.SourceInfoAwareJsNode'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:JsExport modality:FINAL visibility:public superTypes:[<root>.SourceInfoAwareJsNode; <root>.JsStatement]' 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>.SourceInfoAwareJsNode
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.JsStatement
    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>.SourceInfoAwareJsNode
        public open fun hashCode (): kotlin.Int declared in <root>.JsStatement
    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>.SourceInfoAwareJsNode
        public open fun toString (): kotlin.String declared in <root>.JsStatement
  CLASS CLASS name:JsNonJsNode modality:FINAL visibility:public superTypes:[<root>.NonJsNode; <root>.JsStatement]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.JsNonJsNode
    CONSTRUCTOR visibility:public returnType:<root>.JsNonJsNode [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.NonJsNode'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:JsNonJsNode modality:FINAL visibility:public superTypes:[<root>.NonJsNode; <root>.JsStatement]' 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>.NonJsNode
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.JsStatement
    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>.NonJsNode
        public open fun hashCode (): kotlin.Int declared in <root>.JsStatement
    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>.NonJsNode
        public open fun toString (): kotlin.String declared in <root>.JsStatement
  CLASS CLASS name:JsVars modality:FINAL visibility:public superTypes:[<root>.SourceInfoAwareJsNode; <root>.JsStatement]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.JsVars
    CONSTRUCTOR visibility:public returnType:<root>.JsVars [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.SourceInfoAwareJsNode'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:JsVars modality:FINAL visibility:public superTypes:[<root>.SourceInfoAwareJsNode; <root>.JsStatement]' 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>.SourceInfoAwareJsNode
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.JsStatement
    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>.SourceInfoAwareJsNode
        public open fun hashCode (): kotlin.Int declared in <root>.JsStatement
    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>.SourceInfoAwareJsNode
        public open fun toString (): kotlin.String declared in <root>.JsStatement
  CLASS CLASS name:NonJsNode modality:ABSTRACT visibility:public superTypes:[kotlin.Any]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.NonJsNode
    CONSTRUCTOR visibility:public returnType:<root>.NonJsNode [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:NonJsNode modality:ABSTRACT 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:SourceInfoAwareJsNode modality:ABSTRACT visibility:public superTypes:[<root>.JsNode]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.SourceInfoAwareJsNode
    CONSTRUCTOR visibility:public returnType:<root>.SourceInfoAwareJsNode [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:SourceInfoAwareJsNode modality:ABSTRACT visibility:public superTypes:[<root>.JsNode]' 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>.JsNode
    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>.JsNode
    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>.JsNode
  CLASS INTERFACE name:JsNode modality:ABSTRACT visibility:public superTypes:[kotlin.Any]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.JsNode
    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 INTERFACE name:JsStatement modality:ABSTRACT visibility:public superTypes:[<root>.JsNode]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.JsStatement
    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>.JsNode
    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>.JsNode
    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>.JsNode
  CLASS INTERFACE name:SomeOtherInterface modality:ABSTRACT visibility:public superTypes:[kotlin.Any]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.SomeOtherInterface
    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:listOfFooBar visibility:public modality:FINAL returnType:kotlin.collections.List<<root>.SomeOtherInterface>
    BLOCK_BODY
      RETURN type=kotlin.Nothing from='public final fun listOfFooBar (): kotlin.collections.List<<root>.SomeOtherInterface> declared in <root>'
        CALL 'public final fun listOf <T> (vararg elements: T of kotlin.collections.listOf): kotlin.collections.List<T of kotlin.collections.listOf> declared in kotlin.collections' type=kotlin.collections.List<<root>.SomeOtherInterface> origin=null
          TYPE_ARG T: <root>.SomeOtherInterface
          ARG elements: VARARG type=kotlin.Array<out <root>.SomeOtherInterface> varargElementType=<root>.SomeOtherInterface
            CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Foo' type=<root>.Foo origin=null
            CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Bar' type=<root>.Bar origin=null
  FUN name:listOfVarsExport visibility:public modality:FINAL returnType:kotlin.collections.List<<root>.JsStatement>
    BLOCK_BODY
      RETURN type=kotlin.Nothing from='public final fun listOfVarsExport (): kotlin.collections.List<<root>.JsStatement> declared in <root>'
        CALL 'public final fun listOf <T> (vararg elements: T of kotlin.collections.listOf): kotlin.collections.List<T of kotlin.collections.listOf> declared in kotlin.collections' type=kotlin.collections.List<<root>.JsStatement> origin=null
          TYPE_ARG T: <root>.JsStatement
          ARG elements: VARARG type=kotlin.Array<out <root>.JsStatement> varargElementType=<root>.JsStatement
            CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.JsVars' type=<root>.JsVars origin=null
            CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.JsExport' type=<root>.JsExport origin=null
  FUN name:listOfVarsNonJsNode visibility:public modality:FINAL returnType:kotlin.collections.List<<root>.JsStatement>
    BLOCK_BODY
      RETURN type=kotlin.Nothing from='public final fun listOfVarsNonJsNode (): kotlin.collections.List<<root>.JsStatement> declared in <root>'
        CALL 'public final fun listOf <T> (vararg elements: T of kotlin.collections.listOf): kotlin.collections.List<T of kotlin.collections.listOf> declared in kotlin.collections' type=kotlin.collections.List<<root>.JsStatement> origin=null
          TYPE_ARG T: <root>.JsStatement
          ARG elements: VARARG type=kotlin.Array<out <root>.JsStatement> varargElementType=<root>.JsStatement
            CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.JsVars' type=<root>.JsVars origin=null
            CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.JsNonJsNode' type=<root>.JsNonJsNode origin=null
