__export ShouldSucceed B{op2} C{op1}; instance __forall [a] => {B a} -> {B [a]} = zdfBZMZN; instance __forall [a] => {C [a]} = zdfCZMZN; 1 class {C a} => B a where {op2 :: a -> a -> a} ; 1 class C a where {op1 :: a -> a} ; 1 zddmop1 :: __forall [a] => {C a} -> a -> a ; 1 zddmop2 :: __forall [a] => {B a} -> a -> a -> a ; 1 zdfBZMZN :: __forall [a] => {B a} -> {B [a]} ; 1 zdfCZMZN :: __forall [a] => {C [a]} ;