add writeblock impl 1