class Outer {
  constructor() /* primary */ {
    super/*Any*/()
        /* InstanceInitializerCall */

  }

  open inner class Inner {
    constructor(x: Int) /* primary */ {
      super/*Any*/()
            /* InstanceInitializerCall */

    }

    val x: Int
      field = x
      get




  }




}

class Host {
  constructor(y: Int) /* primary */ {
    super/*Any*/()
        /* InstanceInitializerCall */

  }

  val y: Int
    field = y
    get

  fun Outer.test(): Inner {
    return { // BLOCK
      local class <no name provided> : Inner {
        constructor() /* primary */ {
          <this>.super/*Inner*/(x = 42)
                    /* InstanceInitializerCall */

        }

        val xx: Int
          field = <this>.<get-x>().plus(other = <this>.<get-y>())
          get




      }


      <no name provided>()
    }
  }




}

