more buffer work

really close