Data.Separated
data Separated a b
data Separated1 b a
data Pesarated b a
data Pesarated1 a b
class HasHead s t a b
class HasTail s t a b
class Separated1Single f
class Pesarated1Single f
class Construct f
class SeparatedCons f g
class PesaratedCons f g
class Appends a b c