fun testKotlin(): K2<String, Int> {
  return K1<Int>().K2<String>()
}

fun testJava(): J2<@FlexibleNullability Double?, @FlexibleNullability Int?> {
  return J1<@FlexibleNullability Int?, @FlexibleNullability String?>().J2<@FlexibleNullability Double?, @FlexibleNullability CharSequence?>()
}

class K1<T1 : Number> {
  constructor() /* primary */ {
    super/*Any*/()
    /* <init>() */

  }

  inner class K2<T2 : CharSequence> {
    constructor() /* primary */ {
      super/*Any*/()
      /* <init>() */

    }

  }

}
