some changes to buffered splitting