work in progress on buffer exchange