optimize buffer copy; revert parent