split_buffer