michaelrocks
class A private constructor(private val d: D) : C by d { constructor(b: B) : this(D(b)) }