objectTest{classAclassBclassCclassF[X]deff(implicitaa:F[A])=println(aa)implicitdefa:F[A]=newF[A]()// generalised from t2421b to verify we check enoughclassG[X]implicitdefg[X]:Test.G[X]=newG[X]()implicitdefb[X<:B](implicitmx:G[X]):Test.F[X]=newF[X]()f}