moving exist, read, write back to driver