class A { required init(_ x: Int) {} } class B : A {} class C : A {} protocol P {}