merge client(write and read)