@0:0..23:0 FILE fqName:test fileName:/augmentedAssignmentWithExpression.kt
  @2:0..8:1 CLASS CLASS name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
    @2:0..8:1 CONSTRUCTOR visibility:public <> () returnType:test.Host [primary]
      @2:0..8:1 BLOCK_BODY
        @2:0..8:1 DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
        @2:0..8:1 INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
    @3:13..38 FUN name:plusAssign visibility:public modality:FINAL <> ($this:test.Host, x:kotlin.Int) returnType:kotlin.Unit [operator]
      @3:4..38 VALUE_PARAMETER name:<this> type:test.Host
      @3:28..34 VALUE_PARAMETER name:x index:0 type:kotlin.Int
      @3:36..38 BLOCK_BODY
    @5:4..7:5 FUN name:test1 visibility:public modality:FINAL <> ($this:test.Host) returnType:kotlin.Unit
      @5:4..7:5 VALUE_PARAMETER name:<this> type:test.Host
      @5:16..7:5 BLOCK_BODY
        @6:8..17 CALL 'public final fun plusAssign (x: kotlin.Int): kotlin.Unit [operator] declared in test.Host' type=kotlin.Unit origin=PLUSEQ
          @6:8..12 GET_VAR '<this>: test.Host declared in test.Host.test1' type=test.Host origin=PLUSEQ
          @6:16..17 CONST Int type=kotlin.Int value=1
    @2:0..8:1 FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
      @2:0..8:1 VALUE_PARAMETER name:<this> type:kotlin.Any
      @2:0..8:1 VALUE_PARAMETER name:other index:0 type:kotlin.Any?
    @2:0..8:1 FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
      @2:0..8:1 VALUE_PARAMETER name:<this> type:kotlin.Any
    @2:0..8:1 FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
      @2:0..8:1 VALUE_PARAMETER name:<this> type:kotlin.Any
    @2:0..8:1 VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:test.Host
  @10:0..18 FUN name:foo visibility:public modality:FINAL <> () returnType:test.Host
    @10:12..18 BLOCK_BODY
      @10:18..18 RETURN type=kotlin.Nothing from='public final fun foo (): test.Host declared in test'
        @10:12..18 CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in test.Host' type=test.Host origin=null
  @12:0..14:1 FUN name:test2 visibility:public modality:FINAL <> ($receiver:test.Host) returnType:kotlin.Unit
    @12:4..8 VALUE_PARAMETER name:<this> type:test.Host
    @12:17..14:1 BLOCK_BODY
      @13:4..13 CALL 'public final fun plusAssign (x: kotlin.Int): kotlin.Unit [operator] declared in test.Host' type=kotlin.Unit origin=PLUSEQ
        @13:4..8 GET_VAR '<this>: test.Host declared in test.test2' type=test.Host origin=PLUSEQ
        @13:12..13 CONST Int type=kotlin.Int value=1
  @16:0..18:1 FUN name:test3 visibility:public modality:FINAL <> () returnType:kotlin.Unit
    @16:12..18:1 BLOCK_BODY
      @17:4..14 CALL 'public final fun plusAssign (x: kotlin.Int): kotlin.Unit [operator] declared in test.Host' type=kotlin.Unit origin=PLUSEQ
        @17:4..9 CALL 'public final fun foo (): test.Host declared in test' type=test.Host origin=null
        @17:13..14 CONST Int type=kotlin.Int value=1
  @20:0..22:1 FUN name:test4 visibility:public modality:FINAL <> (a:kotlin.Function0<test.Host>) returnType:kotlin.Unit
    @20:10..23 VALUE_PARAMETER name:a index:0 type:kotlin.Function0<test.Host>
    @20:25..22:1 BLOCK_BODY
      @21:4..12 CALL 'public final fun plusAssign (x: kotlin.Int): kotlin.Unit [operator] declared in test.Host' type=kotlin.Unit origin=PLUSEQ
        @21:4..7 CALL 'public abstract fun invoke (): R of kotlin.Function0 [operator] declared in kotlin.Function0' type=test.Host origin=INVOKE
          @21:4..5 GET_VAR 'a: kotlin.Function0<test.Host> declared in test.test4' type=kotlin.Function0<test.Host> origin=VARIABLE_AS_FUNCTION
        @21:11..12 CONST Int type=kotlin.Int value=1
