bufferchain_singleton b
  | S.null b  = L.empty
  | otherwise = L.fromChunks [b]
bufferchain_singleton b
  | S.null b  = L.empty
  | otherwise = L.fromChunks [b]
bufferchain_singleton b
  | S.null b  = L.empty
  | otherwise = L.fromChunks [b]