copy to buffer +changes