Data.Separated.Separated

data Separated s a

separated

data Separated1 a s

separated1

separated1Head

separated1Tail

empty

(+-)

single

shift

separatedSwap

(.++.)

(++.)

(.++)