add: synchronous writing