||| class
||| @ t a type
class C (t : Type) where
  ||| member of class
  m : t

||| type
data A = B

||| type 2
data D a b = E

||| instance of class
instance C A where
  m = B

||| another instance of class
||| @ a parameter type
instance C (D a b) where
  m = E